操作系统和内核简介

来源:互联网 发布:网络现在做什么挣钱 编辑:程序博客网 时间:2024/05/20 00:13

在系统中,运行的应用程序通过系统调用来与内核通信。

应用程序:

当一个应用程序执行一条系统调用,我们说内核正在代其执行。如果进一步解释,在这种情况下,应用程序被称为通过系统调用在内核空间运行,而内核被称为运行于进程上下文中。这种交互关系———应用程序通过系统调用而陷入内核———是应用程序完成其工作的基本行为方式。

硬件:

内核还要负责管理系统的硬件设备。当硬件设备想要和系统通信的时候。它首先要发出一个异步的中断信号去打断处理器的执行,继而打断内核的执行(如:网卡收到数据包后产生中断通知CPU有数据到达,在中断服务函数中触发接收软中断)。中断通常对应一个中断号,内核通过中断号查找对应的中断服务程序,并调用这个程序处理中断。中断服务程序在专门的中断上下文中执行。这些上下文代表内核活动的范围。每个处理器在任何指定时间必然概括为下列三者之一。
运行于用户空间,执行进程
运行于内核空间,处于进程上下文,代表某个特定的进程执行
运行于内核空间,处于中断上下文,与任何进程无关,处于某个特定的中断

1.同步中断是当指令执行时由 CPU 控制单元产生,之所以称为同步,是因为只有在一条指令执行完毕后 CPU 才会发出中断,而不是发生在代码指令执行期间,比如系统调用。

2.异步中断是指由其他硬件设备依照 CPU 时钟信号随机产生,即意味着中断能够在指令之间发生,例如键盘中断。

原创粉丝点击