【Linux系统编程】20.程序、进程、CPU和MMU、PCB

目录

程序

进程

CPU和MMU

PCB

程序

编译好的二进制文件,存在磁盘上,只占用磁盘资源。

进程

        进程是活跃的程序,占用系统资源,在内存中执行。程序运行起来,产生一个进程。

        程序类似于剧本,进程类似于一场戏,一场戏需要舞台、演员、灯光、道具……同一个剧本可以在多个舞台同时上演。同样,同一个程序也可以加载为不同的进程。两个终端,各自都有一个bash但彼此ID不同。

CPU和MMU

不同的进程,只有内核是相同的。MMU在CPU内部。

 

PCB

        进程控制块。每个进程在内核中都有一个进程控制块来维护进程相关的信息,Linux内核的进程控制块是task_struct结构体。

        task_struct结构体位置:

重点结构体成员:

  • 进程ID

  • 文件描述符表

  • 进程状态:初始态、就绪态、运行态、挂起态、终止态。

  • 进程工作目录位置

  • umask掩码

  • 信号相关资源

  • 用户ID和组ID

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/13753.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker学习笔记16

在生产环境中使用Docker,往往需要对数据进行持久化,或者需要在多个容器之间进行数据共享。 容器管理数据有两种方式: 1)数据卷:容器内数据直接映射到本地主机环境; 2)数据卷容器:…

STM32实战项目—楼宇人员计数系统

本文项目比较简单,目的是介绍一下红外对管的使用,程序设计也比较简单。因此,博主并没有将程序工程上传资源,如果有需要的话可以私信。 文章目录 一、任务要求二、实现方法2.1 红外对管简介2.2 进出人员检测 三、程序设计3.1 红外对…

Jenkins基础介绍以及docker安装Jenkins

Jenkins基础介绍以及docker安装Jenkins 什么是Jenkins? Jenkins是一个可扩展的持续集成引擎 持续集成就是通常说的CI(Continues Integration) 每次集成都通过自动化的构建(包括编译,发布,自动化测试&am…

基于simulink仿真车道偏离警告系统(附源码)

一、前言 此示例演示如何在视频序列中检测和跟踪道路车道标记,并在驾驶员穿过车道时通知驾驶员。该示例说明了如何使用霍夫变换、霍夫线和卡尔曼滤波器模块来创建线检测和跟踪算法。该示例使用以下步骤实现此算法:1) 检测当前视频帧中的车道…

Zabbix 6.0 介绍及部署

目录 一、Zabbix 6.0 介绍1. 简介2. **利用一个优秀的监控软件带来的好处**3. **zabbix 6.0 的功能组件**4.zabbix 监控原理 二、Zabbix 6.0 部署 一、Zabbix 6.0 介绍 1. 简介 Zabbix 是由 Alexei Vladishev 创建,目前是由 Zabbix SIA 在持续开发和提供支持。zab…

python 实现简易的学员管理系统

文章目录 前言基本思路需求实现1.实现菜单的功能2.提示用户输入需要进行的操作,并执行相关操作3.具体函数功能的实现增加学员信息显示所有学员信息删除学员信息修改学员信息查询学员信息 整体代码展示 前言 前面我们已经学习了 python 的输入输出、条件语句、循环、…

Redis - 一篇讲解根据 Key 前缀统计分析内存占用

问题描述 今天遇到一个 Redis 内存打挂了的问题,想看看哪个前缀 Key 占用内存比较大?! 原因分析 我们都知道如果直接用 Keys 参数去做统计很危险,而且也只能统计数量,当然也可以排序去前几名的占用内存 Key 对应的大…

逆转乾坤,反转字符串

本篇博客会讲解力扣“344. 反转字符串”的解题思路,这是题目链接。 这是一道经典题目了。解题思路是:双下标,left指向最左边的字符,right指向最右边的字符,交换2个字符,left向右挪动一格,right向…

细谈容器化技术实现原理--以Docker为例

目录 一、Docker解决了什么 二、容器的发展过程 三、容器基础 3.1. 容器实现的原理: ⚠️原理详解: 3.1.1. Namespace 3.1.2. Cgroups 3.1.3. chroot 四、Volume 4.1. Docker是如何做到把一个宿主机上的目录或者文件,挂载到容器里面…

StarRocks--被 Databricks CEO 提及的数据库

Databricks 介绍 Databricks是一家美国的大数据独角兽公司,由 Apache Spark 的创建者所创立。Databricks 开源了 Delta Lake--基于 Apache Spark 的下一代数据湖存储引擎。Delta Lake 是目前市面上主流的数据湖存储引擎之一,与 Apache Hudi 和 Apache Ic…

MySQL入门必备:Linux中部署MySQL环境的四种方式详解

目录 一、仓库安装 二、本地安装 三、Docker中安装 四、源码安装 一、仓库安装 首先需要下载mysql软件包: 1、进入MySQL官网 2、进入MySQL社区版下载 3、使用yum方式下载MySQL 4、下载对应版本的软件包 5、这里可以不登录直接下载软件包 6、复制下载链接 7、然…

122.将实战网页部署到Netlify

● 本章我们将网站部署到Netlify ● 首先先点击右上角注册一个账号 ● 注册完成之后,点击sites,将我们的网站文件夹拖入 ● 上传成功 ● 之后就可以正常访问啦 ● 我们也可以修改我们的站点名称,让他更加好记