操作系统如何管理进程

问题描述 投票:0回答:2

操作系统如何管理程序权限?如果您在不使用任何系统调用的情况下编写低级程序,直接控制处理器,那么如果程序直接控制处理器,操作系统如何设置赌注?

编辑

似乎我的问题不是很明确,我道歉,我不会说英语,我使用翻译。无论如何,我想知道操作系统如何管理程序的权限(例如root用户等...)。如果程序在没有进行系统调用的情况下写入真正的低级别,那么它是否可以完全访问处理器?如果你想说它可以做你想要的一切,那么操作系统没有太多重要性的各种用户/权限。但是,从我收到的第一个答案开始,我读到你无法制作有用的程序而无需系统调用,因此程序无法直接与硬件交互(我的意思是bios如何与硬件交互)?

process permissions operating-system cpu low-level
2个回答
1
投票

取决于操作系统。像MS-DOS这样几乎不是操作系统并且不会阻止程序接管整个机器本质上让程序以内核权限运行。

任何具有内存保护功能的操作系统都试图阻止单独的进程相互踩踏,内核不允许用户空间进程直接与I / O硬件通信。

可以允许特权用户空间进程将设备的视频RAM和/或I / O寄存器存储器映射到其自己的地址空间中,并且基本上充当设备驱动器。 (例如Linux下的X服务器。)


1
投票

1)不可能有一个不进行任何系统调用的程序。

2)控制处理器操作的指令必须在内核模式下执行。

3)进入内核模式的唯一方法是通过异常(包括系统调用)。通过控制异常处理方式,操作系统可以防止恶意访问。

如果程序在没有进行系统调用的情况下写入真正的低级别,那么它是否可以完全访问处理器?

在现代系统中,这是不可能的。无论您是否喜欢,系统都会在后台进行系统调用。

© www.soinside.com 2019 - 2024. All rights reserved.