【闪击Linux系列P9】程序员一定要了解的计算机管理理念——描述与组织

在这里插入图片描述

前言

大家好吖,欢迎来到 YY 滴 Linux系列 ,热烈欢迎! 本章主要内容面向接触过Linux的老铁,从操作系统层面向大家介绍进程:
主要内容含:
在这里插入图片描述

欢迎订阅 YY滴Linux专栏!更多干货持续更新!以下是传送门!

订阅专栏阅读: YY的《Linux》系列 ❀❀❀❀❀
【Linux系列-P1】Linux环境的搭建
【Linux系列-P2】 Linux的基本知识与指令
【Linux系列-P3】 Linux的权限
【Linux系列-P4】 Linux基本工具[yum][vim]

![在这里插入图片描述](https://img-blog.csdnimg.cn/e10cdffafe204b80a0ff651d9e3ea7a5.png

一.操作系统实现管理の核心理念:“先描述再组织”

  • 管理的过程是 “先描述再组织” 的过程。

1."先描述再组织"在生活中的应用

  • 校长需要管理学生且校长精力有限不会与每个学生挨个接触,于是便需要中间人(执行者)——辅导员来进行管理;
  • 根据属性,辅导员先将“学生”描述成一类属性的集合,如:学院,专业,班级的集合,即结构体;
  • 最后,再将每个学生信息通过链表等数据结构连接起来完成组织
  • 自此,成功地将校长对学生的管理工作转换成了对链表的增删查改
    在这里插入图片描述

2."先描述再组织"在操作系统中的应用

  • 同理在计算机生态中,【操作系统】需要管理【对象】且与其是不见面的,他们中间的媒介便是【驱动系统】;
  • 同理,在操作系统中,管理任何对象,最终都可以转化成为对某种数据结构的增删查改
  • 也注定了操作系统中注定有了大量的数据结构,这一描述的实体即PCB;

二.PCB篇

1.PCB

  • 进程信息被放在一个叫做进程控制块的数据结构中,可以理解为进程属性的集合
  • 课本上称之为PCB(process control block),Linux操作系统下的PCB是: task_struct (在下文PCB详解中有详细介绍)

2."描述进程-PCB"之"task struct"详解

PCB:

  • 进程信息被放在一个叫做进程控制块的数据结构中,可以理解为进程属性的集合
  • 课本上称之为PCB(process control block),Linux操作系统下的PCB是: task_struct。

task_struct-PCB的一种:

  • 在Linux中描述进程的结构体叫做task_struct。
  • task_struct是Linux内核的一种数据结构,它会被装载到RAM(内存)里并且包含着进程的信息

task_ struct内容分类:

  • 标示符: 描述本进程的唯一标示符,用来区别其他进程。
  • 状态: 任务状态,退出代码,退出信号等。
  • 优先级: 相对于其他进程的优先级。
  • 程序计数器: 程序中即将被执行的下一条指令的地址。
  • 内存指针: 包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针
  • 上下文数据: 进程执行时处理器的寄存器中的数据[休学例子,要加图CPU,寄存器]。
  • I/O状态信息: 包括显示的I/O请求,分配给进程的I/O设备和被进程使用的文件列表。
  • 记账信息: 可能包括处理器时间总和,使用的时钟数总和,时间限制,记账号等。
  • 其他信息

三.进程篇

1.进程

  • 课本概念:程序的一个执行实例,正在执行的程序等 / 一个已经加载到内存中的程序
  • 内核观点:担当分配系统资源(CPU时间,内存)的实体。

2.进程的基本结构

  • 进程包含:【PCB】+【代码,数据】
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/YYDsis/article/details/131986218#comments_28228169