进程(一)进程概念

问1.什么是程序,什么是进程,有什么区别?

答1:程序是静态的概念,gcc xxx.c -o pro 磁盘中生成的pro文件,叫做程序

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

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

a.使用ps指令查看
实际工作中,配合grep来查找层序中是否存在某一个进程 
ps -aux显示全部进程   ps -aux|grep 想要的进程名   
(其实就是把ps -aux显示全部进程 放进一个管道里再用grep去过滤 找到 想要的进程名) 
    
补充:查找某个.c文件里的某个代码段grep+空格+“查询的代码段”

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

问3.什么是进程标识符?

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

pid=0:成为交换进程(swapper)作用——进程调度
pid=1:init进程 作用——系统初始化

编程调用getpid函数获取自身的进程标识符getppid获取父进程的进程标识符

问4.什么叫父进程,什么叫子进程?

进程A创建了进程B 
那么A叫做父进程,B叫做子进程,父子进程是相对的概念,理解为人类中的父子进程

问5.C程序的存储空间是如何分配?

    

1.区域是 malloc申请空间的地方   

2.空间是函数调用以及函数内产生的信息,自己定义的func()函数的地址存放的地方 ,func函数里的局部变量也全是放在栈里面     

3.代码段是正文if else等这样的   

4.数据段是初始化的变量   

5.BSS段是在函数外未被初始化的变量   

6.命令行参数和环境变量 就是 argc argv

猜你喜欢

转载自blog.csdn.net/weixin_46016743/article/details/114949508