操作系统核心在编译器
‘壹’ 计算机操作系统知识点
计算机操作系统知识点
网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。下面是关于计算机操作系统知识点,希望大家认真阅读!
4.1.1操作系统的概念
操作系统:是管理计算机软硬件资源的程序,同时它又是用户与计算机硬件的接口。
4.1.2操作系统的构成
进程管理、内存管衫凳理、文件管理、输入/输出系统管理、二级存储管理、联网、保护系统、命令解释程序
4.2.1操作系统的类别
经过多年的发展,操作系统多种多样。为提高大型计算机系统的资源利用率,操作系统从批处理,多道程序发展为分时操作系统。为了满足计算机处理实时事件的需要,就有实时操作系统。为适应个人计算机系统的需要又出现了桌面操作系统。为适应并行系统的需要,就有了多处理器操作系统。为满足网络和分布计算的需要,就有了网络操作系统和分布式操作系统。此外,还有为支持嵌入式计算机的嵌入式操作系统。
4.2.2计算环境
从计算机诞生至今,操作系统总是与具体的计算环境相联系,它总是在某种计算环境中设置和使用,就目前来看计算环境可分为以下几类:
1.传统计算环境
指普通意义下的独立或联网工作的通用计算机所形成的计算环境。
2.基于Web的计算环境
互联网的普及使得计算被延伸到Web环境。
3.嵌入式计算环境
嵌入式计算机就是安装在某些设备上的计算部件,其计算相对比较简单。
4.3.1进程的概念
什么是进程?它与程序有什么区别?
程序:用户为完成某一个特定问题而编写的操作步骤。
进程:可以简单地被看作是正在执行的程序。但是进程需要一定的资源来完成它的任务(例如CPU时间、内存、文件和I/O设备)。
进程与程序的区别在于进程是动态的、有生命力的,而程序是静态的。一个程序加载到内存,系统就创建一个进程,程序执行结束后,该进程也就消亡了。
在计算机中,由于多个程序共享系统资源,就必然引发对CPU的争夺。如何有效地利用CPU资源,如何在多个请求CPU的进程中选择取舍,这就是进程管理要解决的问题。
4.3.3进程控制块PCB(略)
为了控制进程,操作系统就必须知道进程存储在哪里,以及进程的一些属性。
进程控制块是进程实体的一部老猜分,是操作系统中记录进程的专用数据结构。一个新的进程创建时,操作系统就会为该进程建立一个进程控制块。操作系统根据进程控制块对并发进程进行控制。
4.3.4进程调度及队列图
计算机采用多道程序的目的是使得计算机系统无论何时都有进程运行,单处理器的计算机在某一时刻CPU只能运行一个进程,如果存在多个进程,其它进程就需要等待CPU空闲时才能被调度执行。
当一个进程处于等待或CPU时间片用完时,操作系统就会从该进程中拿走CPU控制权,然后再交给其它进程使用,这就是进程的调度。
4.3.5CPU调度及其准则
在设计CPU调度程序时主要应该考虑的准则包括:
(1)CPU使用率。让CPU尽可能地忙。
(2)吞吐量。让CPU在一定时间内完成的进程数尽可能多。
(3)周转时间。让进程从提交到运行完成的时间尽可能短。
(4)等待时间。让进程在就绪队列中等待所花时间之和尽可能短。
(5)响或含旅应时间。让进程从提交请求到产生第一响应之间的时间尽可能短。
主要的CPU调度算法
1、先到先服务
2、最短作业优先
3、优先权
4、轮转
5、多级队列
6、多级反馈队列
4.3.7进程的同步与互斥
进程的同步就是指相互协作的进程不断调整它们之间的相对速度,以实现共同有序地推进。
换句话说,在操作系统中,允许多个进程并发运行。然而,有些进程之间本身存在某种联系,它们在系统中需要一种协作,以保证进程能正确有序地执行并维护数据的一致性。
在操作系统中,可能存在着多个进程。而系统中一些资源一次只允许一个进程使用,这类资源被称为临界资源。在进程中访问临界资源的那段程序称为临界区。当一个进程进入临界区执行时,其它进程就不允许进入临界区执行,否则就会导致错误结果。由此得出:
多个进程并发执行时,只允许一个进程进入临界区运行,这就是进程的互斥。
例如:多个进程在竞争使用打印机时表现为互斥。
一个文件可供多个进程共享,其中有一个进程在写操作时,其它进程则不允许同时写或读,表现为互斥。
4.3.8进程的死锁及处理方法
在多道程序设计中,多个进程可能竞争一定数量的资源。一个进程在申请资源时,如果所申请资源不足,该进程就必须处于等待状态。如果所申请的资源被其它进程占有,那么进程的等待状态就可能无法改变,从而形成进程之间相互一直等待的局面,这就是死锁。
竞争资源引起死锁
引起死锁的四个必要条件:
互斥:任一时刻只能有一个进程独占某一资源,若另一进程申请该资源则需延迟到该资源释放为止。
占有并等待:即该进程占有部分资源后还在等待其它资源,而该资源被其它进程占有。
非抢占:某进程已占用资源且不主动放弃它所占有的资源时,其它进程不能强占该资源,只有等其完成任务并释放资源。
循环等待:在出现死锁的系统中,一定存在这样一个进程链,其中每个进程至少占有其它进程所必需的资源,从而形成一个等待链。
处理死锁问题的三种方式:
可使用协议预防和避免死锁,确保系统从不会进入死锁状态。
可允许系统进入死锁状态,然后检测出死锁状态,并加以恢复。
可忽略进程死锁问题,并假装系统中死锁从来不会发生。即没有必要把精力花在小概率事件上。
处理死锁优先考虑的顺序:先预防和避免再检测和恢复
4.4内存管理
内存是现代操作系统的核心。内存用于容纳操作系统和各种用户进程,是可以被CPU和I/O设备所共同访问的数据仓库。计算机的所有程序运行时都要调入内存。
内存管理的主要工作是:为每个用户进程合理地分配内存,以保证各个进程之间在存储区不发生冲突;当内存不足时,如何把内存和外存结合起来,给用户提供一个比实际内存大得多的虚拟内存,使得程序能顺利执行。内存管理包括内存分配、地址映射、内存保护和扩充。
4.4.1用户程序执行与地址映射
用户编写程序在执行前,需要多个处理步骤,这些步骤可将源程序转变为二进制机器代码,然后在内存中等待执行。当然有时并非每个步骤都是必需的。
通常,将指令和数据的.地址映射成内存地址可以发生在以下三个执行阶段。(了解)
1.编译阶段:如果在编译时就知道进程将在内存中的什么位置驻留,那么编译器就可以直接以生成绝对地址代码。
2.加载阶段:不知道进程将驻留在什么位置,那么编译器就必须生成程序的逻辑地址,在加载阶段再转变成内存的绝对地址。
3.执行阶段:如果进程在执行时可以从一个内存段移动到另一个内存段,那么进程的绝对地址映射工作只能延迟到执行时进行。
4.4.2物理地址空间与逻辑地址空间
物理地址:是计算机内存单元的真实地址。
物理地址空间:由物理地址所构成的地址范围。
逻辑地址:用户程序地址,从0开始编址。
逻辑地址空间:由逻辑地址所构成的地址范围。
地址映射:用户程序在运行时要装入内存,这就需要将逻辑地址变换成物理地址,这个过程称为地址映射,也称重定位。
用户编写的源程序是不考虑地址的,源程序经CPU编译后产生逻辑地址。从CPU产生的逻辑地址转换为内存中的物理地址的映射是由计算机中被称为内存管理单元的硬件设备来实现的,将逻辑地址与内存管理单元中存放的内存基址相加就得到了物理地址。
4.4.3进程使用内存的交换技术
为了更加有效地使用内存,进程在不运行时,可以暂时从内存移至外存上,直到需要再运行时再重新调回到内存中。也就是说内存管理程序可将刚刚运行过的进程从内存中换出以释放出占用的内存空间,然后将另一个要运行的进程占据前者释放的内存空间。
计算机工作时,为了将多个进程放入到内存就必须考虑在内存中如何放置这些进程。
4.4.4内存分配方案-连续
对于连续内存分配方案,开始时所有内存是一个大的孔,随着内存分配的进行就会形成位置上不连续的大小不一的孔。在连续内存分配方案中,当新进程需要内存时,为其寻找合适的孔,实现内存分配。该方案为每个进程所分配的内存物理地址空间在位置上是连续的。
4.4.5内存分配方案-分页式
分页管理基本思想:
o内存物理地址空间划分为若干个大小相等的块(页框)
o进程的逻辑地址空间也划分为同样大小的块(页面)
o内存分配时每个页面对应地分配一个页框,而一个进程所分得页框在位置上不必是连续的。
页表:操作系统为每个用户程序建立一张页表,该表记录用户程序的每个逻辑页面存放在哪一个内存物理页框。
4.5虚拟内存方案
虚拟内存是一个容量很大的存储器的逻辑模型,它不是任何实际的物理存储器,它一般是借助硬盘来扩大主存的容量。
虚拟内存:对于一个进程来讲,如果仅将当前要运行的几个页面装入内存便可以开始运行,而其余页面可暂时留在磁盘上,待需要时再调入内存,并且调入时也不占用新的内存空间,而是对原来运行过的页面进行置换。这样,就可以在计算机有限的内存中同时驻留多个进程并运行。而对用户来讲感觉到系统提供了足够大的物理内存,而实际上并非真实的,这就是虚拟内存。
4.5.2页面请求与页面置换算法
页面请求:在虚拟内存技术中,进程运行时并没有将所有页面装入到内存,在运行过程中进程会不断地请求页面,如果访问的页面已在内存,就继续执行下去;但如果要访问的页面尚未调入到内存,便请求操作系统将所缺页面调入内存,以便进程能继续运行下去。
页面置换:如果请求页面调入内存时,分配给该进程的页框已用完,就无法立即装入所请求页面。此时,必须将进程中的某个页面从内存的页框调出到磁盘上,再从磁盘上将所请求的页面调入到内存的该页框中。这个过程叫做页面置换。
4.6文件管理
文件管理是操作系统最常见的组成部分。文件管理主要提供目录及其文件的管理。
4.6.1文件的概念
文件:保存在外部存储设备上的相关信息的集合。
文件命名:文件主名+扩展名
文件存取属性:
只读:只允许授权用户进行读操作。
读写:只允许授权用户进行读和写的操作。
文档:允许任何用户进行读写操作。
隐藏:不允许用户直接看到文件名。
文件系统:是对文件进行操作和管理的软件,是用户与外存之间的接口。这个系统将所有文件组织成目录结构保存在外存,一个文件对应其中的一个目录条。目录条记录有文件名、文件位置等信息。
操作系统对文件的基本操作包括:
创建文件、文件写、文件读、文件重定位、文件删除、文件截短。
对文件的其它操作包括:文件复制、重命名、更改属性等。
;‘贰’ 程序语言,操作系统,编译器三者之间有何关系
程序语言,操作系统,编译器三者之间有何关系?
可以理解为程序语言需要在编译器里面进行编译,但是编辑器需要运行在操作系统里
编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的
简单讲,编译器就是将"一种语言(通常为高级语言)"翻译为"另一种语言(通常为低级语言)"的程序。一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (piler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)
操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。操作系统的种类很多,各种设备安装的操作系统可从简单到复杂,可从手机的嵌入式操作系统到超级计算机的大型操作系统。目前流行的现代操作系统主要有Android、BSD、iOS、linux、Mac OS X、Windows、Windows Phone和z/OS等,除了Windows和z/OS等少数操作系统,大部分操作系统都为类Unix操作系统。
操作系统和编译器的关系?
操作系统是和硬件的桥梁,所有软件如果要运行,就得在装有操作系统的机器上运行。没有安装操作系统的计算机,是不能运行其它软件的,装上了linux,你才能在它上面安装g, 你可以用g编译各种软件,比如linux版的QQ等,同样你也可以用g编译linux系统软件(因为系统软件也是软件),并把编译好的linux软件放到机器上安装。
当然也可以写个编译器在没有操作系统的机器上编译,但这个编译器就要做很多和硬件打交道的事。至少g是不行的,要运行在操作系统上的。
操作系统有哪几大特征?它们之间有何关系?
说得通俗点 就是一个操作平台 你要是用什么软件或执行什么程序 都需要建立在一个支持的平台上才好发挥出作用
之间 不知你所指是什么
家庭版 专业版 旗舰版 一个比一个功能更全面
关于编译器 操作系统 CPU
是编译器定的... 基本数据类型(VC为例)主类型分类型修饰符占用空间表示范围整形整数形 intshort2字节-32768 ~ 32767long(默认)4字节-231 ~ (231 -1)unsigned short2字节0 ~ 65535
操作系统可以编译高级语言源程序吗
首先你要搞清楚操作系统与编译器的概念,操作系统是一个软件平台,本身没有编译功能。编译器是运行于操作系统上的一个应用程序,只要有人把某种编程语言的编译器移植到这个操作系统上,那么就可以在这个操作系统上编译这种语言。
另外,不知道你说的高级语言是哪些,C++和JAVA之类的算不算?
一般来说,电脑用的操作系统上面,比如windows 和 Linux 都有多编译器,而小型的嵌入式操作系统则少有编译器可以能运行其上。
用户、计算机和程序员三者之间有何关系
用户是使用计算机的,计算机为用户提供服务,而程序员与计算机就像"朋友",可以彼此交流。实现人机对话。一一一个人解答,望采纳。
语言编译器是一种( ) A 系统软件 B 微机操作系统 C 字处理系统 D 源程序
可以先明晰下规则 答案来自hhqq005
编译器:翻译工具,把高级语言源程序翻译为汇编语言源程序,再把汇编源序翻译成目标代码供连接程序使用。
语言:一个规则。例如:C语言,它规定程序入口为main(),和其它规定。并把这些 <规定的集合> 命名为C语言。
TC:一个开发工具,它包括文本编辑器,编译器,连接程序,调试环境等等。TC中的编译器是TCC.EXE文件。
关于汇编:
汇编语言是一个规则,
汇编程序是一个翻译工具
汇编源程序是一个 符合(汇编语言)规则的程序代码
汇编是一个过程,这个过程是汇编程序 把汇编源程序 翻译 为目标代码的过程
对于高级语言:翻译的过程叫做编译,翻译工具叫做编译程序或编译器。
我觉得 这样看的话 是选择A
操作系统和语言程序的关系
操作系统是系统软件,不是编程语言。软件是由编程语言编写。常用的语言如汇编,C,C++,VC,VB,JAVA,DELPHI等。大部分应用程序都应在一定的系统平台(Windows,Unix,LInux)下工作。并不是说一定要有操作系统。否则在60-70年代计算机还有什么用。但是有了操作系统对于人们应用计算机带来了很多便利。至于说编程语言否也需要系统支持。还是那句话,在没有系统前,人们就是用汇编和C语言编写了windows系统!
当然一定的语言要有一定的编译环境,所谓编译环境就是一定的软件集成环境,如要有编辑程序,连接程序,编译程序,解释程序等!而这些程序又需要系统的支持,所以编程语言需要系统支持,只不过并非是windows系统。在这里就我个人认为,只有汇编语言例外。
工作、家庭和亲人三者之间有何关系?
家庭是一群由血缘和婚姻纽带连接起来的人。这些人生活在一个屋顶下,共同开支预算。当然这仅仅意味着理论上的概念,在现实生活中,家庭生活是与周围活跃的社会生活互相联系的,它要受当时经济、政治、文化及人们心理,信仰等变化的影响。无论在世人看来是多么独立的家庭,它实际上多多少少要反映出全部重要的社会现象,而反过来,所谓的“大世界”(即社会生活也必然要赋予家庭中人际关系所具有的特征,例如夫妻,父子关系等等)。
在社会主义所有制的影响下,随着国家对公民家庭物质福利的改善,家庭作为以父亲为首的经济生产个体的职能已经消亡,现在苏联人的家庭关系首先指的是人的关系,而不是指经济关系。苏联人普遍认为,夫妻子女间的情爱和共同利益是他们最关心的方面。
当然,迄今为止,经济在家庭生活中仍然还起着很大作用,它突出表现在家庭的物质利益和家庭成员的自助活动中。社会主义制度确保人与人之间的平等,因此其生活方式的一个重要特点就是夫妻共同管理家庭,共同分担家务劳动。随着时代的变迁,我们对于家庭与社会之间的责任和义务都有重新分配的必要。由于科技事业的发展,在很大程度上解决了苏联人民的衣、食、住、行状况,他们无需再花费更多的精力从事一些琐细的家务劳动,从而把大部份精力和时间投入从事社会性的创造活动。一般说来,家庭的建立和和睦幸福的确需要一定程度的物质条件,可这远远不是决定家庭幸福的唯一绝对因素。为了人们家庭安稳和谐,有必要首先清醒地认识幸福所包含的意义。为此,苏联社会学家V·波耶柯进行了测试,他把调查结果分为三类:
1.物质因素:一套公寓和物质福利优厚。
2.人的因素:夫妻间的相互理解,如对孩子的看法,有信心建立牢固的婚姻,共同的兴趣等。
3.其它因素:令人满意的工作,文化程度,好职位,社交范围等。
被调查的3220个列宁格勒市民中,有一半的人认为家庭幸福首先取决于夫妻间的理解,然后才谈得上其它因素。这次调查结果与苏联社会学家Z·杨柯夫1978——1979年与苏联《劳动妇女》杂志编辑部所做的调查一样,不论男女公民,在确定自己的家庭关系时都首先考虑相互的理解和体贴,双方互相尊重,第二是要能共同承担养育子女的义务,但是,由于男女生理,心理特征的差异,使女性比男性更为强调理解和信任的重要性,至于家庭之外的其它因素,男女均认为有一个满意的工作是必要的前题,女性侧重双方共度余暇,积极参加旅游,社交是巩固婚姻纽带有效的办法;男性更为珍视自我意识,行动自由和在社会上的个人名望及地位。
摘自网络
这样,由于男女愿望的差异和家务劳动,家庭生活所形成的独特性,就使得家庭成员之间必须了解自己在家庭生活中应该扮演的角色,及所需承担的义务。而家庭成员怎样成功地处理好家务琐事,家庭关系又反映出其所处社会的成熟和完善程度。社会学家认为:一个完美幸福的家庭,既要满足其成员间婚姻和伴侣的本能的原始要求,又要使他们在自己子女身上体现出父爱或母爱,而与此同时通过大量日常共同的家务琐事渐渐获得正确处理夫妻关系的经验,从而去理解家庭幸福和爱情的更深的层次。
一对和睦相爱的夫妇所关心的不仅仅是自己,而是对方的需要,这样又提高了自己在爱人眼里的价值,取得了他或她的尊敬。跟潘约诺夫夫妇一样,成千上万和睦的男女由于共同的生活目标,共同的企望密切地联系起来,使他们能和衷共济,屡经磨砺而不动摇婚姻家庭的基石。社会主义制度下这样珍惜爱情,互相关心,爱抚下一代的夫妻关系正是现代苏联人生活的楷模。
‘叁’ linux内核主要由哪几个部分组成
一个完整的Linux内核一般由5部分组成,它们分别是内存管理、进程管理、进程间通信、虚拟文件系统和网络接口。
1、内存管理
内存管理主要完成的是如何合理有效地管理整个系统的物理内存,同时快速响应内核各个子系统对内存分配的请求。
Linux内存管理支持虚拟内存,而多余出的这部分内存就是通过磁盘申请得到的,平时系统只把当前运行的程序块保留在内存中,其他程序块则保留在磁盘中。在内存紧缺时,内存管理负责在磁盘和内存间交换程序块。
2、进程管理
进程管理主要控制系统进程对CPU的访问。当需要某个进程运行时,由进程调度器根据基于优先级的调度算法启动新的进程。:Linux支持多任务运行,那么如何在一个单CPU上支持多任务呢?这个工作就是由进程调度管理来实现的。
在系统运行时,每个进程都会分得一定的时间片,然后进程调度器根据时间片的不同,选择每个进程依次运行,例如当某个进程的时间片用完后,调度器会选择一个新的进程继续运行。
由于切换的时间和频率都非常的快,由此用户感觉是多个程序在同时运行,而实际上,CPU在同一时间内只有一个进程在运行,这一切都是进程调度管理的结果。
3、进程间通信
进程间通信主要用于控制不同进程之间在用户空间的同步、数据共享和交换。由于不用的用户进程拥有不同的进程空间,因此进程间的通信要借助于内核的中转来实现。
一般情况下,当一个进程等待硬件操作完成时,会被挂起。当硬件操作完成,进程被恢复执行,而协调这个过程的就是进程间的通信机制。
4、虚拟文件系统
Linux内核誉衫铅中的虚拟文件系统用一个通用的文件模型表示了各种不同的文件系统,这个文件模型屏蔽了很多具体文件系统的差异,使Linux内核支持很多不同的文件系统。
这个文件系统可以分为逻辑文件系统和设备驱动程序:逻辑文件系统指Linux所支持的文件系统,例如ext2、ext3和fat等;设备驱动程序指为每一种硬件控制器所编写的设备驱动程序模块。
5、网络接口
网络接口提供了对各种网络标准的实现和各种网络硬件的支持。网络接口一般分为网络协议庆好和网络驱动程序。网络协议部分负责实现每一种可能的网络传输协议。
网络设备驱动程序则主要负责与硬件设备进行通信,每一种可能的网络硬件设备都有相应的设备驱动程序。
(3)操作系统核心在编译器扩展阅读:
Linux 操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet 网络。
1981 年IBM公司推出微型计算机IBM PC。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix操作系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell软件了。
1993年,大约有100余名程序员参与了Linux内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。
2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“塌棚化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器。
‘肆’ 手机操作系统是怎样做出来的
手机操作系统大都是用汇编和C语言编写内核用JAVA编写的框架。
手机操作系统目前分为iOS和Android。Android底层驱动,以及操作系统全部内核都是使用C语言和汇编语言编程开发。昌汪但是android操作系统本身是使用Java开发,使用JNI调用本地的C语言库,由操作系统实现对底层调用。iOS系统是苹果自己开发的,核心合适C语言。
手机的操作系统使用C语言编写出来之后,是非常的丑陋的,说白了手机的操作系统就是各种各样的接口而已。手机操作系统的底层,是用来调用手机的各种硬件,这才是操作系统核心的东西。
操作系统的本质是对硬件的调用和控制,段晌所以手机操作系统包含所有相应语言的编译器,PC端使用编程软件如VC++6.0编码后可以直接在手机操作系统上运行。
(4)操作系统核心在编译器扩展阅读:
两种当前主流系统的耐燃仔介绍:
Android 英文原意为“机器人”,Andy Rubin于2003 年在美国创办了一家名为Android 的公司,其主要经营业务为手机软件和手机操作系统。Google 斥资4 000 万美元收购了Android 公司。
Android OS是Google(谷歌)与由包括中国移动、摩托罗拉、高通、宏达和T-Mobile 在内的30 多家技术和无线应用的企业组成的开放手机联盟合作开发的基于Linux 的开放源代码的开源手机操作系统。
IOS是由苹果公司开发的手持设备操作系统。苹果公司于2007 年1 月9 日的Macworld 大会上公布这个系统,以Darwin(Darwin 是由苹果电脑的一个开放源代码操作系统)为基础,属于类Unix 的商业操作系统。
2012 年11 月,根据Canalys 的数据显示,iOS 已经占据了全球智能手机系统市场份额的30%,在美国的市场占有率为43%。
‘伍’ 什么是linux内核
Linux是由Linus Torvalds开发的类UNIX的操作系统,Linux主要特点是开源的,因此我们可以免费使用来当做服务器。
Linux严格分为两个含义。
1.广泛的Linux是指Linux发行版
2.狭义的Linux是指Linux内核
Linux内核是操作系统的基础,介于硬件和软件之间,并且内核位于操作系统中,操作系统将在硬件和软件之间进行调解,Linux内核是操作系统核心部分的功能。
二:内核的基本性能
1.流程管理
在Linux内核中,程序的执行状态以进程为单位进行管理。此外,内核为每个进程准备一个名为task_stract结构的数据结构。
2.进程调度程序
可执行状态等待哪个进程以哪个顺序执行,由于基本上不可能运行比CPU数量更多的进程,因此运行过程的效率非常重要。
3.内存管理
在Linux内核中,使用物理内存和虚拟内存管理数据。通过分配对应于物理存储器的虚拟地址,而不是实际为每个进程分配物理存储器地址,可以使用容量远大于实际物理存储器容量的存储器。它使它成为可能。此外,由于每个进程都分配了自己的虚拟地址,因此每个进程的内存空间是独立的,并且不会违反其他进程的内存。
3.文件系统
它以文件的形式提供存储数据的访问方法。所有数据都以文件的形式进行管理。/ Directory(根目录)作为顶点,内核本身作为文件和目录的集合存在。