一、操作系统的接口
用户使用操作系统的方式:
- 命令行
shell是提供用户使用界面的程序(命令解释器),包括图形界面shell和命令行shell。其作用有二:
- 传递请求指令,让操作系统执行命令
- 保护内核
- 图形按钮
图形界面是一个包括画图的c程序。每一个硬件动作相当于一个事件,根据事件列表会有对应的内部处理程序。
- 应用程序
操作系统的接口表现为函数调用,又有系统提供,称为系统调用。(注:不同系统,功能一致的系统函数调用名可能不同)
特权指令和非特权指令:
特权指令包括I/O指令、内存清零指令等危险指令,非特权指令包含常见的运算指令等。
用户态和核心态:
用户态(目态):用户程序执行时机器所处的状态称为用户态,在此状态下禁止使用特权指令,不能直接取用资源与改变机器状态,并只允许用户程序访问自己的存储区域。
核心态(内核态、管态):操作系统管理程序执行时机器所处的状态,又称为处理机的特权级。在此状态下处理机可使用全部指令(包括一组特权指令),使用全部系统资源(包括整个存储区域)。
区别在用户态下不可访问硬件资源,不可访问内核数据。
内核程序和用户程序:
内核程序运行在核心态,可以使用特权指令;用户程序运行在用户态,使用非特权指令。
系统函数和库函数:
相同点:调用方式类似。
不同点:大多库函数包含系统调用函数。库函数在用户态发生,系统调用函数在核心态发生。
一个进程如何从用户态转变为核心态?
中断。用户发起系统调用=自愿中断控制CPU。(时间中断属于被动中断,防抢占CPU资源的程序)
二、操作系统的内核
内核是计算机上配置的底层软件,是操作系统最基本、最核心的部分。
标签:操作系统,特权,系统,用户,---,指令,内核 From: https://www.cnblogs.com/mylight/p/17709086.html