Linux_系统编程day01

将近日学习Linux基础编程,系统编程,网络编程的word笔记搬运过来,图片无法直接粘贴,就丢失掉了。

日后工作学习中使用与扩充维护还是word笔记

这篇文章图片很多,亏大了。

系统编程day01

内容简介:

程序和进程

         磁盘中的二进制文件,运行的程序,cpu,虚拟地址空间,物理内存

并行和并发

         时间碎片和多核

pcb进程控制块

         文件描述符,进程id

进程三态

         就绪态,执行态,挂起态

虚拟地址空间

         4G32位,内核区,用户区,堆栈全局代码区共享库区

fopen打开的*FILE是什么

         文件描述符表,文件指针,缓存(库函数比系统函数快)

进程控制

         fork,pid_t, getpid,getppid, 读时共享写时复制, 循环创建多个线程

进程相关命令

         psaux, ps ajx, kill -9 pid

exec函数族

         execl,execlp, pathname, 占位符, NULL哨兵

进程回收

         孤儿进程僵尸进程,wait,waitpid(0, -1, -pid, pid), int stat, 父进程死僵尸也死(init)

 

 

 

1 了解进程相关的概念

         程序和进程

                   程序:二进制文件,占用磁盘空间

                  进程:启动的程序

                            所有数据都在内存中

                            需要占用更多的系统资源

                                     cpu,物理内存

2 并行和并发

         并发:

                   是时间段的概念,不是时间点的概念

                   cpu每分钟一杯咖啡,让200个人每人都喝一口咖啡

                   cpu在处理进程时在不同的进程间轮询地切换

         并行:

                   cpu多核,有多个处理器

 

3 pcb进程控制块(结构体)每启动一个进程

         structtask_struct

         进程id,系统中每个进程都有唯一的id,c语言中用pid_t类型表示,就是非负整数

进程三态

         进程有初始态,就绪,运行,挂起,终止等状态

         进程切换时需要保存和恢复的cpu寄存器

       虚拟地址空间

Linux下每启动一个进程,就对应一个

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值