首页 > 代码库 > 一、基本概念

一、基本概念

计算机的组成单元:运算器、控制器、存储器、输出设备、输入设备五个单元。(如图)

  • 运算器:主要负责程序的运算和逻辑判断

  • 控制器:主要协调各周边器件与各单元间的工作

  • 存储器:主要存放当前正在执行的数据和程序

    其中运算器和控制器组合为中央处理器(CPU),CPU读取的数据从存储器获取,并且处理完毕的数据也必须先存放到存储器里。

    wKioL1Qa9FmzB-mcAAFJDO3fFjY553.jpg

    CPU内部有指令集,CPU通过指令集的分类分为:精简指令集系统和复杂指令集系统

  • 精简指令集(RISC):指令精简、执行时间短、执行效能佳、处理复杂任务需要多个指令。

  • 复杂指令集(CISC):指令复杂、执行时间长、单条指令可以处理较为复杂的任务。


  • 操作系统(operating system,OS):是一组程序,主要用于管理计算机的所有活动和驱动系统中的所有硬件。

  • 内核(kernel): 管控硬件及提供相关功能,提供合理的计算机系统资源分配,提供程序管理、内存管理、文件系统管理等功能。Linux内核 https://www.kernel.org/

  •      内核功能:进程管理、内存管理、文件系统、网络功能、硬件驱动、安全机制

  • 系统调用(system call):又称为系统呼叫,提供用户程序和内核的接口。

  • shell:人机交互接口,是一种程序。shell可分为GUI(图形界面shell)和CLI(命令行shell)

         GUI(graphic user interface):Gnome C语音开发;KDE C++开发; xface 轻量级图形界面

         CUI(command line interface):bash sh csh zsh ksh tcsh

         查看Linux当前使用的shell:[root@www ~]# echo $SHELL    /bin/bash

         查看Linux可用的shell:[root@www ~]# cat /etc/shells

  • 驱动程序:操作系统提供接口给厂商来制作硬件的驱动程序,要使用新硬件,必须安装厂商的相应的驱动程序。

  • 应用程序:是参考操作系统提供的开发接口所开发的的软件,这些软件可以让用户操作,以达到某些计算机的功能利用。

    wKiom1Qb81DQ_o3eAABPjebyBQA811.jpg

Linux的历史简介:

  • 1960年代初期,麻省理工学院(MIT)发展了“兼容分时系统(compatible time-sharing system,CTSS)",可以提供数个终端联入主机,来利用主机的资源进行运算工作。

  • 1965年前后,由贝尔实验室(Bell)、麻省理工学院(MIT)及通用电气(GE)共同发起了Multics癿计划,一次来达成提供300个以上的终端机联机使用的目标。

  • 1969年,Ken Thompson 以汇编语言写出了一组核心程序,同时包括一些核心工具程序,以及一个小小的文件系统。这个就是Unix的原型。

  • 1973年,Unix正式诞生,Ritchie等人以C语言写出第一个正式的Unix核心。

  • 1977年,重要的UNIX分支——BSD的诞生,BSD(Berkeley software distribution)是UNIX很重要的一个分支,Sun公司就是以BSD发展的核心进行自己的商业UNIX版本的发展,后来可以安装在x86硬件架构上面的FreeBSD就是以BSD改版而来。

  • 1979年,重要的System V架构与版权宣告。在1979年,AT&T推出system V 第七版UNIX,这一版最重要的特色是可以支持x86架构的个人计算机系统,也就是说system V是可以在个人计算机上进行安装和运行,同时在这个版本上,AT&T特别提到了“不可对学生提供原始码”的严格限制,导致了很多的商业纠纷。

  • 1984年,x86架构的Minix操作系统诞生,Richard Mathew Stallman发起GNU计划并成立自由软件基金会(FSF,free software foundation)。

  • 1988年,图形接口XFree86计划,XFree86就是 Xwindow system + free + x86的整合名称。这个XFree86的GUI界面在Linux核心1.0版本在1994放出时,整合于Linux系统中。

  • 1991年,Linus Torvalds在BBS上,宣告了一个小小的核心程序,从此开始了Linux的不平凡的路程。

  • 1994年,发布了Linux 1.0 核心正式版。

因为Linux早期都是由黑客工程师所开发维护的,所以并没有考虑到一般使用者的能力,为了让使用者能够接触到Linux,于是很多的商业公司或非盈利团队,就将Linux kernel与可运行软件整合起来,加上自己的工具程序,这个工具程序可以让用户以光盘/DVD或通过网络直接安装/管理Linux系统。这个“Linux kernel + software +tools的可完全安装”的东西,我们称之为Linux distribution。


Linux的基本原则:1)由目的单一的小程序组成,组成的程序完成复杂任务 2)一切皆文件 3)尽量避免捕获用户接口 4)配置文件保存为纯文本格式

Linux终端:物理终端、虚拟终端、模拟终端

         虚拟终端(terminal):由mingetty程序产生,使用ctrl+alt+(F1-F6) 进行终端切换

         模拟终端:指使用SSH(secure shell 使用tcp 22端口)通过网络连接到Linux

         查看当前是哪个终端:[root@www ~]# tty   /dev/tty2 (虚拟终端2) /dev/pts/1 (模拟终端1)

Linux CLI接口:#——root ;$——普通用户

命令格式:命令   选项   参数

        选项: 短选项 -  ,多个选项可以组合 -a -b = -ab

               长选项 --

        参数:命令的作用对象

su(switch user):用户切换

su : run a shell with substitute user and group IDs

su [OPTION]...[-][USER[ARG]...]

-,-l,--login:make the shell a login shell

passwd : update user‘s authentication tokens

      SYNOPSIS - passwd [-k] [-l] [-u[-f]] [-d] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-s] [--stdin] [username]


小技巧:

光标快速移动: ctrl + a 快速跳转到行首  ; ctrl + e  快速跳转到行尾

删除命令行中内容:ctrl + w 删除光标前一个单词 ;ctrl + u 删除光标到行首的字符 ; ctrl + k 删除光标到行尾的字符

清屏幕:ctrl + l ;clear

取消不执行的命令: ctrl + c

命令补全:双按Tab键


一、基本概念