作业系统核心详细资料大全
1个回答
展开全部
作业系统核心是指大多数作业系统的核心部分。它由作业系统中用于管理存储器、档案、外设和系统资源的那些部分组成。作业系统核心通常运行进程,并提供进程间的通信。
核心的分类可分为单核心和双核心以及微核心。严格地说,核心并不是计算机系统中必要的组成部分。
基本介绍
- 中文名 :作业系统核心
- 外文名 :Operating System
- 含义 :一个作业系统的核心
- 负责 :管理系统的进程、记忆体等
作业系统
作业系统 (英语:Operating System,简称 OS )是管理计算机硬体与软体资源的程式,同时也是计算机系统的核心与基石。作业系统身负诸如管理与配置记忆体、决定系统资源供需的优先次序、控制输入与输出设备、操作网路与管理档案系统等基本事务。作业系统也提供一个让用户与系统互动的操作接口。 作业系统的形态非常多样,不同机器安装的作业系统可从简单到复杂,可从手机的嵌入式系统到超级计算机的大型作业系统。许多作业系统制造者对它涵盖范畴的定义也不尽一致,例如有些作业系统集成了图形用户界面,而有些仅使用文字接口,而将图形接口视为一种非必要的套用程式。 作业系统理论在计算机科学中,为历史悠久而又活跃的分支;而作业系统的设计与实现则是软体工业的基础与核心。核心
核心,是一个作业系统的核心。它负责管理系统的进程、记忆体、设备驱动程式、档案和网路系统,决定着系统的性能和稳定性。 “核心”指的是一个提供硬体抽象层、磁碟及档案系统控制、多任务等功能的系统软体。一个核心不是一套完整的作业系统。一套基于Linux核心的完整作业系统叫作Linux作业系统,或是GNU/Linux。 核心是作业系统最基本的部分。它是为众多套用程式提供对计算机硬体的安全访问的一部分软体,这种访问是有限的,并且核心决定一个程式在什么时候对某部分硬体操作多长时间。直接对硬体操作是非常复杂的,所以核心通常提供一种硬体抽象的方法来完成这些操作。硬体抽象隐藏了复杂性,为套用软体和硬体提供了一套简洁,统一的接口,使程式设计更为简单。 严格地说,核心并不是计算机系统中必要的组成部分。程式可以直接地被调入计算机中执行,这样的设计说明了设计者不希望提供任何硬体抽象和作业系统的支持,它常见于早期计算机系统的设计中。最终,一些辅助性程式,例如程式载入器和调试器,被设计到机器核心当中,或者固化在唯读存储器里。这些变化发生时,作业系统核心的概念就渐渐明晰起来了。核心分类
单核心
单核心(Monolithic kernel),是个很大的进程。它的内部又能够被分为若干模组(或是层次或其他)。但是在运行的时候,它是个单独的二进制大映象。其模组间的通讯是通过直接调用其他模组中的函式实现的,而不是讯息传递。 单核心结构在硬体之上定义了一个高阶的抽象界面,套用一组原语(或者叫系统调用)来实现作业系统的功能,例如进程管理,档案系统,和存储管理等等,这些功能由多个运行在核心态的模组来完成。 尽管每一个模组都是单独地服务这些操作,核心代码是高度集成的,而且难以编写正确。因为所有的模组都在同一个核心空间上运行,一个很小的bug都会使整个系统崩溃。然而,如果开发顺利,单核心结构就可以从运行效率上得到好处。 很多现代的单核心结构核心,如Linux和FreeBSD核心,能够在运行时将模组调入执行,这就可以使扩充核心的功能变得更简单,也可以使核心的核心部分变得更简洁。 单核心结构是非常有吸引力的一种设计,由于在同一个地址空间上实现所有低级操作的系统控制代码的复杂性的效率会比在不同地址空间上实现更高些。 单核结构正趋向于容易被正确设计,所以它的发展会比微核心结构更迅速些。 单核心结构的例子:传统的UNIX核心----例如伯克利大学发行的版本,Linux核心。微核心
微核心(Microkernelkernel)结构由一个非常简单的硬体抽象层和一组比较关键的原语或系统调用组成,这些原语仅仅包括了建立一个系统必需的几个部分,如执行绪管理,地址空间和进程间通信等。 微核的目标是将系统服务的实现和系统的基本操作规则分离开来。例如,进程的输入/输出锁定服务可以由运行在微核之外的一个服务组件来提供。这些非常模组化的用户态伺服器用于完成作业系统中比较高级的操作,这样的设计使核心中最核心的部分的设计更简单。一个服务组件的失效并不会导致整个系统的崩溃,核心需要做的,仅仅是重新启动这个组件,而不必影响其它的部分 微核心将许多OS服务放入分离的进程,如档案系统,设备驱动程式,而进程通过讯息传递调用OS服务。微核心结构必然是多执行绪的,第一代微核心,在核心提供了较多的服务,因此被称为'胖微核心',它的典型代表是MACH。它既是GNU HURD也是APPLE SERVER OS的核心,可以说,蒸蒸日上.第二代为微核心只提供最基本的OS服务,典型的OS是QNX,QNX在理论界很有名,被认为是一种先进的OS。 微核心只提供了很小一部分的硬体抽象,大部分功能由一种特殊的用户态程式:伺服器来完成。微核经常被用于机器人和医疗器械的嵌入式设计中,因为它的系统的关键部分都处在相互分开的,被保护的存储空间中。这对于单核设计来说是不可能的,就算它采用了运行时载入模组的方式。 微核心的例子:AIX,BeOS,L4微核心系列,.Mach中用于GNU Hurd和Mac OS X,Minix,MorphOS,QNX,RadiOS,VSTa。混合核心
混合核心它很像微核心结构,只不过它的的组件更多的在核心态中运行以获得更快的执行速度。 混合核心实质上是微核心,只不过它让一些微核结构运行在用户空间的代码运行在核心空间,这样让核心的运行效率更高些。这是一种妥协做法,设计者参考了微核心结构的系统运行速度不佳的理论。然而后来的实验证明,纯微核心的系统实际上也可以是高效率的。大多数现代作业系统遵循这种设计范畴,微软公司开发的Windows作业系统就是一个很好的例子。另外还有XNU,运行在苹果Mac OS X上的核心,也是一个混合核心。 混合核心的例子: BeOS 核心 ,DragonFly BSD,ReactOS 核心 Windows NT、Windows 2000、Windows XP、Windows Server 2003以及Windows Vista等基于NT技术的作业系统。外核心
外核心系统,也被称为纵向结构作业系统,是一种比较极端的设计方法。 外核心这种核心不提供任何硬体抽象操作,但是允许为核心增加额外的运行库,通过这些运行库应用程式可以直接地或者接近直接地对硬体进行操作。 它的设计理念是让用户程式的设计者来决定硬体接口的设计。外核心本身非常的小,它通常只负责系统保护和系统资源复用相关的服务。 传统的核心设计(包括单核和微核)都对硬体作了抽象,把硬体资源或设备驱动程式都隐藏在硬体抽象层下。比方说,在这些系统中,如果分配一段物理存储,应用程式并不知道它的实际位置。 而外核的目标就是让应用程式直接请求一块特定的物理空间,一块特定的磁碟块等等。系统本身只保证被请求的资源当前是空闲的,应用程式就允许直接存取它。既然外核系统只提供了比较低级的硬体操作,而没有像其他系统一样提供高级的硬体抽象,那么就需要增加额外的运行库支持。这些运行库运行在外核之上,给用户程式提供了完整的功能。 理论上,这种设计可以让各种作业系统运行在一个外核之上,如Windows和Unix。并且设计人员可以根据运行效率调整系统的各部分功能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
中培伟业
2023-09-26 广告
2023-09-26 广告
作为北京中培伟业管理咨询有限公司的工作人员,我可以向您提供以下信息:CISP认证考试是面向信息安全领域的专业考试,考试内容会根据不同的认证等级而有所不同。仅仅依靠题库进行复习是不够的,因为题库中的题目只是考试内容的一部分,而且考试中可能会出...
点击进入详情页
本回答由中培伟业提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询