进程的结构

进程由三大结构组成:PCB(进程控制块)、程序段、数据段。

(1)PCB 在操作系统中是记录型结构,是进程存在的唯一标志,若操作系统查找一个进程的话,是直接从内存中查找进程的PCB的,进程常驻内存。

    PCB的内部结构:1、进程标识符(内部标识符:进程的唯一编号=》操作系统使用,外部标识符:用户使用)

            2、处理机状态

            3、进程调度信息:进程状态(就绪、执行、阻塞),进程优先级(整数记录 数字大优先级高),与调度算法的有关信息,事件(如阻塞的原因)

            4、进程的控制信息:程序和数据的地址(需要的时候调入内存或记录在内存的地址)

            5、PCB的组织方式:链接方式、索引方式

    

时间: 2024-07-30 01:38:58

进程的结构的相关文章

zabbix进程组成结构与zabbix_agentd.conf配置文件参数详解

zabbix进程组成结构,默认情况下zabbix包含5个程序:zabbix_agentd.zabbix_get.zabbix_proxy.zabbix_sender.zabbix_server,另外一个zabbix_java_gateway是可选,这个需要另外安装.下面来分别介绍下他们各自的作用. 进程介绍 zabbix_agentd 客户端守护进程,此进程收集客户端数据,例如cpu负载.内存.硬盘使用情况等 zabbix_get zabbix工具,单独使用的命令,通常在server或者prox

进程peb结构、获得peb的方法

PEB :进程环境块TEB.ProcessEnvironmentBlock成员就是PEB的结构体地址TEB结构体位于FS段选择符所指的段内存的起始地址处,且ProcessEnvironmentBlock成员位于距TEB结构体Offset 30的位置即有两种方法获得PEB的地址 peb的结构申明: typedef struct _UNICODE_STR { USHORT Length; USHORT MaximumLength; PWSTR pBuffer; } UNICODE_STR, *PUN

linux程序与进程内存结构

1.可执行文件结构: 1)代码区:包含操作码和操作对象.常量数据(const声明).立即数,代码区是共享的, 只提供只读. 2)全局/静态数据区:包含被初始化的全局数据和初始化静态数据. 3)未初始化数据区(BBS):包含未初始化的全局数据和未初始化静态数据. 2.进程结构: 1)代码区:加载可执行程序代码段,由加载器完成. 2)全局数据区:加载可执行文件数据段,数据生存周期为整个程序运行过程. 3)未初始化数据区:加载未初始化数据,数据生存周期为整个程序运行过程. 4)栈区:由编译器自动分配,

Linux 可执行文件与进程内存结构, Linux 进程内存加载

一个可执行程序包含三个部分 代码段:主要存放指令,操作以及只读的(常量)数据(例如字符串常量).数据段:全局或者静态的已经初始化的变量.BSS 段:全局或者静态的未初始化的变量. 栈上面有1G内存时Linux内核区,与栈之间有一个gap随机地址,防止代码攻击.数据区data与堆区之间也有一个随机gap.

linux的获取进程与进程内存结构

原文地址:https://www.cnblogs.com/jest549/p/11365604.html

oracle进程结构简介

我们经常说数据库实例,实例其实就是指的是数据库的内存结构和进程结构.我们安装数据库软件大量的是在安装其内存和进程组件结构.上篇节我们介绍了oracle内存结构,这节就介绍下oracle进程结构. 首先看下oracle进程的分类: 1)用户进程 是连接到Oracle DB 的应用程序或工具 2)数据库进程 服务器进程:连接到Oracle实例,在用户建立会话时启动 后台进程:在启动Oracle实例时启动 3) 守护程序/应用程序进程 网络监听程序 Gridinfrastructure 守护程序 从进

Linux程序存储结构与进程结构 堆和栈的差别

摘要:本文主要讲述了Linux系统中.程序存储结构(代码区.数据段和BBS区)与进程的基本结构(代码区.数据段.BBS区.堆和栈).以及堆和栈的差别. Linux程序存储结构与进程结构 1.Linux程序存储结构 在Linux系统下,程序是一个普通的可运行文件,图1是一个Linux下ELF格式可运行文件的基本情况. 图1 ELF格式可运行文件的基本信息 能够看出,此ELF格式可运行文件在存储时,没有调入到内存,分为代码区(text),数据区(data)和为初始化区(bss)3个部分.各段基本说明

Linux程序存储结构与进程结构 堆和栈的区别

摘要:本文主要讲述了Linux系统中,程序存储结构(代码区.数据段和BBS区)与进程的基本结构(代码区.数据段.BBS区.堆和栈),以及堆和栈的区别. Linux程序存储结构与进程结构 1.Linux程序存储结构 在Linux系统下,程序是一个普通的可执行文件,图1是一个Linux下ELF格式可执行文件的基本情况. 图1 ELF格式可执行文件的基本信息 可以看出,此ELF格式可执行文件在存储时,没有调入到内存,分为代码区(text),数据区(data)和为初始化区(bss)3个部分.各段基本说明

一、进程与信号的结构

认识进程 ps -ef |more UID PID PPID C STIME TTY TIME CMD root 1 0 0 19:06 ? 00:00:04 /sbin/init auto noprompt root 2 0 0 19:06 ? 00:00:00 [kthreadd] root 3 2 0 19:06 ? 00:00:00 [ksoftirqd/0] root 4 2 0 19:06 ? 00:00:00 [kworker/0:0] root 5 2 0 19:06 ? 00: