Linux篇:进程

一.什么是程序?什么是进程?有什么区别?

1.程序是静态的概念 , gcc xxx.c-o pro

磁盘中生成pro文件,叫做程序

2.进程是程序的一次运行活动,通俗点意思是程序跑起来了,系统中就多了一个进程。

二.如何查看系统中有哪些进程?

1.使用ps指令查看,实际工作中,配合grep来查找程序中是否存在某一进程。

ps -aux|grep X

2.使用top指令查看,类似Windows任务管理器

top

三.什么是进程标识符?

每个进程都有一个非负整数表示的唯一ID,叫做pid,类似身份证,

Pid=0:称为交换进程

作用---进程调度

Pid=0:init进程

作用---系统初始化

注意:编程调用getpid函数获取自身的进程标识符,getppid获取父进程的进程标识符。

四.什么叫父进程?什么叫子进程?

进程A创建了进程B

进程A叫做父进程,B叫做子进程,父子进程是相对的概念,理解为人类中的父子关系。

五.使用fork函数创建一个进程

pid_t fork(void);

fork函数调用成功,返回两次

返回值为0,代表当前进程是子进程

返回值非负数,代表当前进程为父进程

调用失败 ,返回-1

六.vfork

vfork与fork的区别

1.vfork直接使用父进程存储空间,不拷贝

2.vfork保证子进程先运行,当子进程调用exit退出后,父进程才执行

七.进程退出

正常退出:

1.main函数调用return

2.进程调用exit(),标准c库

3.进程调用_exit()或者_Exit(),属于系统调用

补充:

1.进程最后一个线程返回

2.最后一个线程调用pthread_exit

异常退出:

1.调用abort

2.当进程收到某些信号时,如ctrl+c

3.最后一个线程对取消请求做出响应

八.父进程等待子进程退出

1.父进程等待子进程退出,并收集子进程的退出状态

子进程退出状态不被收集,变成僵尸进程

2.孤儿进程

父进程如果不等待子进程退出,在子进程之前就结束了自己的”生命“,此时子进程叫做孤儿进程。

Linux避免系统存在过多孤儿进程,init进程收留孤儿进程,变成孤儿进程的父进程。

九.exec族函数

作用:用fork函数创建新进程后,经常会在新进程中调用exec函数去执行另一个,当进程调用exec函数时,该进程被完全替换为新程序,因为调用exec函数并不创建新进程,所以前后进程的ID并没有改变。

  exec配合fork使用

实现功能,当父进程检测到输入为1的时候,创建子进程把配置文件的字段值改掉。

十.system函数

函数返回值如下:

成功:则返回进程的状态值,当sh不能执行时,返回127

失败返回-1

十一.popen函数

比system在应用中的好处:可以获取运行的输出结果

在航空航天领域,Missile Datcom是用于导弹气动特性分析的关键工具,能够针对高速、高马赫数、大攻角等复杂工况,估算导弹在不同飞行阶段的气动性能,如升力、阻力等。而MATLAB凭借其强大的数值计算和数据可视化能力,常被用于与Missile Datcom的数据对接和计算。本文将探讨如何将MATLAB与Missile Datcom进行匹配计算。 Missile Datcom是基于美国空军开发的Datcom程序,专门针对导弹设计,用户需输入导弹几何尺寸、质量属性、飞行条件等参数,Datcom会据此计算气动数据。MATLAB与Missile Datcom的结合主要体现在:一是数据导入,MATLAB可利用textscan等函数读取Datcom的ASCII格式输出文件,并以数组或结构体形式存储数据;二是计算接口,通过编写MATLAB函数或脚本调用Datcom的命令行版本,实现参数自动化输入和结果自动获取,如在Windows上使用system函数,在Unix/Linux上使用system或!命令;三是数据分析,借助MATLAB丰富的数学和统计功能,对气动特性数据进行曲线拟合、敏感性分析、多变量优化等高级计算,深入探究导弹性能的依赖关系;四是可视化,利用MATLAB的GUI和绘图函数(如plot、surf)直观展示计算结果,如绘制马赫数、攻角与升力系数的关系图或3D表面图;五是自动化流程,MATLAB可构建从参数设定到报告生成的完整计算流程,提高工作效率。 初学者在实际操作中需注意:熟悉Missile Datcom的输入输出格式,确保MATLAB正确解析文件;理解Datcom的计算模型和假设,合理应用计算结果;注意调用Datcom时命令行参数的正确设置,避免错误;掌握MATLAB基础编程,如数组操作、文件I/O和图形显示。MATLAB与Missile Datcom的配合为导弹气动特
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值