操作系统基础·1 基础知识
1、操作系统的定义:操作系统是管理硬件资源、控制程序运行、改善人机界面和为应用软件提供支持的一种系统软件。作用:让程序的运行更容易、允许程序共享内存、让程序能够与设备交互。如何易于使用:虚拟CPU(进程/线程数量不受物理CPU限制)、虚拟内存(每个运行程序都有自己的私有内存)、虚拟I/O(将设备统一抽象为文件)。
2、操作系统的主要特征:并发(在同一时间间隔内发生两个或多个事件)、共享(系统中的资源可供多个并发执行的进程共同使用,互斥共享、时分复用、空分复用)、虚拟、异步(任务的执行顺序和每个任务的执行时间是不确定的)。程序的并发执行带来资源共享问题;系统对资源共享的管理影响到程序并发执行的效率。
3、批处理操作系统:解决人机矛盾及 CPU 和 I/O 设备之间速度不匹配的矛盾。单道批处理系统引用脱机输入输出技术,由监督程序负责控制输入输出,其特征为自动性、顺序性、单道性。多道批处理系统多个存储在主存中的程序在管理程序的控制下交替运行,共享CPU和系统中的其他资源,并发、资源利用率提升,其特征为多道、宏观上并行、微观上串行。多通道如下图:


4、分时操作系统允许多个用户通过终端同时与一个系统进行交互,实质上是通过时间片轮转的方式使用CPU,短时间内可以获得响应,其特征为同时性、交互性、独立性、及时性,如上图。实时操作系统用于完成紧急任务(如航空航天、军事医疗和通信系统),其特征为时间敏感性、可靠性、确定性、快速上下文切换。
5、宏内核:系统调用之下和物理硬件之上的均为内核,优点是效率高,缺点是结构难以理解、维护,随着复杂性的增加,可靠性和安全性不足。微内核结构基于客户/服务器模型,微内核保留进程管理、内存管理和通信功能,通过消息传递使客户程序与服务程序进行通信,优点是易于扩展、移植,更可靠(内核代码更少)、安全,缺点是用户空间到内核空间的通信增加了系统开销。
6、打开电源并加载内核的过程称为系统启动。OS对硬件可用:存储在ROM或EPROM中的一段代码,即引导加载程序BIOS,将其载入内存并启动执行。这有时分两步:先由ROM中的代码BIOS加载固定磁盘位置上的引导块,再由引导块从OS所在分区的特定位置读取引导加载器,由它将OS内核从磁盘加载到内存。
7、OS的引导过程:(1)初始引导:系统加电,执行初始引导程序,对系统硬件和配置进行自检,从硬盘中读入操作系统引导程序,将控制权交给该程序模块;(2)引导程序执行:将操作系统核心文件读入内存,并将控制交给核心的初始化程序;(3)内核初始化:初始化系统数据结构及参数;(4)系统初始化:完善OS的操作环境,在多用户系统中使系统处于命令接收状态。
8、OS的启动过程:(1)引导加载程序加载OS内核到内存中;(2)内核初始化:如硬件设备检查,加载驱动,内存管理等;(3)内核启动init进程:该进程是所有其他用户进程的父进程;(4)用户空间程序启动:init进程根据系统的配置,启动一系列的用户空间程序,如Shell,图形界面等。
9、OS的运行:内核是中断驱动的(硬件和软件)。其中软件中断: 软件错误(例如,除数为零)、请求操作系统服务 —— 系统调用、其他进程问题(如无限循环,进程相互修改或修改操作系统)。


