Linux多进程学习

[复制链接]
发表于 2025-10-16 09:57:10 | 显示全部楼层 |阅读模式


一、什么是多进程

1.多使命步伐可以或许同时做多件事变,如QQ同时谈天和上传下载。 2.多使命步伐在应用开辟中非常广泛,是必须把握的根本概念。
二、进程的创建与资源分配

1.操纵体系在创建进程时会分配内存资源、CPU资源和时间片。 2.进程的内容包罗代码、用户数据和体系数据。 3.体系数据段中的进程控制块包罗PID、用户信息、进程状态、优先级和文件形貌符表。
三、进程切换

1.步伐计数器(PC)存放下一条指令的所在。 2.当进程时间片用完或举行IO操纵时,PC的值会自动更新。 3.PC的作用是确保进程在下一次被调理时从前次制止的地方继承实行。
四、进程的范例

进程分为交互进程、批处置惩罚进程和保卫进程
1.交互进程:在shell下运行,可以与用户交互。
2.批处置惩罚进程:与终端无关,通常由作业管理工具调理实行。
:3.保卫进程:在背景运行,通常用于服务步伐。
五、进程的状态与切换

1.进程状态包罗运行态(停当态和可运行)、期待态(可停止和不可停止)、制止态和殒命态。 2.进程在运行过程中会在差别状态之间切换,取决于事故发生或资源可用环境。

六、常用指令
1、PS指令
  1. ps -ef|more    //一频一频的显示全部进程
复制代码
  1. ps -ef|grep test   //查看名为test的进程
复制代码
  1. top   //查看进程动态信息
  2. 注:q键退出
复制代码
  1. ./proc目录:存放所有进程的详细信息,目录名为数字的目录分别对应不同的进程。
  2. ./proc/fd目录:存放当前进程打开的所有文件的信息。
复制代码
2、修改进程优先级的指令

1.Nice下令:用于指定优先级运行进程,Nice值越小,优先级越高。
  1. nice -n 2 ./test    //将./test的进程优先级设置为2
复制代码
2.reNice下令:用于改变已有进程的优先级,寻常用户只能低落优先级。
3.权限阐明:寻常用户只能指定正数或零,管理员用户可以指定恣意Nice值。
3、前背景进程切换
  1. ./test $    //后台运行test进程
复制代码
1.jobs下令:用于检察背景进程,表现当前终端上的背景作业及其编号。
2.fg下令:用于将背景作业切换到前台运行。
  1. fg 1    //将后台程编号为1的变为前台
复制代码
3.bg下令:用于将背景挂起的作业规复为运行态。
  1. bg 2   //将进程号为2的挂起进程运行起来
复制代码
六、进程干系的函数学习

1、进程创建函数fork

①.fork函数用于创建新的进程,体系会为新进程分配资源
返回值:失败为-1
               乐成后父进程中返回值为子进程的进程号,子进程中返回值为0.
②:1.子进程从fork函数的下一条语句开始实行
       2.父子进程的实行次序不确定,取决于内核的调理
       3.父进程中可以多次调用fork函数,创建多个子进程
2、父子进程关系

1.子进程险些复制了父进程的全部内容,包罗代码、数据和打开的文件
2.父子进程有各自独立的所在空间,相互不影响
3.父进程先竣事时,子进程会成为孤儿进程,由体系的一号(init)进程收养
4.子进程先竣事时,假如父进程没有实时接纳,子进程会变成僵尸进程
3、进程竣事函数exit/_exit

1.exit函数用于竣事当进步程,并返回一个值给父进程
2.exit函数在竣事进程时会革新流的缓冲区
3._exit函数与exit类似,但不会革新流的缓冲区









免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
继续阅读请点击广告

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

×
登录参与点评抽奖,加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表