【linux学习】操作系统与应用程序

1. 操作系统(Operating System, OS)

计算机是由一堆硬件所组成的,为了有效率的控制这些硬件资源,于是就有操作系统的产生了。操作系统能够有效率的控制硬件资源的分配,并提供计算机运作所需要的功能。为了要给程序开发人员提供更容易开发软件的环境,操作系统提供一整组系统呼叫接口来给软件开发人员使用。

1.1 操作系统核心(Kernel)

操作系统本质是一组程序, 这组程序的重点在于管理计算机的所有活动以及驱动系统中的所有硬件。操作系统的功能就是让CPU可以开始判断逻辑与运算数值、 让主内存可以开始载入/读出数据与程序码、让硬盘可以开始被存取、让网络卡可以开始传输数据、 让所有周边可以开始运转等等。总之,硬件的所有动作必须要通过操作系统来达成。

核心(Kernel)主要在管控硬件与提供相关的能力。核心程序所放置到内存当中的区块是受保护的, 并且开机后就一直常驻在内存当中。

1.2 系统呼叫(System Call)

请添加图片描述
计算机系统主要由硬件构成,然后核心程序主要在管理硬件,提供合理的计算机系统资源分配(包括CPU资源、内存使用资源等等), 因此只要硬件不同(如x86架构与RISC架构的CPU),核心就得要进行修改才行。而由于核心只会进行计算机系统的资源分配,所以在上头还需要有应用程序的提供,使用者才能够操作系统的。

为了保护核心,并且让程序开发人员比较容易开发软件,因此操作系统除了核心程序之外,通常还会提供一整组开发介面, 那就是系统呼叫层。软件开发工程师只要遵循公认的系统呼叫参数来开发软件,该软件就能够在该核心上运作。 所以你可以发现,软件与核心有比较大的关系,与硬件关系则不大!硬件也与核心有比较大的关系! 至于与使用者有关的,那就是应用程序。

1.3 操作系统与驱动程序

计算机硬件在持续的升级中,例如主机板、显示卡、硬盘等。为了能够驱动新的硬件,操作系统提供了一个开发界面给硬件开发商,在这个界面上,开发商可以设计驱动他们硬件的【驱动程序】。使用者安装驱动程序后,就可以在操作系统上驱动相关硬件了。
在这里插入图片描述

  • 操作系统必须要能够驱动硬件,如此应用程序才能够使用该硬件功能;
  • 一般来说,操作系统会提供开发介面,让开发商制作他们的驱动程序;
  • 要使用新硬件功能,必须要安装厂商提供的驱动程序才行;
  • 驱动程序是由厂商提供的,与操作系统开发者无关。

2. 应用程序

应用程序是参考操作系统提供的开发介面所开发出来软件,这些软件可以让使用者操作,以达到某些计算机的功能利用。 举例来说,办公室软件(Office)主要是用来让使用者办公用的;影像处理软件主要是让使用者用来处理影音数据的; 浏览器软件主要是让使用者用来上网浏览用的等等。

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周兴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值