我试图了解操作系统的内部原理,但是我遇到了一些问题。我想知道操作系统如何释放虚拟内存,断言程序没有超出范围(这将要求操作系统对将要运行的每条指令进行某种形式的验证,这似乎很奇怪),并进行管理/处理系统调用。
此外,我试图找到包含汇编代码的引导可执行文件和包含UNIX操作系统上的包含汇编指令的常规可执行文件之间的区别。他们显然具有不同的权限,但是在什么程度上以及它的内存布局有何不同?似乎常规的汇编程序将具有.bss,.data,.text等。
总结:
操作系统如何为组装程序运行设置环境?它与未在OS上运行但直接向CPU发出指令的汇编程序有什么区别?
谢谢!