操作系统服务
以服务形式向程序和用户提供环境执行程序
基本服务
操作系统以服务形式向程序和用户提供执行程序的基本服务,包括用户界面、程序执行、I/O操作、文件系统操作、通信、错误检测等。
增值服务
如资源分配、统计、保护和安全等。
操作系统服务形式
操作系统的服务形式主要有系统调用、用户接口和系统程序。
注:IE浏览器不是系统程序。微软把IE嵌入了操作系统,是一个很关键的部分,它是windows系统的一个组件;整个windows的一部分。
操作系统程序接口——系统调用
系统调用是操作系统提供给程序的服务形式,而用户接口和系统程序是操作系统提供给用户的服务形式。
系统调用一般用高级语言编写(如C和C++),可以供程序通过应用程序接口(即API)来访问。系统调用在程序中无处不在,各种文件操作、屏幕输出、设备访问都需要调用系统调用。可以减少程序员的工作量。
三种常用API:
- Windows的Win32 API
- POSIX系统(包括几乎所有版本的UNIX,Linux,和Mac OS)的POSIX API
- Java虚拟机(JVM)的Java API
标准API的例子:
win32 API中ReadFile()方法,从文件读取内容
API和系统调用
Windows X64系统调用例子
操作系统用户界面
命令行接口CLI(Command-Line Interface)
主要作用:获取并执行用户指定的命令
- 字符模式
- 用户直接输入命令
- 内核或系统程序实现
- 多种实现方式——外壳(shells)
优点:简单、健壮、效率高
缺点:使用不方便、界面不美观
图形化接口GUI(Graphical User Interface)
- 用户界面友好的桌面接口
- 使用鼠标、键盘和监视器
- 常用元素:图标、窗口、滚动条等
- 鼠标操作为主
优点:操作方便、界面直观美丽
缺点:效率不高,不够健壮
许多系统同时包含CLI 和 GUI界面,如Windows使用带有命令行的图形界面,Linux(Gnome,KDE)和Shell
还有未来的人机接口。。。
系统程序
用于管理、维护操作系统;
为用户使用操作系统服务;
功能:
- 文件管理
- 状态信息
- 文件处理
- 程序语言支持
- 程序装入和执行
- 通信