2.20

进程

今天学习了进程的相关内容,主要是了解了一些与进程哟有关的概念,以下是几个需要重点记忆的概念和问题

1. 什么是进程?

进程相比于程序来说,它是活的,是程序执行的过程,包含创建,调度和消亡。

2. 进程空间如何划分?每个区域的特点?每个区域存放哪些数据?

进程空间:在32位操作系统中,可以为进程创建0-4G的虚拟空间,它包含内核(CPU管理,内存管理,文件系统管理,硬件设备管理以及进程管理)(用户不可修改)、文本段数据段系统数据段。以下是一张图来更加清晰的划分进程空间。

3. 常见的进程调度算法有哪些?

1、先后顺序:先来的先执行,后来的后执行。

2、高优先级调度算法

3、时间片轮转调度法(时间片就是指CPU在某个任务中执行的时间)

4、多级队列反馈法

4、负载均衡调度法

4. 进程状态分为哪几种类型?

1、就绪状态 R:正在运行的任务(没有占用CPU

2、运行状态 R:正在运行的任务(占用CPU

3、可唤醒等待态 S:进程挂起等待某个资源到达后继续向下执行

4、不可唤醒等待态 D:进程挂起等待某个信号继续向下执行

5、停止态 T:进程挂起等待CPU确认发送指令继续向下执行

6、僵尸态 Z:代码执行完毕但是空间没有被回收

7、结束态 X:代码执行完毕且空间被回收

5. 进程相关的命令有哪些?

top

根据CPU占用率查看当前所有进程任务

PID:唯一识别进程的ID号 ( pid > 0 )

PPID:父进程的ID

按q退出top命令

ps -ef

ps -ef | grep a.out 组合命令,查看所有进程中与a.out相关联的内容

ps -aux

查看所以的进程状态

./a.out&

在后台执行Aa.out

kill

kill -9 进程PID

killall -9 进程名

pstree

查看所以的进程关系

6. 如何创建进程?fork和vfork有什么区别?

一般用fork() 或vfork()创建进程

7. 什么是僵尸进程?如何产生?如何避免?

僵尸进程是指在进程结束后,空间未被回收

产生原因:父进程未调用 wait() 或 waitpid(),或忽略了 SIGCHLD 信号。

避免方法:

1、让父进程先结束,子进程会成为孤儿进程,被init进程收养,子进程结束时,init进 程回收子进程空间 子进程结束

2、父进程回收子进程空间(wait或者waitpid回收子进程空间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值