当前位置: 首页 > news >正文

Linux多进程学习

一、什么是多进程

1.多任务程序能够同时做多件事情,如QQ同时聊天和上传下载。 2.多任务程序在应用开发中非常普遍,是必须掌握的基本概念。

二、进程的创建与资源分配

1.操作系统在创建进程时会分配内存资源、CPU资源和时间片。 2.进程的内容包括代码、用户数据和系统数据。 3.系统数据段中的进程控制块包含PID、用户信息、进程状态、优先级和文件描述符表。

三、进程切换

1.程序计数器(PC)存放下一条指令的地址。 2.当进程时间片用完或进行IO操作时,PC的值会自动更新。 3.PC的作用是确保进程在下一次被调度时从上次停止的地方继续执行。

四、进程的类型

进程分为交互进程、批处理进程和守护进程

1.交互进程:在shell下运行,可以与用户交互。

2.批处理进程:与终端无关,通常由作业管理工具调度执行。

:3.守护进程:在后台运行,通常用于服务程序。

五、进程的状态与切换

1.进程状态包括运行态(就绪态和可运行)、等待态(可中断和不可中断)、停止态和死亡态。 2.进程在运行过程中会在不同状态之间切换,取决于事件发生或资源可用情况。

六、常用指令

1、PS指令

ps -ef|more    //一频一频的显示全部进程

ps -ef|grep test   //查看名为test的进程
top   //查看进程动态信息

注:q键退出
./proc目录:存放所有进程的详细信息,目录名为数字的目录分别对应不同的进程。
./proc/fd目录:存放当前进程打开的所有文件的信息。

2、修改进程优先级的指令

1.Nice命令:用于指定优先级运行进程,Nice值越小,优先级越高。

nice -n 2 ./test    //将./test的进程优先级设置为2

2.reNice命令:用于改变已有进程的优先级,普通用户只能降低优先级。

3.权限说明:普通用户只能指定正数或零,管理员用户可以指定任意Nice值。

3、前后台进程切换

./test $    //后台运行test进程

1.jobs命令:用于查看后台进程,显示当前终端上的后台作业及其编号。

2.fg命令:用于将后台作业切换到前台运行。

fg 1    //将后台程编号为1的变为前台

3.bg命令:用于将后台挂起的作业恢复为运行态。

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类似,但不会刷新流的缓冲区

相关文章:

  • 【JavaWeb学习Day25】
  • Java 大视界 -- Java 大数据在智能安防视频摘要与检索技术中的应用(128)
  • 1.8 双指针专题:四数之和
  • 销售易CRM:赋能企业销售与客户管理的数字化升级
  • 小凯的疑惑(数论 )
  • LeetCode-122. 买卖股票的最佳时机 II
  • latex问题汇总
  • neo4j图数据库
  • 轻量级模块化前端框架:快速构建强大的Web界面
  • C++- 基于多设计模式下的同步异步日志系统
  • 交换机、路由器、网关、MAC地址——从入门到实战
  • 地基注解@Controller和@RestController区别
  • shiro反序列化漏洞-简述
  • 机试准备第15天
  • 办公常用自动化工具
  • 西瓜书简单笔记
  • 操作系统学习笔记-进程调度篇
  • 在线Doc/Docx转换为PDF格式 超快速转换的一款办公软件 文档快速转换 在线转换免费转换办公软件
  • STM32步进电机S型与T型加减速算法
  • 10进制转换成2进制
  • 海外考古大家访谈|冈村秀典:礼制的形成与早期中国
  • 总奖金池百万!澎湃与七猫非虚构写作与现实题材征文大赛征稿启动
  • 乌克兰谈判代表团由12人组成,乌防长率领
  • 埃尔多安:愿在土耳其促成俄乌领导人会晤
  • 阿里上季度营收增7%:淘天营收创新高,AI产品营收连续七个季度三位数增长
  • “85后”贵阳市政府驻重庆办事处主任吴育材拟任新职