操作系统的主要功能:
1、进程管理
不管是常驻程序或者应用程序,他们都以进程为标准运行单位。当年运用冯·诺伊曼结构建造计算机时,每个中央处理器最多只能同时运行一个进程。
2、内存管理
操作系统的存储器管理提供查找可用的记忆空间、配置与释放记忆空间以及交换存储器和低速存储设备的内含物等功能。此类又被称做虚拟内存管理的功能大幅增加每个进程可获得的记忆空间。
3、磁盘与文件系统
操作系统拥有许多种内置文件系统。例如Linux拥有非常广泛的内置文件系统,如ext2、ext3、ext4、ReiserFS、Reiser4、GFS、GFS2、OCFS、OCFS2、NILFS与Google文件系统。Linux也支持非原生文件系统,例如XFS、JFS、FAT家族与NTFS。
4、网络
许多现代的操作系统都具备操作主流网上通信协议TCP/IP的能力。也就是说这样的操作系统可以进入网上世界,并且与其他系统分享诸如文件、打印机与扫描仪等资源。
5、安全
操作系统提供外界直接或间接访问数种资源的管道,例如本地端磁盘驱动器的文件、受保护的特权系统调用、用户的隐私数据与系统运行的程序所提供的服务。
6、内部通讯安全
内部信息安全可视为防止正在运行的程序任意访问系统资源的手段。大多操作系统让普通程序可直接操作计算机的CPU,所以产生了一些问题,例如怎样把可如操作系统一样处理事务、运行同样特殊指令的程序强迫停止,毕竟在此情境下,操作系统也只是另一个平起平坐的程序。
为通用操作系统所生产的CPU通常于硬件层级上实践了一定程度的特殊指令保护概念。通常特权层级较低的程序想要运行某些特殊指令时会被阻断,例如直接访问像是硬盘之类的外部设备。
7、用户界面
今日大部分的操作系统都包含图形用户界面(GUI)。有几类较旧的操作系统将图形用户界面与内核紧密结合,例如最早的Windows与Mac OS实现产品。
8、驱动程序
所谓的驱动程序(Device driver)是指某类设计来与硬件交互的计算机软件。通常是一设计完善的设备交互接口,利用与此硬件连接的计算机汇排流或通信子系统,提供对此设备下令与接收信息的功能;以及最终目的,将消息提供给操作系统或应用程序。
参考资料来源:百度百科-操作系统
随着现代计算机的运行环境越来越复杂,起调度管理作用的管理程序走向了操作系统。除了做以处理机为主要对象的管理外,还进行存储空间的分配与调度,对各种外存文件进行调度管理、外部设备分配调度管理、数据通信的控制管理等。
操作系统主要有下述功能:
处理机管理。主要是作业调度管理和进程调度管理。作业调度管理程序的职能是从一批已提交给计算机的后备作业中,按照一定的算法挑选作业,使其转入运行状态,一旦作业完成,则把该作业撤消。转入运行状态的作业,意味着作业进程已建立,该作业已具备占有处理机的权利。至于什么时候才能真正占有处理机进入运行,则取决于进程管理程序的调度。如何在不发生冲突的前提下,既能有效地完成所有已提交的作业,同时又使处理器发挥最大的效能,使处理器空闲时间减至最少,这就是处理器管理要解决的主要问题。
存储管理。存储管理程序负责为进入运行状态的作业分配适当的内存空间。由于作业的大小不同,内存分配表和空白区的大小及部位在运行过程中不断地变化,因此,这种内存分配必须是动态的。存储管理程序还承担存储保护任务。由于在同一时间内,内存中可能储存着许多不同作业的数据和程序,还有一些系统软件也占用一定的内存空间,为了防止因各程序互相越界访问而发生混乱,必须采取相应的内存保护措施。存储管理程序还负责存储空间的扩充。一种是虚拟存储方法。当实际地址空间小于直接寻址能力时,可以把超出实际地址空间的部分放在磁盘或磁带上,使用户看起来觉得:计算机可直接寻址的逻辑地址空间有多大,用户可以支配的存储空间就有多大。另一种是计算机直接寻址能力小,而实际的内存容量可以扩大。这时就是如何把逻辑地址空间映射到实际地址空间的问题了。
输入/输出管理。由于计算机的外部设备种类和数量很多,为了避免或减少中央处理机因等待那些速度较慢的外部设备操作而占用的时间,在中央处理机引入了与外部设备打交道的通道和中断技术,以提高计算机系统效率。由于输人/输出设备工作速度比中央处理器慢得多,当第二次请求启动通道输入或输出一批数据时,第十批数据可能还没有处理完,此时通道正处于繁忙状态。特别是在多道程序环境下,更容易发生上述设备冲突情况。解决好这个问题,是输入/输出管理程序的主要责任之一。
文件管理。各种数据,各种程序通常是以文件的形式有组织地存放在磁盘、磁带等存储介质上的。当需要某个文件时,可由操作系统中的文件管理程序调用。文件管理程序还可用来创建和删除文件。为了保证文件使用的安全,防止滥用和失密,在使用文件时,还必须有相应的保护和保密措施,这也是文件管理程序的责任。
本回答被提问者采纳