【自我笔记之Linux】进程的概念、状态、进程管理命令、进程的管理以及进程的加载方式

一、概念

进程是一组有序的指令(按顺序)+数据+资源的集合。

进程:是运行中的程序

程序:是存储在磁盘上的可执行的二进制文件

 

二、进程的状态

进程在其生命周期可以存在多个状态:就绪、运行、阻塞等,下图所示:

查看进程状态

/proc/PID/status

 

三、进程管理命令

ps    查看进程   (bash Linux终端执行的进程

              ps   -f   更详细  --->      UID  用户ID     PPID 父进程ID

      ps   -ef    显示系统所有进程

      ps   -ef   |   grep  管道命令过滤

top   统计进程信息

 

Ctrl+c  结束正在前台运行的进程

Ctrl+z/kill  -stop   pid   挂起正在前台执行的进程

jobs   显示后台运行的或者挂起的进程任务列表

fg   任务号   将挂起的或者后台运行的进程放到前台执行

bg  任务号   将挂起的进程放到后台执行

 

kill    pid   结束进程 

Kill  -9   PID  强行结束进程

free    查看内存使用情况  

free -m 按M的单位显示

 

进程执行的方式:

前台执行    进程执行后,终端必须等待进程执行完成,才能借助工作

Slepp  200  前台执行

后台执行    进程与终端的执行互补干扰

Sleep   200 &   后台执行

 

四、进程的管理

操作系统对进程的管理方式:

PCB:进程控制块(结构体)  进程的属性信息  uid  pid  ppid(父进程id) gid  程序计数器  优先级  程序上下文

每个PCB(需要频繁删除、添加)会用双向链表来存储

进程新生成时,必须先分配PCB结构,后才会生成进程主体

进程结束时,先释放主体,(过一段时间)然后才会释放PCB结构

      引入概念:僵死进程:进程主体释放,但是PCB 依旧保存

 

五、进程的加载:简单分页   每个4k页帧

操作系统为每一个进程维护一个页表

 

逻辑地址:在程序阶段就能确定下来的地址---> 只与数据或函数在程序文件中的偏移有关

物理地址:物理内存上实际的偏移

逻辑地址和物理地址之间通过页表进行转换

逻辑地址 = 页号+页内地址(页内偏移)

物理地址 = 块号+页内地址

 

例如:已知某个分页系统,页面大小为1k(即1024字节),某一个作业有4个页面,分别装入到主存的第3、4、6、8块中,求逻辑地址2100对应的物理地址。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值