内容提要:本文详细介绍电脑操作系统,包括计算机及其操作系统的基本概念,操作系统的组成、种类、功能等。这里,“电脑”包括电子计算机、智能手机和其它智能设备的控制核心。
关键词:计算机 电脑 操作系统 windows UNIX linux
(一)电脑及其操作系统的概念
在这里,“电脑”包括电子计算机(Computer)、智能手机和其它智能设备的控制核心。
电子计算机系统由硬件(Hardware)系统和软件(Software)系统组成。
计算机系统的核心技术有两项:计算机芯片,计算机操作系统。
计算机硬件系统的核心是中央处理单元(CPU)。对于普通计算机,CPU组装在一个芯片上。
计算机软件系统是计算机的程序、相应的数据和文档的集合。计算机软件系统包括系统软件、支撑软件、基础软件和应用软件。
在计算机系统,操作系统(Operating System,简称OS)是计算机系统软件的核心。如果把一个计算机系统比喻为一个国家的军队,那么,操作系统是军队的总司令和总后勤部长。
计算机操作系统的定义:计算机操作系统是管理和控制计算机硬件与软件资源的计算机程序的集合。
没有操作系统和其它软件的计算机叫“裸机”。
计算机操作系统是直接运行在裸机上的最基本的系统软件。
计算机的任何软件都在操作系统的指挥、管理下运行。没有操作系统,计算机就是废物。
对于网络和信息安全,操作系统是最重要的核心软件。
从计算机系统的结构来看,操作系统位于底层硬件之上。在操作系统之上,有支撑软件、基础软件和应用软件。
从计算机用户的角度来说,操作系统体现为对用户提供的各项服务。
从设计人员的角度来说,操作系统是指各式各样的系统模块及其与各单元之间的联系。
经过几十年的发展,计算机操作系统已经由开始的简单控制循环体发展成为很复杂、很庞大的计算机软件系统。
全世界常用的电脑操作系统全部是美国的企业和研究机构开发的。
(二)计算机语言与操作系统
要编写计算机程序,必须有程序设计语言。程序设计语言包括机器语言(由2进制数字组成)、汇编语言、高级程序设计语言。
使用广泛的高级程序设计语言包有FORTRAN,BASIC,COBOL,C,C++,JAVA,Python/ target=_blank class=infotextkey>Python,等等。
操作系统是用计算机程序设计语言编写的。
编写操作系统的语言有两种:
其一,汇编语言。用汇编语言编写的操作系统很难被破解,但是语句很多。例如微软公司2013年发布的桌面操作系统Windows 11,其源程序有大约1000万行。
其二,高级程序设计语言,主要是C和Java。用途最广的网络操作系统UNIX和Linux是用C语言编写的。
(三)操作系统的组成部分和内核
本节所述是普通计算机的操作系统。
(A)计算机操作系统的组成部分
计算机操作系统由下列四个部分组成:
一.驱动程序:最底层的、直接控制和监视各类硬件的部分。它们的职责是隐藏硬件的具体细节,并向其它部分提供一个抽象的、通用的接口。
二.内核:操作系统的内核部分通常运行在最高特权级,负责提供基础性、结构性的功能。
三.接口库:是一系列特殊的程序库。它们的职责在于把系统所提供的基本服务包装成应用程序所能够使用的编程接口(API)。这是最靠近应用程序的部分。
四.外围:指操作系统中除以上三类以外的所有其它部分,通常是用于提供特定高级服务的部件。
并不是所有的操作系统都严格包括上述四大部分。例如,在早期的微软Windows中,各部分耦合程度很深,难以区分彼此。而在使用外核结构的操作系统中,则根本没有驱动程序的概念。
操作系统中四大部分的不同布局形成了几种整体结构。常见的结构包括:简单结构,分层结构,微内核结构,垂直结构,以及虚拟机结构。
(B)计算机操作系统的内核结构
内核是操作系统的核心,是最基础的构件。内核的结构有下列四种:
一.单内核(Monolithic kernel),又称为宏内核。单内核结构是操作系统中各内核部件杂然混居的形态。该结构始于1960年代,是操作系统内核与外围分离时的最初形态。
二.微内核(Microkernel),又称为微核心。微内核结构是1980年代产生的,其结构性部件与功能性部件是分离的。
三.混合内核(Hybrid kernel),像微内核结构,只不过它的组件更多地在核心中运行,以获得更快的执行速度。
四.外内核(Exokernel),其设计理念是尽可能地减少软件的抽象化。这使得开发者可以专注于硬件的抽象化。
大部分常用操作系统采用单内核结构,例如大部分的UNIX、Linux,以及Windows(微软声称Windows NT是基于改良的微内核架构的)。有一些嵌入式操作系统使用外核。
(四)电脑操作系统的种类
电脑操作系统的种类繁多。各种设备安装的操作系统从简单到复杂,可分为智能卡(IC卡)操作系统,传感器节点操作系统,嵌入式操作系统,实时操作系统,桌面微型机操作系统,网络操作系统,大型机、巨型机操作系统,等等。
对操作系统进行分类,有两种方式:一是根据操作系统的功能分类,二是根据操作系统的应用领域分类。
(A)根据操作系统的功能分类
根据操作系统的功能,分别有实时系统、批处理系统、分时系统、网络操作系统等。
一.实时系统
实时系统主要是指系统可以迅速地对外部命令进行响应,在对应的时间里处理问题,协调系统工作。各种计算机控制系统的操作系统都是实时系统。
二.分时系统
在分时系统,多个用户共同使用一台主机,满足用户的人机交互需要。分时系统具有多路性、独立性、交互性、及时性等优点。这是主机-用户-终端架构的系统。早期的大型机操作系统都是这种架构的分时系统。IBM公司的OS/360就是这种系统。
三.批处理系统
批处理系统出现在20世纪60年代。多个用户在终端提交任务,批处理系统按照预定的规则分期、分批处理各项任务。批处理系统能够提高资源的利用率和系统的吞吐量。IBM公司的OS/360也是一种批处理系统。
四.网络操作系统
网络操作系统又称网络服务器,是向网络计算机提供服务的特殊的操作系统。网络系统分为服务器和客户端。服务器的主要功能是管理服务器和网络上的各种资源和网络设备的共用。客户端有着能接收应用服务器所传递的信息的功能。
(B)根据操作系统的应用领域分类
根据操作系统的应用领域划分,主要有三种:桌面操作系统、服务器操作系统和嵌入式操作系统。
一.桌面操作系统
桌面(Desktop)计算机都是微型机,包括个人计算机(PC)、笔记本电脑等。
桌面操作系统主要用于微型机上。微型计算机市场从硬件架构上来说主要分为两大阵营,PC机与mac机;从软件上来说主要分为两大类,Windows操作系统和类UNIX操作系统:
1、微软公司Windows操作系统:Windows XP,Windows ME,Windows 11,等等。
2、类UNIX操作系统:Mac OS X,以及Linux各种发行版(如RedHat、Debian、Ubuntu、openSUSE,Fedora等)。
Windows占有桌面操作系统的约90%市场份额。
二.服务器操作系统
服务器操作系统一般指的是安装在大中型计算机和功能强大的微型机的操作系统,比如Web服务器、应用服务器和数据库服务器等。服务器操作系统主要有下列三大类:
1、UNIX系列:FreeBSD,Oracle Solaris,IBM AIX,HP-UX,等等。
2、Linux系列:GNU/Linux,RedHat Linux,Debian,Ubuntu,等等。
Linux是自由和开放源代码的电脑操作系统。Linux是1991年10月5日(这是第一次正式向外公布的时间)由芬兰赫尔辛基大学研究生Linus Torvalds(林纳斯·托瓦兹)开发的。他后来在美国定居,加入了美国国籍。
目前世界上存在着300多个Linux发行版(distribution)。它们全都以开源Linux为基础,使用了Linux内核。
Linux占有服务器市场的约70%份额。
3、Windows Server系列:Windows NT,Windows Server 2021。
此外,还有加拿大Novell公司开发.NETware。
三.移动通讯操作系统
移动通讯操作系统主要用于智能手机和平板电脑。
智能手机实质上是一种微型电脑,不是计算机,因为手机没有外部设备。
各种智能手机都使用移动通讯操作系统。全世界的手机使用的操作系统主要是谷歌公司的Android(安卓)和苹果公司的IOS。
华为公司从2004年开始,用15年时间,开发了具有自主知识产权的操作系统“鸿蒙(HarmonyOS)”。2019年8月9日,在东莞举行华为开发者大会上,华为公司正式发布操作系统“鸿蒙”。鸿蒙系统适用于手机、平板电脑和智能设备。
四.嵌入式操作系统
嵌入式系统是以应用为中心,以计算机技术为基础,能够根据用户需求(功能、可靠性、成本、体积、功耗、环境等)灵活裁剪软件硬件模块的专用电脑系统。
嵌入式系统由硬件和软件组成。嵌入式系统的软件包括操作系统、中间件和应用程序。嵌入式系统的硬件包括信号处理器、存储器、通信模块(输入输出接口)等。
嵌入式操作系统(Embedded Operating System,EOS)是指用于嵌入式系统的操作系统。该系统负责嵌入式系统的全部软件、硬件资源的分配,任务调度,控制、协调系统的活动。
嵌入式系统广泛地应用在生活、生产的各个方面,从便携式设备到大型固定设施,如手机、平板电脑、数码相机、家用电器、医疗设备、交通灯、航空电子设备和工厂控制设备,等等。复杂的嵌入式系统安装有实时操作系统。
某些情况下,嵌入式系统的OS(操作系统)指的是一个内置了固定应用软件的多功能程序。在许多最简单的嵌入式系统中,所谓的OS就是指其上唯一的应用程序。
嵌入式操作系统大多数是实时操作系统(RTOS)。
国际上广泛使用的嵌入式操作系统有µC/OS-III,VxWorks,嵌入式Linux,Windows Embedded,等等。
(五)计算机操作系统的功能
本节所说的计算机是大中小型和微型计算机,不包括手机、智能设备和嵌入式系统。
计算机操作系统的基本功能是负责管理与配置内存,决定系统资源供需的先后次序,控制输入与输出设备,操作网络与管理文件系统。
计算机系统的资源可分为设备资源和信息资源两大类。
设备资源:指的是组成计算机的硬件设备,如中央处理器,主存储器,磁盘存储器,磁带存储器,光盘,显示器,键盘输入设备和鼠标,打印机,等等。
信息资源:指的是存放于计算机内的各种数据,包括数学数据、文字文件、程序库、知识库,以及各种软件。
有些操作系统很简单,例如智能设备的操作系统、嵌入式系统的操作系统。有些操作系统很复杂,例如网络操作系统、超级计算机的操作系统。
计算机操作系统主要包括以下五个方面的功能:
一.进程管理
进程管理的任务是进程调度。在单用户单任务的情况下,处理器仅为一个用户的一个任务所独占,进程管理的工作十分简单。但在多道程序或多用户的情况下,组织多个作业或任务时,就要解决处理器的调度、分配和回收等问题。处理器可能是一个,也可能是多个。不同类型的操作系统将针对不同情况采取不同的进程调度策略
二.存储管理
存储管理包括存储分配,存储共享,存储保护 ,以及存储扩张。存储管理的主要任务是:分配内存空间,保证各作业占用的存储空间不发生矛盾,并使各作业在自己所属存储区中不互相干扰。
三.设备管理
负责管理各类外围设备,包括分配、启动和故障处理等。当用户使用外部设备时,必须提出要求,待操作系统进行统一分配后方可使用。当用户的程序运行到要使用某外设时,由操作系统负责驱动外设。操作系统还具有处理外设中断请求的能力。
四.文件管理
文件管理是指操作系统对信息资源的管理,包括文件存储空间的管理,目录管理 ,文件操作管理,以及文件保护。在操作系统中,将负责存取的管理信息的部分称为文件系统。文件是在逻辑上具有完整意义的一组相关信息的有序集合。每个文件都有一个文件名。文件管理支持文件的存储、检索和修改等操作,并且有文件的保护功能。
五.作业管理
每个用户请求计算机系统完成的一个独立的操作称为一个作业。作业管理包括作业的输入和输出,作业的调度与控制(根据用户的需要控制作业运行的步骤)。