Windows操作系统的体系结构
- 内核
内核执行Windows操作系统中最基本的操作,主要提供一下功能
(1)线程调度、陷入处理和异常调度、中断处理和调度、多处理器同步、供执行体使用的基本内核对象。
(2)Windows操作系统的内核始终运行在核心态,代码短小紧凑,可移植性也很好。通常,除了中断服务列程,正在运行的线程是不能抢先内核的。 - 硬件抽象层(HAL)
Windows操作系统设计的一个至关重要的方面就是在多种硬件平台上可移植性,HAL就是使这种可移植性称为可能的关键部分
- 执行体
Windows的执行体是NTOSKRNL.EXE的上层(内核是其下层)。执行体从用户态导出并且可以调用函数,这些函数的接口在NTOSKRNL.DLL中,通过Win32API进行访问。 - 系统进程和系统线程
系统进程是一种特殊类型的、只运行在核心态的“系统线程”的宿主。系统线程只能从内核态调用。
UNIX操作系统的体系结构
-
内核层
内核层是操作系统管理和控制中心,常驻内存。其具有两方面的接口:
(1)内核与硬件的接口,它通常是由一组驱动程序和一些基本的例程所组成。
(2)内核与Shell的接口,它由俩组系统调用及命令解释程序等所组成。
内核本身可分为两大部分:1进程控制子系统 ;2文件子系统;
-
系统调用层
系统调用层届于内核层和应用层之间,是供程序员设计、开发应用时调用的。
UNIX系统调用包括进程管理、文件管理、终端状态等。 -
应用层
应用层包括各种开发工具、高级语言编辑器、网络通信处理程序等。
所有应用层都是在Shell(命令语言解释程序)的管理和控制下为用户服务的,是面向用户操作的界面。
LINUX操作系统的体系结构
- Linux内核
(1)内核是操作系统的核心,他负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。
Linux内核由如下几个部门组成:系统调用、内存管理、进程管理、设备驱动程序、文件系统和网络管理等。
(2)Linux Shell;(3)Linux文件系统;(4)Linux应用程序。(Linux操作系统主要体系结构)
Android操作系统的体系结构
- Android应用程序
Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序等。所有的应用程序都是使用Java语言编写的。
Android应用框架;C、C++本地库和Android运行时环境;Linux内核