Linux:进程概念(操作系统Operating System)

前文讲解了冯诺依曼体系结构,这篇博客我们就来探索一下操作系统(Operating System),话不多说,直接开始

1.概念

任何计算机系统都包含⼀个基本的程序集合,称为操作系统(OS)。笼统的理解,操作系统包括:

• 内核(进程管理,内存管理,⽂件管理,驱动管理)

• 其他程序(例如函数库,shell程序等等)

2.设计操作系统的⽬的

• 对下,与硬件交互,管理所有的软硬件资源

• 对上,为用户程序(应⽤程序)提供⼀个良好的执⾏环境

3.核⼼功能

• 在整个计算机软硬件架构中,操作系统的定位是:⼀款纯正的"搞管理"的软件("核心功能是对计算机软硬件资源的统一管理,具体包括进程管理(调度程序执行)、内存管理(分配内存空间)、文件管理(管理磁盘文件)、驱动管理(对接硬件设备),本质是'资源管理器'",让 "管理" 的具体内容更清晰)

4.如何理解 "管理"

举个例子,有一个学校,里面有几千上万的学生,但只有一个校长,怎么保证校长能管理这些学生呢,光靠一个人肯定不可能,不然想填写一个表格还得找每个学生填一遍,显然不现实,所以辅导员就出现了,校长管理辅导员,而辅导员管理学生

但是校长管理辅导员干什么,校长管理的应该是学生,但是管理学生不是把这些学生看着,不乱跑,而是管理学生的信息,所以校长通过辅导员收集到学生的信息,但是如果校长要选择成绩最高的去参加比赛,难不成要一个一个对着收集起来的表格来找最大吗,那也太累了,聪明的校长于是想到了结构体与链表,将学生的所有公共信息通过一个结构体来存放,然后用链表将结构体穿起来,这样想得到校长要的结果就只需要对链表只需要增删改查,方便很多。所以校长就像一个操作系统,管理辅导员,辅导员就像驱动程序,管理学生,学生就像底层硬件。

这个过程可以简洁的用六个字表示出来 : 先描述,再组织

总结

计算机管理硬件

  1. 描述起来,⽤struct结构体

  2. 组织起来,⽤链表或其他⾼效的数据结构

5.系统调⽤和库函数概念

• 在开发⻆度,操作系统对外会表现为⼀个整体,但是会暴露⾃⼰的部分接⼝,供上层开发使⽤,

这部分由操作系统提供的接⼝,叫做系统调⽤

• 系统调⽤在使⽤上,功能⽐较基础,对⽤⼾的要求相对也⽐较⾼,所以,有⼼的开发者可以对部

分系统调⽤进⾏适度封装,从⽽形成库,有了库,就很有利于更上层⽤⼾或者开发者进⾏⼆次开

"比如我们用 C 语言的printf函数打印内容,printf本身是库函数,它内部封装了操作系统提供的'写屏幕'系统调用 ------ 开发者不用直接调用复杂的系统调用,只需用库函数即可,这就是封装的价值",让抽象的 "封装""二次开发" 变得直观。
那在还没有学习进程之前,就问⼤家,操作系统是怎么管理进⾏进程管理的呢?很简单,先把进程描述起来,再把进程组织起来!

这就是探索进程的前置知识,下篇博客我们就将进军Linux进程,敬请期待啦

相关推荐
LXY_BUAA2 分钟前
《ubuntu22.04》_新系统的配置_20260418
linux·运维·服务器
上海云盾-小余3 分钟前
API 接口 DDoS 与 CC 攻击防护实战:守住业务最脆弱的数字入口
服务器·ddos
楼田莉子6 分钟前
同步/异步日志系统:日志落地模块\日志器模块\异步日志模块
linux·服务器·c++·学习·设计模式
洛水水1 小时前
图解式讲解内存池:告别内存碎片与随机coredump
linux·内存池
NightReader1 小时前
SSH Client推荐集
运维·ssh
小章UPUP1 小时前
2025-2026 新FFmpeg GUI工具推荐
linux
探索宇宙真理.2 小时前
Nginx UI MCP接口绕过认证漏洞 | CVE-2026-33032复现&研究
运维·经验分享·网络安全·nginx-ui
llm大模型算法工程师weng2 小时前
负载均衡做什么?nginx是什么
运维·开发语言·nginx·负载均衡
byoass3 小时前
企业云盘私有化部署:存储架构设计与安全运维全流程实战
运维·网络·安全·云计算
fTiN CAPA3 小时前
服务器无故nginx异常关闭之kauditd0 kswapd0挖矿病毒 CPU占用200% 内存耗尽
运维·服务器·nginx