services in OS implementations

来源:互联网 发布:淘宝美工要学哪些软件 编辑:程序博客网 时间:2024/06/05 01:09

As a structuring principle, we identify three categories of services in OS implementations: hardware services, user services, and application services.

  • Hardware services include the OS kernel and device drivers, which abstract and multiplex hardware, along with file systems and TCP/IP networking stack.
  • User services in the OS include the graphical user interface (GUI) shell and desktop, clipboard, search indexers, etc.
  • Application services in the OS include the API implementation; to an application, these comprise the OS personality. Applications services include frameworks, rendering engines, common UI controls, language runtimes, etc.

The application communicates with application services, which in turn communicate with hardware and user services.

操作系统 = 内核 + 系统程序
操作系统最底层的组件是内核,其上搭建了许多系统软件。内核至少包括的模块为:进程管理、内存管理、文件系统、设备管理、I/O管理、中断管理。
系统程序包括三个部分,分别是:编译环境应用程序接口用户接口

  • 编译环境包含汇编、C等低高级语言编译程序,连接程序和装载程序,这些程序将文本格式的程序语言转变为机器能识别和装载的机器代码。
  • 应用程序接口(API)包括内核提供的系统调用接口语言库函数(C、C++、JAVA等等)。系统调用是为了让应用程序使用内核服务,语言库函数是为了方便应用程序开发,所以将一些常用的基础功能预先编译以供食用,比如对C语言来说常用的C库等。
  • 用户接口(AUI)包括shell、系统服务程序(如X服务器等)和常用的应用程序(浏览器、字处理、编辑器)。

以上是一个典型结构,但不是一成不变。许多操作系统的发行中会有删减,比如应用于嵌入式设备的系统,对X服务器可能不做要求。但是像内核、系统调用等要素是必不可少的。

系统软件:系统软件是相对于应用软件而言的,应用软件针对用户需求编写,完成实际功能,而系统软件则是为了简化应用程序的开发而存在的。比如,数据库系统为应用软件提供了有效的数据传输、存储服务;编程语言的执行环境,由C库实现,也属于一种系统程序,为应用程序开发提供了诸如I/O操作例程,图形库,计算库等等基础服务。可见系统软件范围覆盖很广,只要面向的服务群体不是最终用户的软件都可以划归到系统软件中来

原创粉丝点击