【Linux】操作系统及进程概念

本文介绍了冯诺依曼体系结构,强调了内存作为CPU交互的唯一媒介。接着阐述了操作系统的角色,以及其通过系统调用和库函数管理硬件资源。接着详细探讨了进程的概念,包括进程控制块(PCB)和Linux下的task_struct结构,以及如何查看和管理进程。最后,通过示例介绍了系统调用如fork()在创建进程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大家好我是沐曦希💕


一、冯诺依曼体系结构

我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。
在这里插入图片描述

计算机包含输入设备、输出设备、存储器、中央处理器(运算器+控制器)
至目前,我们所认识的计算机,都是有一个个的硬件组件组成。

输入设备:键盘、磁盘、网卡、鼠标、摄像头等
输出设备:显示器、磁盘、网卡、各种打印机等
存储器:内存(掉电易失)只能作为临时存储
运算器&&控制器:CPU

磁盘属于外存,具有永久性存储能力。
CPU作为计算机的核心,负责计算,速度最快,寄存器次之,内存在次之,而外设是较慢的。
在这里插入图片描述
但是CPU只能被动接受别人的指令和别人的数据,那么CPU必须先认识别人的指令(每个CPU被制作都有自己的指令集),才能执行别人的指令,起到计算别人数据的目的。

上面说到CPU的速度很快,而外设的速度很慢,那么CPU直接从外设拿数据效率就降低了,所以数据是从外设加载到内存中的,然后CPU再从内存中读取数据,CPU处理完的数据再返回给内存(产生了缓存),数据再从内存中加载到外设,这大大提高的数据的处理。

所以CPU再读取和写入时候,在数据层面只和内存打交道,为了整体效率。

内存从外设读取和写入数据的过程成为I/O过程(input/output)

对于冯诺依曼体系,我们应该注意:

这里的存储器指的是内存
在数据层面不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备)
CPU不和外设直接打交道,和内存直接打交道。外设(输入或输出设备)要输入或者输出数据,也只能写入内存或者从内存中读取。
所有外设有数据需要载入,只能载入到内存中,内存写出也一定是写到外设中
简单来说,就是所有设备都只能直接和内存打交道,提高整机效率

所以程序的运行必须要加载到内存,CPU执行的代码访问数据,只能从内存中读取(这也是体系结构规定的)。

对冯诺依曼的理解,不能停留在概念上,要深入到对软件数据流理解上,请解释,从你登录上qq开始和某位朋友聊天开始,数据的流动过程。 从你打开窗口,开始给他发消息,到他的到消息之后的数据流动过程。如果是在qq上发送文件呢?

  • 发送消息 --> 接受消息 的数据流动:A 的键盘 --> A的内存 --> A的CPU (加密) --> A的网卡 --> B的网卡 --> B的内存 --> B的CPU (解密) --> B的显示器;
  • 发送文件 --> 接受文件 的数据流动:A 的磁盘 --> A的内存 --> A的CPU (加密) --> A的网卡 --> B的网卡 --> B的内存 --> B的CPU (解密) --> B的磁盘;

二、操作系统OS

  • 是什么

操作系统是一个进行软硬件资源管理的软件,操作系统包含了进程管理,文件管理,内存管理,驱动管理。
任何计算机系统都包含一个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:

内核(进程管理,内存管理,文件管理,驱动管理)
其他程序(例如函数库, shell程序等等)

  • 为什么

操作系统通过合理的管理软硬件资源(手段),为用户提供良好的,稳定的,高效的,安全的执行环境(目的)。

在整个计算机软硬件架构中,操作系统的定位是: 一款纯正的“搞管理”的软件

  • 怎么办
  1. 管理者不需要与被管理者直接交互,依旧能够很好的将被管理者管理起来

比如在学校学生是被管理者,校长是管理者。管理者不需要和被管理者直接交互,依旧能够把被管理者对象管理起来。

评论 62
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

沐曦希

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

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

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

打赏作者

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

抵扣说明:

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

余额充值