1.操作系统的服务
用户界面:图形用户界面,批处理界面,命令行界面
I/O操作:涉及文件和外设
通信:一个进程与另一个进程交换信息.包括内存共享,消息交换等
错误检查:需要不断的检测错误和更正错误
资源分配:当多用户或多作用同时运行时,每个都应分配资源
记账:记录用户使用资源的类型和数量
2.用户与操作系统的界面
1.命令解释程序(shell)
有的操作系统内核包括命令解释程序.将用户输入的命令转换为机器指令
例如
2.图形用户界面(GUI)
优点:操作简单,方便
缺点:消耗系统资源,系统复杂度更高,bug更多
3.系统调用
系统调用就是操作系统提供的服务,供用户程序使用
怎样调用系统调用呢:大多数的用户程序设计语言(如java,C++)运行时支持系统提供了系统调用接口,以连接到操作系统的系统调用
4.进程控制
1.执行程序能正常或异常停止执行.如果一个系统调用异常停止当前执行的程序,那么有可能转存储内存到磁盘,并生成错误信息
2.通常多个进程会共享数据,为了确保共享数据的完整性,操作系统通常提供系统调用以允许一个进程锁定(lock)共享数据