linux基础篇之操作系统(二)

    我们要启动应用程序的方式有两种,一种是让它在后台自动启动,还有一种是我们按需进行启动的。但是我们要按需启动的话,怎么能够指挥计算机去启动某个程序?怎么让我们的操作系统内核能够接受用户的命令,我要启动一个word,然后能启动起来么?必须给我们的整个操作系统包括它所提供的各种应用程序提供一个特殊的应用程序,叫做什么?很明显叫做shell,是吧?大家注意到是一种在广泛意义上称作shell的应用程序,shell被称为叫壳,它是整个操作系统的外壳,是能够实现接收用户指令,理解用户的命令,并且将它传输给内核,由内核指挥着某个应用程序启动的这么一个界面,所以interface这么一个单词,我们有时候把它翻译成界面,有时候把它翻译成接口,说白了其实指的是同一个意思,希望大家能够理解。
    那我们以后也不加区别的使用界面或者接口,知道是同一个东西就行,shell用来干什么呢?首先要提供一个用户能够跟他进行交互的界面,对不对?其次还要干什么?将用户的指挥行为翻译成计算机可以理解的命令,或者离翻译成内核可以理解的命令,能理解吧?
    比如说,我们在桌面上双击一个图标,点两下鼠标,点两下鼠标以后,为什么能够被解析为打开这么个应用程序呢?这是不是要内核进行指挥了,但是能够提供一个界面,让用户进行双击,并且能够显示一个鼠标的样子,这其实是有界面提供给我们的,shell要提供给我们的,所以没有shell的话,你怎么跟计算机交互,各位想象一下?

    假如你打开你的WINDOWS以后,没有桌面怎么跟它交互?这恐怕就有点困难了,是不是?所以,从广义上来讲,它是包含两种类型的,一种叫图形界面,另一种叫做命令行也叫字符界面,第一种叫做图形用户界面,读作GUI,第二种叫命令行接口,读作CLI。但是我们说过,无论是GUI还是CLI,他们其实也是应用程序,所以在不同的操作系统上,他们可能有提供有不同的替换版本,比如说像GUI,将来我们学到linux的时候,各位应该知道linux上常见的有三种图形界面。比如说GNOME,kde,还有xface,这三种是非常常见的,而在WINDOWS上只有一种,而且是无法替换的,在windows上可以替换主题,而非图形界面,而非shell,这点各位要知道。用WINDOWS的shell,尤其是2008之前它的shell是直接做进内核的。无法替换,没有图形界面,你是没法使用的。而WINDOWS server 2008 提供了power shell这样的接口也可以不用使用图文界面了。而对于CLI命令行接口来讲,在DOS时代,各位应该知道,DOS本身就是命令行的对吗?而且是单任务的,而对于linux而言,shell实在是多了去了,像pshell、cshell、bash shell、zshell等等,有一堆的程序可以使用。
    当然,很多同学可能有这样一个概念,如果说没有图形界面,我们就靠敲命令来来操作一个计算机的话,它的效率是不是非常低啊?事实上,刚好相反,命令行界面的操作速度要远远快于图形界面的操作速度,前提是需要能够灵活使用命令才行,一个命令可以做出来的工作,有时候你需要点几十次鼠标才能完成。而且各位还要建立一个概念,像linux这样的操作系统,它是比WINDOWS更简单的一种系统,只不过,它有一种特性,叫做学习曲线比较陡峭,也就入门是比较困难,但学会了以后,你会发现,这绝对是一个非常聪明的东西,所以有人把他们俩做了一个类比,windows是一个好看的东西,而linux是一个智慧的东西。而且linux比WINDOWS事实上要简单的多得多,更重要的是,它还要稳定的多得多,三年、五年不用重启,十年、八年不用重启也很常见。
而且运行像你刚刚启动的时候一样高效。但你用WINDOWS试一下,用WINDOWS server2003也好,2008也好,你一个星期不重启WINDOWS,服务可能就垮掉了,这对于一些关键性业务来讲,绝对是不可想象的。所以,我们WINDOWS经常用在什么样的场景当中?两种,一种就是个人桌面,另外一种就是那些比较低端的IDC机房里边可能会用。而事实上,对一些非常关键性的业务领域,大多数用的都是WINDOWS。在top 500上有统计,全球跑的最快的前500个计算机90%以上用的都是linux。有一个用WINDOWS的,还是微软公司自己的。

    当然,我们不扯那么远,仍然来说我们的GUI和CLI,这是我们的一种特殊应用程序,各位要明白,它也是应用程序,而且在这样一个接口下,我们所启动的任何应用程序,如果你一旦把这个应用程序关了,那么,在这个接口下所有启动的应用程序,也将会关闭的,比如说,打开WINDOWS桌面,你启动了一个word,而后把桌面关了,注销了,你的word还有吗?所以这些进程之间,这些程序之间,还是有关联关系的,我们通过交互式接口启动程序,它跟这个交互式接口程序本身有着紧密的关系。这就是我们一个操作系统的组成,以及我们为什么要用到操作系统?事实上,操作系统的功能要比我们说到的要复杂一些,比如说,我们简单来说一说内核的功能,让各位有个基本的认识,操作系统内核主要提供哪些功能呢?刚才我们已经看到一个了,叫进程管理,各位记得吧,协调各个进程,还有什么呢?我们需要内存进行管理,还有事实上,将来我们会讲到,它可能还需要提供文件系统,提供网络功能,提供硬件驱动,提供安全机制等等,这些都是内核的功能,你可能没有发现哪一个功能是用来帮你完成某一个特定工作的,所以我们说这是一个通用软件,之前提到过,所谓的批处理系统,当时是我们现代操作系统的前身,那批处理系统是什么?下一篇我们将详细的说说操作系统的由无到有的发展过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值