1.绪论

  • 操作系统的基本概念
  1. OS要完成的两个目标:1)与硬件部分交互;2)为应用程序提供执行环境
  2. OS将PC物理组织的低层细节对用户隐藏.该特性依靠特殊的硬件特性来禁止用户APP直接与低层硬件进行交互,或者禁止直接访问任意的物理地址
  3. 硬件为CPU引入了两种执行模式:特权模式(内核态)/非特权(用户态)
  4. 多用户系统: 1)并发(concurrently):几个APP同时处于活动态并竞争资源; 2)独立(independently):每个APP能执行自己的任务.
  5. 内核体系: Linux提供模块(Module:目标文件),其代码可以在运行时链接或解除到内核,从而节省内存,且平台无关,无性能损失.

 

  • Unix文件系统概述
  1. 文件:字节序列组成的信息载体;名称以除"/"和"\0"外的字符组成; 路径名以"/"开头的为绝对路径,否则为相对(于当前目录)路径.
  2. 硬链接:同一文件可以有几个,即一个文件对应几个文件名,指令"$ln p1 p2":不允许为目录创建它(易形成环形圆),只能在同一文件系统中创建;
  3. 软(符号)链接:其实是短文件(含另一文件的人一个路径名),在ln 命令后添加 "-s".
  4. 文件操作:文件系统是硬盘分区物理组织的用户级视图,每个实际的文件操作在内核态下执行.

 

  • Unix内核概述
  1. 进程/内核模式: 内核本身不是进程,而是进程的管理者; 进程使用系统调用来请求内核服务,之后切换至内核态; OS含有几个内核线程的特权进程; 激活内核例程:1)系统调用;2)异常;3)中断;4)内核线程执行
  2. 进程实现: 进程由进程描述符来包含当前状态的信息; 内核暂停进程时,将几个寄存器的内容保存到描述符内,恢复执行时,从描述符从选择合适的字段来转转CPU寄存器.
  3. 可重入内核: 几个进程可同时在内核态下执行,但是真正运行的唯一; 硬件中断发生时,内核应能挂起正在执行的进程(即使是内核态的); 方式:可重入函数(只能修改local var),且用锁来保证一个进程执行一个非重入函数
  4. 进程地址空间: 每个进程有自己的私有地址空间,含有私有栈,代码区和数据区; 进程间也能共享部分地址空间("共享内存"技术),已实现通信;
  5. 信号量: 在单CPU和多CPU系统上都有效,是一个与数据结构相关的计数器; 所有内核线程试图访问这个数据结构之前,都要先检查这个信号量.
  6. 自旋锁: 多CPU时使用,没有等待进程的链表,进程发现锁被锁时,不停地"旋转"(执行一个紧凑的循环指令).

你可能感兴趣的:(1.绪论)