Linux系统编程基础知识

程序:编译好的二进制文件,在磁盘上,不占用系统的资源(CPU,内存,设备,打开的文件,锁等)
进程:与操作系统原理联系紧密,进程是活跃的程序或者正在运行的程序,占用系统资源,在内存中执行

程序是剧本,进程是戏

1.PCB的 task_struct 结构
(1)pid_t类型的pid
(2)进程的状态:就绪态,运行态,挂起态,终止态
(3)进程切换时的需要保存和回复的一些寄存器内容
(4)描述虚拟地址空间的信息
(5)当前工作目录的位置
(6)umask掩码
(7)文件描述符表,包含很多指向file结构体的指针
(8)和信号相关的信息
(9)用户的id和组id
(10)会话(Session)和进程组
(11)进程可以使用的资源上限。ulimit -a(查看Linux各资源上限)
2.环境变量(每个进程都有自己的环境变量)
(1)extern char **environ(用环境变量时必须有此声明,environ以NULL结尾)
(2)getenv()获取环境变量的值
setenv() 设置环境变量的值
unsetenv() 删除环境变量name的定义
3.进程共享:读时共享,写时拷贝(拷贝0-3G用户空间)
gdb调试多进程:set follow-fork-mode chilld
set follow-fork-mode parent

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YanWenCheng_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值