计算机操作系统-操作系统的定义

计算机系统的层次结构 用户 应用程序 操作系统 纯硬件:CPU、RAM、ROM 其中,操作系统:从操作系统层往两侧看:负责管理协调硬件、软件等计算机资源的工作 从上往下看:为上层的应用程序和用户提供简单易用的服务 从下往上看:操作系统系统软件,而不是硬件定义OperatingSystem是指控制和管理整个计算机系统的硬件和软件资源,并合理地组…

大家好,又见面了,我是你们的朋友全栈君。

计算机系统的层次结构

  • 用户

  • 应用程序

  • 操作系统

  • 纯硬件:CPU、RAM、ROM

其中,操作系统:

  • 从操作系统层往两侧看:负责管理协调硬件、软件等计算机资源的工作
  • 从上往下看:为上层的应用程序和用户提供简单易用的服务
  • 从下往上看:操作系统系统软件,而不是硬件

定义

Operating System是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境。他是计算机系统中最基本的系统软件。

操作系统的功能和目标

  • 作为系统资源的管理者(从操作系统层向两侧看)

进程

是一个程序的执行过程。执行前需要将该程序放到内存中才能被CPU处理

以用QQ和朋友进行视频聊天为例:

  • step1:在各个文件夹中找到QQ的安装位置:操作系统需要将各种文件有组织地存放起来-文件管理
  • step2:双击打开QQ.exe可执行文件:操作系统需要把程序的相关数据放入内存中-内存管理
  • step3:QQ程序正常运行:对应的进程被处理器CPU处理,要等待资源的分配后才可被运行-处理机管理
  • step4:开始和朋友进行视频聊天:需要把摄像头设备分配给进程,当进程使用完摄像头后要把这个设备回收-设备管理

目标

安全高效

 

  • 作为用户和计算机硬件之间的接口(自下往上看)

操作系统需要提供的功能或者说用户接口

  • 命令接口:1.联机命令接口 2.脱机命令接口
  • 程序接口
  • GUI(图形用户界面)

 

命令接口

1.1联机命令接口,又称交互式命令接口

用户说一句,操作系统做一句

1.2脱机命令接口,又称批处理命令接口

用户说一堆,操作系统做一堆

相比于程序接口,命令接口是可以被用户直接使用的

例如在terminal下输入指令,可以得到反馈,这就是交互的体现,而这些指令是可以直接被用户所使用的

程序接口

例如在windows操作系统下,常见.dll文件。程序员在程序中调用user32.dll文件即可实现窗口创建等功能(该调用过程即为系统调用)。只能通过用户程序间接地使用。

程序接口(仅运行用户通过程序间接使用):由一组系统调用组成(程序接口=系统调用=系统调用指令=广义指令)

GUI图形用户界面(Graphical User Interface)

用户可以使用形象的图形界面进行操作,而不需要记忆复杂的命令、参数

换言之,就是将复杂的操作指令可视化,使用图形操作的方式来表示操作指令的执行

 

  • 作为最接近硬件的层次(从上往下看)

需要提供的功能和目标

实现对硬件机器的拓展

没有任何软件支持的计算机称为裸机。在裸机上安装的操作系统可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器。

通常把覆盖了软件的机器称为扩充机器,又称为虚拟机

类比

硬件:锤子、木材、钉子…

操作系统:优秀的工匠

操作系统对硬件机器的拓展:通过优秀的工匠,这些简单的原料可以组织成房子、独木舟…普通用户可以直接使用工匠提供的房子、独木舟,而无需关系这些东西在底层是如何组织起来工作的

换言之,操作系统对硬件机器的拓展,实际上就是操作系统对硬件进行调用,封装得到直接对硬件进行调用的功能给用户

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/129065.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • xshell安装步骤_Xshell6

    xshell安装步骤_Xshell6开发环境部署目的:利用ssh远程登陆服务器(在windows系统下远程连接linux)下载XSHELL7XSHELL7下载网址:https://www.netsarang.com/zh/xshell/点击“下载”点击“免费授权界面”以上是XSHELL7的下载过程然后找到右键“以管理员身份运行”一上来会出现这种错误,先点击“是(Y)”过程中一直点击“下一步”,以及“我同意”类似的,然后选择个安装路径就可以没啥特殊的。到最后一切顺利的话会显示下面这样的界面一般通向成功的道

    2022年9月9日
    0
  • Android中Calendar类的用法总结[通俗易懂]

    Android中Calendar类的用法总结[通俗易懂]Calendar是Android开发中需要获取时间时必不可少的一个工具类,通过这个类可以获得的时间信息还是很丰富的,下面做一个总结,以后使用的时候就不用总是去翻书或者查资料了。

    2022年9月23日
    1
  • RPM 卸载参数[通俗易懂]

    RPM 卸载参数[通俗易懂]rpm卸载参数–test:卸载测试 –nodeps:不检查依赖–noscripts:不执行脚本程序–notriggers:不执行触发程序–justdb:仅修改数据库–force强制 RPM卸载软件包,并不是简单地将原来安装的文件逐个删除,那样做的话,可能会出现这样或那样的问题。如,A软件包依靠B软件包做某些工作,若B软件包卸载了,则A软件包就

    2022年9月22日
    0
  • Django(2)python虚拟环境virtualenvwrapper[通俗易懂]

    Django(2)python虚拟环境virtualenvwrapper[通俗易懂]python虚拟环境虚拟环境(virtualenvironment),它是一个虚拟化,从电脑独立开辟出来的环境。通俗的来讲,虚拟环境就是借助虚拟机来把一部分内容独立出来,我们把这部分独立出来的东西

    2022年7月29日
    3
  • 漏洞扫描 渗透测试_什么是渗透

    漏洞扫描 渗透测试_什么是渗透渗透测试阶段信息收集完成后,需根据所收集的信息,扫描目标站点可能存在的漏洞,包括SQL注入漏洞、跨站脚本漏洞、文件上传漏洞、文件包含漏洞及命令执行漏洞等,然后通过这些已知的漏洞,寻找目标站点存在攻击的入口。那么今天我们就介绍几款常用的WEB应用漏洞扫描工具。一、AWVSAcunetixWebVulnerabilityScanner(简称AWVS)是一款知名的网络漏洞扫描工具,它通过网络爬虫测试你的网站安全,检测流行安全漏洞。在漏洞扫描实战过程中,一般会首选AWVS,因为这个能扫描出来的漏洞很多,而

    2022年9月12日
    0
  • grid web_DataGrid

    grid web_DataGrid首先安装Infragistics.NetAdvantage.for.ASP.NET.2007.Vol.2,然后在选择项中添加UltraWebGrid,使用方法如下:1、添加“总计”值绑定完数据后,添加如下代码UltraWebGrid1.Rows.Add();UltraWebGrid1.Rows.Add();…

    2022年10月6日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号