1.系统内核

而内核顾名思义,是操作系统的核心部分,是加到硬件上的第一层软件。内核可以通过执行各种原语操作实现管理和控制功能,同时内核也是进程赖以活动的基础。

内核作为操作系统的一部分会被频繁的调用,所以会常驻在内存中。通常会将一些与硬件紧密相关的模块(如中断处理程序),各种常用设备的驱动程序,以及运行频率较高的模块(时钟管理、进程调度)都安排在内核,以便提高操作系统的的运行效率。除此以外,一般还会对内核加以特殊的保护。

进入核心的唯一入口是中断。

内核的执行特点:(1)由中断驱动:中断——内核——退出。(2)连续执行(3)内核执行过程是在中断屏蔽状态下(4)内核使用特权指令

内核的功能:
1.支撑功能:中断处理,时钟管理,原语操作
2.资源管理功能:进程管理,储存器管理,设备管理

2.中断

在进程运行过程中,如果时间片用完或者需要等待某个事件发生,即时模块就会发出一个中断信号,CPU接收后就会切换到核心态,将CPU的权限交给操作系统,由操作系统进行后续的调度。
在上述过程中我们可以看到:(1)中断后,CPU进入核心态(2)进入核心态后,操作系统会进行进一步的调度防止资源浪费
从而我们可以看到中断的实质:中断会发出一种信号,其意味着进程遇到了问题或者时间片用完,需要操作系统介入。

<\font>

3.管态与目态

通常CPU执行两种不同性质的程序:一种是操作系统内核程序;另一种是用户自编程序或系统外层的应用程序。对操作系统而言,这两种程序的作用不同,前者是后者的管理者,因此“管理程序”要执行一些特权指令(不允许用户直接使用的指令,如I/O指令、置中断指令等),而“被管理程序”出于安全考虑不能执行这些指令。所以我们将机器分为两种状态,通过状态的切换来保护操作系统程序。

管态(核心态、系统态):在此状态下,CPU可以执行指令系统的全集,是一种具有较高特权的执行状态,可以访问所有寄存器和存储区。另外OS内核通常是运行在系统态的,进程控制是由OS内核实现。
目态(用户态):在此状态下,CPU只能执行非特权指令。可访问指定的寄存器和存储区,只具有较低的特权。一般的用户程序在此状态下执行。

4.原语

原语:原语是由若干机器指令构成的,是系统状态下执行的某些具有特定功能的程序段(软指令)。 比如在挂起进程时会使用挂起原语,相应的还有解挂(激活)原语。

原语的特点:具有不可分割性,即是它的执行必须是连续的,一旦开始就不能间断,直至完成。
这种操作形式也被称为原子操作(一个操作中的动作要么全做,要么全不做)。