当前位置: 首页 > news >正文

秒懂:进程(概念初晓)

1.概念:

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

作者理解:

        一个加载到内存中的程序 。
        进程不止包括程序加载到内存的数据,还包括该进程的属性,它的这个属性,操作系统用一个结构体 PCB来封装,在linux中进程的属性统一叫做 task_struct 

        所以 进程 = PCB(属性) + 内容

程序是存储在外存中,进程PCB是在内存中的, 程序是“静”的从程序到进程是一个“动”的过程


2.进程PCB     

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


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

当进程被一个个结构体所封装,它们同样也需要组织!

我们知道,我们的linux之父 林纳斯·本纳第克特·托瓦兹 也同样知道,所以他在设计时也进行了组织。

我们可以在内核源代码里找到它。所有运行在系统里的进程都以task_struct链表的形式存在内核里

我们的linux之父 林纳斯·本纳第克特·托瓦兹 在进程的创造上,他同样运用到了先描述(将进程结构体化)再组织(用链表将其传起来

在此膜拜一下大佬!!!


相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 安防视频综合管理系统EasyCVR视频汇聚平台集群部署出现状态不同步的情况是什么原因?
  • 如何在 Ubuntu 14.04 LTS 上安装 Nginx
  • linux nc
  • 前端进阶|一文理解柯里化的逆操作,什么是反柯里化
  • 一字线模组厂家的选择与使用技巧
  • 【论文分享】sNPU: Trusted Execution Environments on Integrated NPUs 24‘ISCA
  • 如何解决前端开发中 `node-sass` 与 Node.js 版本不兼容的问题
  • gitee版本控制
  • 【系统架构设计师】论文:论SOA在企业集成架构设计中的应用
  • 24年最新ComfyUI 入门教程:comfyui基本功能详解!
  • 利用Python解析json生成PPT、xmind思维导图教程
  • 网络堡垒:交换机加固,守护你的数据安全
  • Hyper-v 安装 centOS
  • Redis 在 Linux 环境中的基础语法与数据类型详解
  • oracle数据库安装和配置
  • axios 和 cookie 的那些事
  • gf框架之分页模块(五) - 自定义分页
  • HTTP那些事
  • java小心机(3)| 浅析finalize()
  • JS 面试题总结
  • JS函数式编程 数组部分风格 ES6版
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • Next.js之基础概念(二)
  • Node + FFmpeg 实现Canvas动画导出视频
  • windows下mongoDB的环境配置
  • 给初学者:JavaScript 中数组操作注意点
  • 简单实现一个textarea自适应高度
  • 利用jquery编写加法运算验证码
  • 码农张的Bug人生 - 初来乍到
  • 驱动程序原理
  • 如何选择开源的机器学习框架?
  • 算法系列——算法入门之递归分而治之思想的实现
  • 正则表达式
  • PostgreSQL 快速给指定表每个字段创建索引 - 1
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ​你们这样子,耽误我的工作进度怎么办?
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • ${ }的特别功能
  • (10)STL算法之搜索(二) 二分查找
  • (2024最新)CentOS 7上在线安装MySQL 5.7|喂饭级教程
  • (libusb) usb口自动刷新
  • (八十八)VFL语言初步 - 实现布局
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (第30天)二叉树阶段总结
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (三)c52学习之旅-点亮LED灯
  • (转)【Hibernate总结系列】使用举例
  • (转)linux下的时间函数使用
  • ******IT公司面试题汇总+优秀技术博客汇总
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • *Django中的Ajax 纯js的书写样式1
  • .gitignore文件_Git:.gitignore
  • .helper勒索病毒的最新威胁:如何恢复您的数据?
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .net 按比例显示图片的缩略图