初学者必备的操作系统知识

strongerHuang 2020-06-17 00:00
关注、 星标公众,不错过精彩内容

作者:Cyapirear

来源:华为开发者论坛


0 1

操作系统是什么

操作系统(Operation System,OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操作系统也是用户与计算机硬件系统之间的接口,同时也是计算机硬件和其他软件的接口。


0 2


操作系统发展历程

  • 手工阶段

  • 单道批处理系统

  • 多道批处理系统

  • 分时操作系统

  • 实时操作系统

  • 网络操作系统和分布式操作系统,两者的不同之处在于:

  • 在分布式操作系统中,若干台计算机相互协同完成同一任务。

  • 在网络操作系统中,每台计算机都是相互独立的,它们并不能相互协同完成同一任务。


03

操作系统中的基本概念

  • CPU(Central Processing Unit,中央处理器)

是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心   (Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
  • 进程

可以认为是程序执行时的一个实例。进程是系统进行资源分配的独立实体,且每个进程拥有独立的地址空间。比如打开一个浏览器就是启动一个浏览器进程,打开两个记事本就启动了两个记事本进程。

  • 进程控制块(ProcessControl Block,PCB

保存运行期间进程的数据,PCB是进程存在的唯一标志。进程=程序+数据+PCB。

  • 线程

    可以理解为“轻量级进程”,是CPU调度的基本单元,也是程序执行流的最小单元,由线程ID、程序计数器、寄存器集合和堆栈组成。在一个进程内部,可能要同时干多件事,这时就需要同时运行多个“子任务”,我们可以把这些“子任务”称为线程。线程属于进程,是进程的一个实体。如果把进程比喻为工厂,线程就相当于工厂里的各个流水线。

  • 线程控制块(ThreadControl Block,TCB)

保存运行期间线程的数据,TCB是线程存在的唯一标志。

  • 线程和进程的区别

进程是资源分配和调度的一个独立单元,而线程只是CPU调度的基本单元。线程自己不拥有系统资源,但它可以与同属一个进程的其他线程共享进程所拥有的全部资源(寄存器、堆栈、上下文)。一个进程可以创建和撤销另一个线程,同一个进程中的多个线程之间可以并发执行。一个进程至少包括一个线程。进程结束后它拥有的所有线程都将销毁,而线程的结束不会影响同个进程中的其他线程的结束。

  • 多线程

指从软件或者硬件上实现多个线程并发执行的技术。
  • 并发

两个或多个事件在同一时间内发生,在单CPU系统中,这些事件分时交替执行。

  • 并行

两个或多个事件在同一时刻发生。在多处理器中,进程可以交替执行,还能重叠执行,实现并行处理。

  • 临界资源

    一次仅允许一个进程使用的资源,如 打印机。

  • 临界区

    每个进程中访问临界资源的那段代码。

  • 互斥

    进程之间访问临界资源时相互排斥的现象。

  • 同步

进程之间 存在依赖关系,一个进程结束的输出作为另一个进程的输入。具有同步关系的一组并发进程之间发送的信息称为消息。
  • 异步

    和同步相对,同步是顺序执行,而异步是彼此独立,在等待某个事件的过程中继续做自己的事,不需要等待这一事件完成后再工作。实现异步可以采用多线程技术或者交给其他进程来处理。

  • 中断

    当出现需要时,CPU暂停执行当前程序,转而执行新程序的过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的事务。此时,CPU暂时中止当前程序的执行转而处理这个事务,这个过程就叫做中断。


04

CPU的工作状态

大多数计算机系统将CPU执行状态分为管态与目态。

  • 管态

supervisor(管理者)mode,又叫特权态、系统态或者内核态。CPU在管态下可以执行指令系统的全集。如果程序处于管态,则该程序就可以访问计算机的任何资源,即它的资源访问权限不受限制。通常,操作系统在管态下运行。
  • 目态

object(目标)mode又叫常态或用户态。处于目态时,程序只能执行非特权指令,不能直接使用系统资源,也不能改变CPU的工作状态,并且只能访问这个用户程序自己的存储空间。
  • 为什么叫object mode呢?

通常CPU会执行两种不同性质的程序:一种是操作系统内核程序;另一种是用户自己写的程序或系统外层的应用程序。

对操作系统而言,这两种程序的作用不同,前者是后者的管理者,因此“管理程序”要执行一些特权指令,而“被管理程序”出于安全考虑不能执行这些指令。因为管理者需要管理它,它就是管理者的管理目标,所以就叫object mode。

  • 目态(用户态)→管态(内核态)

从用户态切换到内核态,可以通过系统调用、异常、外部设备的中断这三种方式实现。

  • 系统调用

这是用户态进程主动要求切换到内核态的一种方式,用户态进程通过系统调用申请使用操作系统提供的服务程序完成工作。系统调用机制的核心是使用了操作系统为用户开放的中断。

  • 异常

当CPU在执行用户态程序时,发生了某些事先不可知的异常,这时就会切换到处理此异常的内核程序中,也就转到了内核态。

  • 外部设备的中断

当外部设备完成用户请求操作后,会向CPU发出相应的中断信号,这时CPU会暂停执行下一条即将要执行的指令,转而去执行与中断信号对应的处理程序(该程序在内核态),如果先前执行的指令是用户态下的程序,那么这个转换的过程自然也就发生了由用户态到内核态的切换。例如,硬盘读写操作完成,系统会切换到硬盘读写的中断处理程序中,执行后续的操作。


05

操作系统的特征

  • 并发

    两个或者多个程序在同一时间内发生。

  • 共享

    系统中的资源可供内存中多个并发执行的进程共同使用。

  • 虚拟

    把一个物理上的实体变为若干个逻辑上的对应物。

  • 异步

    在多道程序环境下,允许多个进程并发执行,但因资源有限,进程的执行不是一贯到底,而是走走停停,以不可预知的速度向前推送,这就是进程的异步性。


免责声明: 本文素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。

推荐阅读:
几种常见的校验算法
微软发布更强的 Terminal 2.0路线图
分享一篇专治MCU各种 HardFault 的库

关注 微信公众号『strongerHuang』,后台回复“1024”查看更多内容,回复“加群”按规则加入技术交流群。


长按前往图中包含的公众号关注

strongerHuang 作者黄工,高级嵌入式软件工程师,分享嵌入式软硬件、物联网、单片机、开发工具、电子等内容。
评论 (0)
  • 在科技浪潮奔涌的当下,云计算领域的竞争可谓是如火如荼。百度智能云作为其中的重要参与者,近年来成绩斐然。2024年,百度智能云在第四季度营收同比增长26%,这样的增速在行业内十分惹眼。回顾全年,智能云业务的强劲增长势头也十分明显,2024年第一季度,其收入达到47亿元,同比增长12%;第二季度营收51亿元,同比增长14%。从数据来看,百度智能云在营收方面一路高歌猛进,展现出强大的发展潜力。然而,市场对百度智能云的表现似乎并不完全买账。2024年,尽管百度智能云数据亮眼,但百度股价却在震荡中下行。在
    用户1742991715177 2025-04-06 20:25 61浏览
  • 在影像软的发展历程中,美图曾凭借着美图秀秀等一系列产品,在“颜值经济”的赛道上占据了领先地位,成为了人们日常生活中不可或缺的一部分,也曾在资本市场上风光无限,2016 年上市时,市值一度超过46亿美元,备受瞩目。 然而,随着市场的不断发展和竞争的日益激烈,美图逐渐陷入了困境。商业模式单一,过度依赖在线广告收入,使得其在市场波动面前显得脆弱不堪;多元化尝试,涉足手机、电商、短视频、医美等多个领域,但大多以失败告终,不仅未能带来新的增长点,反而消耗了大量的资源。更为严峻的是,用户流失问题日
    用户1742991715177 2025-04-05 22:24 61浏览
  •   安全生产预警系统作为现代工业与安全管理的重要组成部分,正以前所未有的技术引领力,创新性地塑造着未来的安全管理模式。这一系统通过集成多种先进技术,如物联网、大数据、人工智能、云计算等,实现了对生产环境中潜在危险因素的实时监测、智能分析与及时预警,为企业的安全生产提供了坚实的技术保障。   技术引领:   物联网技术:物联网技术使得各类安全监测设备能够互联互通,形成一张覆盖全生产区域的安全感知网络。传感器、摄像头等终端设备实时采集温度、压力、气体浓度、人员位置等关键数据,为预警系统提供丰富的
    北京华盛恒辉软件开发 2025-04-05 22:18 52浏览
  • 【拆解】+南孚测电器拆解 之前在天猫上买了一盒南孚电池,他给我送了一个小东西—测电器。今天我们就来拆解一下这个小东西,看看它是怎么设计和工作的。 三颗指示灯显示电池剩余电量。当点亮3颗LED时,则表示点亮充足。当点亮2颗LED时,则表示还能用。当点亮1颗LED时,表示点亮地建议更换,当无法点亮LED时,则表示没电了。外壳上还印有正负极,以免用户将电池放反。 这个小东西拆解也很方便,一个螺丝刀稍微撬几下。外壳就下来了,它是通过卡扣连接。 开盖后,测电线路板清晰呈现在眼前。 让我们看看小小的线路板有
    zhusx123 2025-04-05 15:41 50浏览
  • 及时生产 JIT(Just In Time)的起源JIT 起源于 20 世纪 70 年代爆发的全球石油危机和由此引发的自然资源短缺,这对仰赖进口原物料发展经济的日本冲击最大。当时日本的生产企业为了增强竞争力、提高产品利润,在原物料成本难以降低的情况下,只能从生产和流通过程中寻找利润源,降低库存、库存和运输等方面的生产性费用。根据这种思想,日本丰田汽车公司创立的一种具有特色的现代化生产方式,即 JIT,并由此取得了意想不到的成果。由于它不断地用于汽车生产,随后被越来越多的许多行业和企业所采用,为日
    优思学院 2025-04-07 11:56 79浏览
  • 在追求环境质量升级与产业效能突破的当下,温湿度控制正成为横跨多个行业领域的核心命题。作为环境参数中的关键指标,温湿度的精准调控不仅承载着人们对舒适人居环境的期待,更深度关联着工业生产、科研实验及仓储物流等场景的运营效率与安全标准。从应用场景上看,智能家居领域要求温湿度系统实现与人体节律的协同调节,半导体洁净车间要求控制温湿度范围及其波动以保障良品率,而现代化仓储物流体系则依赖温湿度的实时监测预防各种产品的腐损与锈化。温湿度传感器作为实现温湿度监测的关键元器件,其重要性正在各行各业中凸显而出。温湿
    华普微HOPERF 2025-04-07 10:05 66浏览
  • 【拆解】+沈月同款CCD相机SONY DSC-P8拆解 这个清明假期,闲来无事,给大伙带来一个老古董物品的拆解--索尼SONY DSC-P8 CCD相机。这个产品是老婆好几年前在海鲜市场淘来的,由于显示屏老化,无法正常显示界面了,只有显示背光。但是这也无法阻止爱人的拍照。一顿盲操作依旧可以拍出CCD古董相机的质感。如下实拍: 由于这个相机目前都在吃灰。我就拿过来拆解,看看里面都是怎样个设计,满足下电子爱好者的探索。 首先给大伙展示下这台老相机的全貌。正视图  后视图 
    zhusx123 2025-04-06 17:38 78浏览
  • 引言:小型化趋势下的语音芯片需求随着消费电子、物联网及便携式设备的快速发展,产品设计对芯片的小型化、高集成度和低功耗提出了更高要求。厂家凭借其创新的QFN封装技术,推出WTV系列(如WTV380)及WT2003H系列语音芯片,以超小体积、高性能和成本优势,为紧凑型设备提供理想解决方案。产品核心亮点1. QFN封装技术赋能超小体积极致尺寸:WTV380采用QFN32封装,尺寸仅4×4毫米,WT2003H系列同样基于QFN工艺,可满足智能穿戴、微型传感器等对空间严苛的场景需求。高密度集成:QFN封装
    广州唯创电子 2025-04-07 08:47 57浏览
  • 引言:POPO声的成因与影响在语音芯片应用中,WT588F08A作为一款支持DAC+功放输出的高集成方案,常因电路设计或信号处理不当,在音频播放结束后出现POPO声(瞬态噪声)。这种噪声不仅影响用户体验,还可能暴露电路设计缺陷。本文将基于实际案例,解析POPO声的成因并提供系统化的解决方案。一、POPO声的根源分析1. 功放电路状态切换的瞬态冲击当DAC输出的音频信号突然停止时,功放芯片的输入端若处于高阻态或无信号状态,其内部放大电路会因电源电压突变产生瞬态电流,通过喇叭表现为POPO声。关键因
    广州唯创电子 2025-04-07 09:01 75浏览
  • 医疗影像设备(如CT、MRI、超声诊断仪等)对PCB的精度、可靠性和信号完整性要求极高。这类设备需要处理微伏级信号、高频数据传输,同时需通过严格的EMC/EMI测试。制造此类PCB需从材料选择、层叠设计、工艺控制等多维度优化。以下是关键技术与经验分享。 1. 材料选择:高频与生物兼容性优先医疗影像设备PCB常采用 Rogers RO4000系列 或 Isola FR4高速材料,以降低介电损耗并保证信号稳定性。例如,捷多邦在客户案例中曾为某超声探头厂商推荐 Rogers RO4350B
    捷多邦 2025-04-07 10:22 68浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦