UNIX/LINUX体系结构
操作系统在计算机体系中的位置
内核的功能 - 内存管理
- 内存分配调用:包括静态分配方式、动态分配方式
- 内存保护:确保每个程序子自己的内存空间运行、互不干扰。方法是使用界限寄存器或储存保护键。
- 地址映射:实现程序逻辑地址与储存器的物理地址之间的映射功能;
- 内存扩充:从逻辑上扩充和物理内存,以允许比物理内存更大的程序在机器内允许,为此操作系统必须具有:请求调入功能与置换功能
内核的功能 - 进程控制
- 进程控制:进程创建、撤销、阻塞、唤醒
- 进程协调:由于进程运行的异步性,因此进程同步的任务是对诸进程的运行协调,包括两种方式:进程互斥方式与进程同步方式;
- 进程通信:主要完后才能同一台不同进程间通信和不同机器上进程间的通信,以共同完成一相同的任务;
- 进程调度:操作系统按照一定的规则对等待运行的多道程序进行调度,以保证每个程序都能有机会得到运行,并最终完成
内核的功能 - 文件管理
- 文件储存空间的管理:为每一文件分配必要的外存空间。为提高外部储存空间的利用率,系统应设置相应的数据结构,用于记录文件储存空间的使用情况;
- 目录管理:为了方便用户的文件进行管理,对文件系统建立一定的结构的目录结构,同时要求快速的目录查询手段;
- 文件的读写管理和存取控制:利用一定的系统调用对文件进行读写操作。同时,为防止系统中的文件被非法访问和窃取,文件系统中必须提供有效存取控制功能;
内核的功能 - 设备管理
- 缓冲管理:管理各种类型的缓冲区,如字符缓冲区和块缓冲区,以缓和CPU和I/O速度不匹配的矛盾,最终达到提高CPU和I/O设备的利用率,进而提高系统吞吐量的目的;
- 设备分配:根据用户的I/O请求,为之分配其所需要的设备;
- 设备处理:又称为设备驱动程序,任务是实现CPU和设备控制器之间的通信;
- 设备独立性和虚拟设备:一方面保证用户程序独立于物理设备,另一方面保证多个进程能并发地共享同一个设备;