操作系统的基本原理

转载地址:http://freeloda.blog.51cto.com/2033581/1198392

前言 :

今天(2013-5-6)学习了马哥视频的第一天,主要内容如下,计算机组成的基本原理、操作系统的基本原理、还有linux的基本操作,哈哈但是最重要的就是写博客了,本来也有在写博客,断断续续的,总是没能坚持写,从今天开始,坚持写了,加油啊,对自己说的,哈哈 …………

本文主要内容有三个部分上面也提到了就是,一、计算机的基本组成 ,二、操作系统的基本原理,三、linux的基本操作。 大家注意啊,我这里也是讲解基本内容啊,也不可能通过一篇博客,就能把计算机有组成和操作系统的原理全部讲解透了,那是不可能的啊,这里只是概述啊,帮大家入个门,也为linux的学习打好基本,个人觉得大家有时间,还是把计算机组成原理和操作系统的原理好好的学习与研究一下,对未来的学习或者说发展很有帮助的,嘿嘿………^_^!(本人正在学习中…………,网上有好多这样的书,大家自行下载,嘿嘿!)

第一部分:计算机硬件的基本组成原理

1.什么是计算机?

定义很多,版本也很多,我这里定义一下,嘿嘿

计算机其实就是,接受使用者的输入指令与数据,经过CPU(中央处理器)的数学与逻辑运算后,产生的或存储为有用的信息。只要有输入设备及输出设备,让你可以输入数据使用机器产生输出信息,就可以认为是计算机了,嘿嘿!

2.计算机的五大组成部分

(1). 从上面的定义可以看出计算机由五大部分组成,那就是,运算器、控制器、存储器、输入设备与输出设备,运算器与控制器看作是CPU,存储器大家可认为是内存,输入设备可以是键盘和鼠标,输出设备可认为是显示器,大家先这么想就行,帮助大家理解,嘿嘿。(不是很准确,但容易理解,如下图:)

从上图可以看出,各个部分的组成与之间的关系,重点在于CPU与主内存。 实线部分的是数据的传输方向,基本上数据都是流经过主内存再转出去的! 至于数据会流进/流出内存则是CPU所发布的控制命令!而CPU实际要处理的数据则完全来自于主内存!

(2). 五大单元所对应的主机部分

控制器与运算器-------> CPU

存储器 --------> 内存

输入设备 --------> 键盘、鼠标、扫描设备、手写板、触控屏幕等,有很多啦

输出设备 --------> 显示器、打印机等

外部存储器 --------> 光驱、硬盘、U盘、软驱等(软驱可能大家都没见过,嘿嘿)

3.CPU的类型(硬件架构)

因为CPU最重要,所以我在这里就单独的说一说。

(1). CPU其实是内部含有一些小指令集,我们所使用的软件都要经过CPU内部的微指令集来达成才行。 那这些指令集的设计主要又被分为两种设计理念,这就是目前世界上常见到的两种主要CPU种类: 分别是精简指令集(RISC)与复杂指令集(CISC)系统。

(2). 具体的有

精简指令集(RISC):微指令集较为精简,每个指令的执行时间都很短,完成的动作也很单纯,指令的执行效能较佳;(主要用于,手机,导航,网络设备,家用电器等)

ARM ------->ARM 目前世界应用最广的CPU,包括各厂牌手机、PDA、导航系统、网络设备(交换器、路由器等)

alpha -------->DEC

UltraSparc -------> SUN

Power -------> Appale

M68000,M68K -------> MOTO

复杂指令集(CISC):CISC在微指令集的每个小指令可以执行一些较低阶的硬件操作,指令数目多而且复杂, 每条指令的长度并不相同。因为指令执行较为复杂所以每条指令花费的时间较长, 但每条个别指令可以处理的工作较为丰富。(主要用于PC与服务器,复杂 计算机)

X86 -------> Intel,AMD

X64 -------> AMD,Intel

安腾 -------> HP--->Intel

PowerPC ------> IBM

4.其它设备(周边设备)

(1). 光是有CPU是无法运行计算机的,所有我们的计算机还要其它设备,除了我们上面说的,存储器,输入输出设备,外部存储器,还有什么设备呢,嘿嘿!

(2). 其它设备有

显示设备,如显卡,就是我们常说的显卡,用来看电影啊,玩游戏,当然还能用来学习,嘿嘿

网络设备,如网卡,大家想啊,没有网络,计算机好像就没什么意思啊,嘿嘿

声音设备,如声卡,嘿嘿,如果没有声音,是不是也失去很多乐趣呢,哈哈,声卡,也是必不可少的

最重要的还是一设备,那是什么呢,大家想啊,CPU、内存、硬盘、键盘、鼠标、显卡、声卡、网卡等设备,他们是怎么连接起来的呢,大家可能想到了,对的是用主板连接起来的对吧,嘿嘿,说是这么多,那么这些设备又是怎么协同工作的哟,我们下面就说说,嘿嘿!

5.计算机的运行原理

说了这么时间,计算机的各个部件 ,那么我们来说说,他们是怎么工作的,嘿嘿!我们知道,计算机在工作的过程中,最重要是CPU,各种CPU在处理数据的方法各不一样,主要是因为,我们上面说的,指令集的不同,但是都是通过CPU去控制,各个部件的,处理任何数据,都是由内存记录,然后传输给CPU处理这些数据,再发送控制指令给周围的各个部件,如果用到以前的数据,CPU就去硬盘里去取,嘿嘿!简单总结一下,计算机中最重要的是CPU与内存,而CPU数据都是来源于内存,如果需要用到硬盘数据,先将硬盘数据传入内存中,再由内存输入到CPU中,这是非常重要的,大家要记住啊,嘿嘿!

6.计算机的分类

(1).超级计算机、大型计算机、工作站、PC机、微型计算机机(平板、手机等),至于详细介绍我就不写,想了解朋友自行百度…………

(2).目前用的最多,属于个人计算机(PC机)哈,性能可以与工作站相比较,一样的性能强悍,但是稳定性不如,工作站。还是有就是价格便宜,嘿嘿

7.计算机的数据表示方式

(1).上面基本上把,计算机的硬件组成和各个部件的怎样协同工作大致的说了一下,哈哈,下面我们说一下,计算机是怎么识别和处理数据的,嘿嘿!我们知道计算机,就一些硬件组成的设备,它们只认识, 电信号,或说只认识0,1。记录的数据也是只能记录0与1而已,所以计算机常用的数据是二进位的。 但是我们人类常用的数值运算是十进位,文字方面则有非常多的语言,中国常用的语言就有英文、中文(又分繁体与简体中文)等。 那么计算机如何记录与显示这些数值/文字呢?

(2).早期的计算机使用的是利用通电与否的特性的二级管,如果通电就是1,没有通电就是0, 后来沿用至今,我们称这种只有0/1的环境为二进位制,英文称为binary。所谓的十进位指的是逢十进一位, 因此在个位数归为零而十位数写成1。所以所谓的二进位,就是逢二就前进一位的意思。对于我们人来说,十进制是比较友好的,对于计算机来说,二进制是比较友好的,所以,在计算机处理数据时得进行,进制转换!(如果进制转换不会的同学大家可以去百度哈!)

(3).既然计算机都只有记录0/1而已,甚至记录的数据都是使用byte/bit等单位来记录的,那么文字该如何记录啊? 事实上文字档案也是被记录为0与1而已,而这个档案的内容要被取出来查阅时,必须要经过一个编码系统的处理才行。如我们常用的编码有,ASCII ,GBK,GB2312,UTF-8等编码,通过以上编辑,就能让计算机识别,我们的文字,嘿嘿!

第二部分 : 操作系统的基本原理

1.总结与引子

上面第一部分,我们讲解了,计算机硬件的组成和基本的工作原理,现在我说将说下一个重要话题,那就是软件这个话题,大家想一下,若是我们计算机没有软件,会怎么样呢,我们怎么去操作它呢,由上面是知识我们知道,计算机只认识,0和1,我们不能用0和1去操作它吧,显然那是不现实的对吧,嘿嘿。那我们用什么操作它呢,大家想啊,我们平时是怎么用计算机的呢,举个个例子,我们平时看电影是怎么看呢,首先我们肯定有操作系统对吧,XP,win 7或者win 8,还有就是肯定得有个播放器对吧,电影视频那就不用说了,嘿嘿。只有这样我们才能看电影,嘿嘿!从上面的例子,我们可以看出,计算机除了硬件,那还有就是软件,软件又分为操作系统(XP,7,8)和应用软件(播放器),没有软件的计算机,我想它什么都不能做,就像失去了灵魂,那下面我们就说说,什么是操作系统…………

2.前言

在说操作系统之前,我们得说说什么是机器语言,就如大家所知道的,计算机只认识0与1而已,而且计算机最重要的运算与逻辑判断是在CPU内部, 而CPU其实是具有微指令集的。因此,我们需要CPU帮忙工作时,就得要参考微指令集的内容, 然后撰写让CPU读的懂得指令码给CPU执行,这样就能够让CPU帮我们运作了。不过这个过程是相当麻烦的,大部分人也学不会,或说无法编写,机器语言,后科学家发明了一种,编译器,用人类自己编写的程序通过编译器的翻译让机器看的懂,这样就解决,人与机器的交流问题,常见的编译器有C,C++,JAVA等,解决了,人与计算机交流的问题,新问题又来了,当你需要将运作的数据写入内存中,你就得要自行分配一个内存区块出来让自己的数据能够填上去, 所以你又还得要了解到内存的位址是如何定位的等一系列的问题,然后有人会问了,有没什么东西帮我们去解决这些问题呢,答案是肯定的。那就是操作系统!

3.操作系统

操作系统(Operating System, OS)其实也是一组程序, 这组程序的重点在于管理计算机的所有活动以及驱动系统中的所有硬件。 我们刚刚谈到计算机没有软件什么都做不了,那么操作系统的功能就是让CPU可以开始判断逻辑与运算数值、 让主内存可以开始载入/读出数据与程序码、让硬盘可以开始被存取、让网络卡可以开始传输数据、 让所有周边可以开始运转等等。总之,硬件的所有动作都必须要透过这个操作系统来达成就是了。上面所说的所有功能都是操作系统去完成的,下面我们说一下,操作系统的主要功能!

4.操作系统核心功能

应用程序管理、内存管理、文件系统管理、网络功能实现、硬件驱动管理、实现安全机制等一系列的功能,其中比较最重要的一项就是硬件驱动管理,下面我们就说说,驱动管理。

5.驱动程序管理

驱动程序可以说是操作系统里面相当重要的一环了!不过,硬件可是持续在进步当中的! 包括主机板、显卡、硬盘等等。那么比较晚推出的新的硬件,例如显卡,我们的操作系统当然就不认识! 那操作系统该如何驱动这块新的显卡?为了克服这个问题,操作系统通常会提供一个开发接口给硬件开发商, 让他们可以根据这个接口设计可以驱动他们硬件的驱动程序,如此一来,只要使用者安装驱动程序后, 自然就可以在他们的操作系统上面驱动这块显卡了。如果你想要在某个操作系统上面安装一张新的显卡,那么请要求该硬件厂商提供适当的驱动程序吧! ^_^! 为什么要强调适当的驱动程序呢? 因为驱动程序仍然是依据操作系统而开发的, 所以,给Windows用的驱动程序当然不能使用在Linux的环境下了,嘿嘿,这个大家得注意!

6.应用程序

应用程序是参考操作系统提供的开发接口所开发出来软件,这些软件可以让使用者操作,以实现计算机某个的功能。 举例来说,办公室软件(Office)主要是用来让使用者办公用的;影像处理软件主要是让使用者用来处理影音数据的; 浏览器软件主要是让使用者用来上网浏览用的等等。需要注意的是应用程序是和操作系统相关,如你用windows系统就安装,windows版的应用程序,用linux系统就得用,根据linux的接口开发出来的程序,嘿嘿!

第三部分 :总结

通过上面的第一部分和第二部分基本上把计算机的基本组成和操作系统的基本原理说了一下,给那些刚入行的朋友,回忆一下计算机的基本原理,写的不好,请大家多多指正!下面通过一张图让大家对计算机有个整体的了解。

上面那张图为简图,方便大家理解,再发一张,让大家加深理解!见下图:

原文地址:https://www.cnblogs.com/luyanliang/p/5583728.html