操作系统是否与汇编代码交互?

时间:2012-03-04 18:55:43

标签: assembly operating-system

它必须在某些时候停止进程以在其他进程之间切换,它还必须监视内存访问等操作。操作系统是否只是逐个检查并运行说明?

聚苯乙烯。我刚刚开始学习汇编语言和计算机体系结构:)

3 个答案:

答案 0 :(得分:2)

操作系统不执行代码,处理器执行。保护模式也由处理器实现,OS仅配置它。由违规触发的陷阱由OS代码处理,如果无法以合理的方式处理,最终会导致进程终止。上下文切换由来自时钟节拍的硬件中断启动。或阻塞I / O系统调用。

答案 1 :(得分:1)

许多硬件都提供了定时中断,这些中断通常会在某种程度上独立于软件而中断。引发的中断对应于存储器位置,其中包含将在引发该中断时执行的过程,在这种情况下,过程执行所谓的上下文切换和进程调度。大多数硬件信息(例如程序计数器和各种寄存器内容)将存储在每个进程的信息结构中。在程序再次开始执行之前,将恢复机器寄存器(程序正在使用)的内容。拿起一本关于操作系统设计的书将详细介绍如何完成所有这些工作。

答案 2 :(得分:0)

不,操作系统不会检查指令,因为在操作系统中这样做会非常复杂和昂贵(慢)。 CPU执行内存访问检查,当它们失败时,它会在操作系统中执行指定的代码,例如,终止当前进程并给出错误消息。