Linux操作系统有4个主要部分,即内核、Shell、文件系统和用户应用程序。内核、Shell和文件系统形成了基本的操作系统结构,它们使得用户可以运行程序,管理文件并使用系统。
Linux内核
Linux内核是操作系统的核心,它负责管理系统的进程、内存、设备、驱动程序、文件和网络系统,决定着系统的性能和稳定性,Linux内核由如下几部分组成,系统调用、内存管理、进程管理、设备驱动程序、文件系统和网络管理等。
Linux Shell
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令,并把它送入内核去执行,是一个命令解释器,另外,Shell需要编程语言具有普通编程语言的很多特点,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。
Linux文件系统
文件系统是文件存储在磁盘等存储设备上的组织方法,Linux系统能够支持多种目前流行的文件系统。
Linux应用程序
标准的Linux系统一般都具有一套,都有称为应用程序的程序集,它包括文本编辑器,程序语言,X
Window办公套件,Internet工具和数据库等。
根据上图我们可以看到其里层是硬件,作为整个系统的基础;紧邻最里层的是操作系统内核,包括进程管理、存储器管理、设备管理和文件管理资源管理功能;往外一层是系统调用接口,即操作系统与用户的接口Shell以及编译程序等,最外层是应用程序。
内核层
内核层是操作系统管理和控制中心,常驻内存,其具有两方面的接口,一方面是内核与硬件的接口,它通常是由一组驱动程序和一些基本的例程所组成;另一方面是内核与Shell的接口,他有两系统调用以及命令解释程序等所组成。内核本身又可以分为两大部分,一部分是进程控制子系统,另一部分是文件系统,两组系统调用分别与这两大子系统交互。
进程控制子系统,负责对四个资源中的两个资源——处理器和存储器进行管理,其功能可分为进程控制、进程通信、存储器管理和进程调度。
文件子系统,负责有效的管理系统中,所有的设备和文件及功能可以分为以下三个方面,即文件管理高速缓存机制和设备驱动程序。
系统调用层
系统调用层介于内核层和应用层之间,是提供程序员设计开发应用程序的时候调用的,Unix系统,调用包括进程管理文件管理终端状态的。
应用层
应用层包括各种开发工具,高级语言编译器,网 ...
**windows体系结构是分层的模块系统,主要层次有硬件,抽象层HAL、内核、执行体和大量的子系统集合。**前面三个都运行在保护模式下,而各子系统都在用户模式下运行,子系统又可分为环境子系统和保护系统两类,其中环境子系统仿真不同的操作系统,保护系统提供安全功能。
内核
内核执行windows操作系统中最基本的操作,主要提供下列功能:线程调度、陷入处理和异常调度、中断处理和调度、多处理器同步,供执行体使用的基本内核对象。
windows操作系统的内核始终运行在和心态代码短小紧凑,可移植性也很好,通常除了中断服务例程正在运行的线程是不能抢占内核的。
硬件抽象层HAL
windows操作系统设计的一个至关重要的方面就是在多种硬件平台上的可移植性,HAL是一个可加载的核心态模块HAL.dll,它为运行在windows操作系统上的硬件平台提供低级接口。HAL隐藏各种与硬件有关的细节,例如IO接口,中断控制器以及多处理器通信机制等,任何体系结构专用的和依赖于计算机平台的函数。
执行体
windows的执行体是NTOSKRNL.EXE的上层(内核是其下层)。执行体从用户态导出并且可以调用函数,这 ...
在现代计算机系统中,通常存在着大量的外部设备,如键盘,鼠标,显示器到彩色打印机,数字音响设备和DVD等。这些外部设备的种类繁多,功能差异很大,如果要求每个用户亲自对接连接到计算机系统中的各种不同的外部设备进行操作控制,实际是行不通的。
操作系统应该向用户提供设备管理,这里的设备管理是指计算机系统中除了处理器和内存以外的所有输入、输出设备的管理。由操作系统的设备管理功能负责外部设备的分配、启动和故障处理,用户不必详细的了解设备及接口的技术细节,就可以方便的通过操作系统提供的设备管理手段,对设备进行操作。
在操作系统中,为了提高设备的使用效率和整个系统的运行速度,需要采用一系列的技术,包括中断技术通道技术,虚拟设备技术和缓冲技术等,尽可能的发挥设备和主机的并行工作能力,此外,设备管理应为用户提供一个良好的界面,使用户不必涉及具体设备的物理特性,即可方便灵活的使用这些设备。
除此之外操作系统还需要具备中断处理错误处理等功能,操作系统的各功能之间并非完全独立的,它们之间存在着相互依赖的关系。
在计算机系统中的信息资源(如程序和数据)是以文件的形式存储在外存储器(如磁盘、磁带)上的,需要时再把它们装入内存,操作系统一般都提供具有强大功能的文件系统,文件管理的任务是有效的支持文件的存储、检索和修改等操作,解决文件的共享保密和保护问题,以使用户方便、安全的访问文件。
文件存储空间的管理
任何文件存储在外存储器上,都需要以某种形式占据外存储器的空间,文件系统的一个很重要的功能,就是为每个文件分配一定的外层空间,并且尽可能的提高外存储空间的利用率和文件访问的笑容,文件系统设置,专门的数据结构记录文件存储空间的使用情况,为了提高空间利用率,存储空间的分配通常采用离散分配方式,以512B或者几KB的块基本单位进行分配。
目录管理
目录管理的主要任务就是给出组织文件的方法,它为每个文件建立目录项,并对众多的目录项加以有效的组织,以便为用户提供方便的按名存取。
文件系统的安全性
安全性包括文件的读写权限管理,以及存取控制,用于防止未经核准的用户存取文件,防止越权访问文件,防止使用不正确的方式访问文件。
概述
临界区指的是一个访问共用资源(例如:共用设备或是共用存储器)的程序片段,而这些共用资源又无法同时被多个线程访问的特性。当有线程进入临界区段时,其他线程或是进程必须等待(例如:bounded
waiting
等待法),有一些同步的机制必须在临界区段的进入点与离开点实现,以确保这些共用资源是被互斥获得使用,例如:semaphore。只能被单一线程访问的设备,例如:打印机。
多道程序系统中存在许多进程,它们共享各种资源,然而有很多资源一次只能供一个进程使用。一次仅允许一个进程使用的资源称为临界资源。许多物理设备都属于临界资源,如输入机、打印机、磁带机等。
**临界资源:一次仅允许一个进程使用的资源。**例如:物理设备中的打印机、输入机和进程之间共享的变量、数据。
临界区:每个进程中,访问临界资源的那段代码。
简介
每个进程中访问临界资源的那段代码称为临界区(Critical
Section)(临界资源是一次仅允许一个进程使用的共享资源)。每次只准许一个进程进入临界区,进入后不允许其他进程进入。不论是硬件临界资源,还是软件临界资源,多个进程必须互斥地对它进行访问。
多个进程中涉及到同一个 ...
存储管理的任务是管理计算机内存的资源,在当代操作系统中,计算机内存空间越来越大,虽然内存空间可以扩充,但是内存空间再大也跟不上运行程序对内存空间的巨大需求,而且内存空间还是处理器寻址能力的限制,内存的能力不能无限扩充。
概括的说,存储管理有三个方面的任务,首先,当多个程序共享有限的内存资源时,要考虑如何为多个程序分配有限的绿色空间,其次存储在内存中的多个程序和数据,应该彼此隔离互不侵扰第三,解决内存扩充的问题,即将内存和外存结合起来管理,为用户提供一个容量,比实际内存大得多的虚拟存储器。
以下是存储管理功能的进一步叙述:
内存的分配与回收
操作系统要为每个进程分配的空间,再分配的过程中,还要尽可能提高内存资源的使用效率,对于已经退出运行的进程所占据的内存空间操作系统还要把它加以回收,重新使用,人们在使用计算机时经常会发现原本很大的内存在使用一段时间后,似乎丢失了一部分空间,仔细检查会看到空间使用途中有一大堆空间碎片,这种现象就是内存的分配与回收算法中的缺陷造成的。可见内存分配与回收对计算机系统有效运行的影响是很大的。
存储保护
由于内存是提供多个程序共享的,从理论上讲,每个程序都应该 ...
操作系统是计算机系统中的一个极为重要的部分,担负着非常重大的职责,可以说操作系统身兼数职,那么要理解操作系统,有必要深入的了解和认识操作系统的本质及操作系统究竟是什么。对操作系统本质的不同看法,会影响操作系统的设计思想。
软件的观点
从软件的观点看,操作系统是一种大型软件系统,它是多种功能程序的集合,作为一种大型软件系统,操作系统有软件的外在特征和内在特性。
所以操作系统的软件外在特性是指,操作系统是一种软件,它的外部表现形式,吉他的操作命令,定义集合它的界面,完全定义了操作系统这个软件的使用方式,比如操作系统的各种命令,各种系统调用及其语法定义等,从操作系统的使用界面上,即从操作系统的各种命令,系统调用及其语法定义等方面学习和研究操作系统,我们才能从软件的外部特征上把握住操作系统的性能。
所谓操作系统软件,内在特性是指,操作系统既然是一种软件,它就具有一般软件的结构特点,然而这种软件又不是一般的应用软件,它具有一般应用软件所不具备的特殊结构,因此学习和研究操作系统时就需要研究其软件结构上的特点,从而更好的把握住操作系统的内部结构特点,比如操作系统是直接同硬件打交道的,那么操作系统中同 ...
云计算架构是指云计算所需的组件和子组件。这些组件通常包括前端平台(胖客户端,瘦客户端,移动设备),后端平台(服务器,存储),基于云的交付和网络(Internet,Intranet,Intercloud)。这些组件相结合,构成了云计算架构。
什么是云计算技术架构?
云架构是指数据库,软件功能,应用程序等方面的各种组件,旨在利用云资源的力量来解决业务问题。云架构定义了组件以及它们之间的关系。
Cloud Architecture的各个组件包括:
内部资源
云资源
软件组件和服务
中间件
整个云架构旨在为用户提供高带宽,允许用户不间断地访问数据和应用程序,按需灵活的网络,可以在服务器之间甚至云之间快速有效地移动,最重要的是网络安全
各种基于云的服务都有自己独特而独特的云架构:
软件即服务(SaaS)涉及在互联网上托管和维护的软件。使用SaaS,用户无需在本地安装软件。
开发即服务(DaaS)涉及跨社区共享的基于Web的开发工具。
平台即服务(PaaS)为用户提供应用程序平台和数据库,相当于中间件服务。
基础架构即服务(IaaS)提供基础架构和硬件,例如在云中运行的服务器,网络,存储设备等 ...
进程管理的实质是对中央处理器进行管理,所以进程管理往往又被称为处理器管理,处理器是计算机系统中最宝贵的硬件资源,为了提高处理器的利用率,现在操作系统都采用了多道程序技术。如果一个程序以等待某一条件而不能运行下去时,就把处理器占用权转交给另一个可运行的程序。或者当出现了一个比当前运行程序更重要的可运行的程序时,后者因能抢占处理器,为了描述多道程序的并发执行,要引入进程的概念。通过对进程的管理,协调多道程序之间的关系,解决有关处理器分配调度策略,分配的实施和回收的问题,以使处理器资源得到最充分的利用。
由于操作系统对处理器管理策略的不同,操作系统对其作业的处理方式也就不同,例如,有批处理方式、分时处理方式和实施处理方式的,从而有各种不同性质的操作系统呈现在用户面前。
进程管理主要包括进程控制,进程同步,进程间通信和进程调度等几方面的内容,其中进程控制主要处理进程的创建状态转换,进程撤销,以及相关进程资源的分配与回收等事物;进程同步,主要处理继承之间的关系,包括进程的同步与互斥,进程间通信主要处理相互协作进程之间信息的交换问题,而进程调度则是按照一定的算法,从就绪队列中挑选一个进程在处理器中 ...
