您的位置:首页 > 其它

操作系统导论

2016-12-20 00:00 99 查看

1.1 计算机的根本特征

万物可以划分为两类:

原本就存在于自然界中,人类所做的只不过是发现。

本来就不存在,人类所做的是发明。

前者是称为神造事物或者自然存在的事物,后者称为人造事物。计算机学科是一个人造学科。

人造学科的4大特点:

不准确、具有相对性

从对人类活动的观察中导出

依赖于人的主观判断能力

通常符合人的直觉

1.2 程序是如何运行的

对于绝大多数人编写程序的人来说,使用编程语言称为高级程序设计语言,如C、C++、Java等。但由于计算机并不认识高级语言编写的程序,编好的程序需要进行编译变成计算机能够识别的机器语言程序,而这需要编译器和汇编器的帮助。其次,机器语言程序需要加载到内存,形成一个运动中的程序,即进程,而这需要操作系统的帮助。进程需要在计算机芯片CPU上执行的机器语言指令需要变成能够一个个时钟脉冲里执行的基本操作,这需要指令集结构和计算机硬件的支持,而整个程序的执行过程还需要操作系统提供服务和程序语言提供的执行环境(runtime environment)。这样,一个从程序到微指令执行的过程就完成了。

所以,从上面的描述中我们可以看出:程序的运行至少需要如下4个因素:

程序设计语言(C、C++、Java)

编译系统(gcc,g++)

操作系统(Unix,Linux,Windows)

指令集结构(计算机硬件系统)

需要注意的是,程序执行过程是从高级语言编写的程序开始的。而实际并非这样。事实上,程序可能直接使用机器语言或汇编语言进行编写。用这种称为"低级"的语言编写出来的机器语言无需经过编译器的翻译就可以在计算机指令集上执行。如果在汇编语言上编写的汇编程序,则只需要经过汇编器的翻译即可加载执行。

1.3 什么是操作系统

总的来说操作是掌控计算机局势的一个系统。具体来说操作系统是介于计算机和应用软件之间的一个软件系统,位于操作系统的下面是硬件平台,上面则是应用软件。

因此,当我们理解了操作系统代表的是掌控事情的系统,但是究竟掌控什么事情呢?当然是计算机上或计算机里发生的一切事情。最原始的计算机并没有操作系统,而是直接由人来掌握事情,即所谓的单一控制终端、单一操作员模式。但是随着计算机复杂性的增长,人已经不能胜任直接掌控计算机了。于是我们编写出操作系统这个“软件”来掌控计算机,将人类从日益复杂的掌控任务中解脱出来。这个掌握有着多层深远的意义。

首先,由于计算机的功能和复杂性不断的发生变化(趋向更加复杂),操作系统所掌控的事情也就越来越多,越来越复杂。同时,操作系统本身能够使用的资源也不断增加(如内存容量)。这就是早期操作系统不断改善的根本原因。

其次,既然操作系统是专门掌控计算机的,那么计算机上发生的所有事情自然需要操作系统的知晓和许可,未经操作系统同意的任何事情均可视为非法的,也就是病毒和入侵攻击所试图动作的事情。作为操作系统的设计人员,我们当然需要确保计算机不发生任何我们不知情或不同意的事情。但是人的能力是有限的,人的思维也是有缺陷的,我们设计出的系统自然不会十全十美,也会有缺陷,这就给了攻击者可乘神之机。操作系统设计人员和攻击者之间的博弈是当前驱动操作系统改善的一个重要动力。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  操作系统导论