1月13日晚开课:《Linux系统编程两驾马车》之《多进程编程》
课程概况:
《Linux系统编程两驾马车——多进程编程、多线程编程》之“多进程编程”。“多进程”编程部分的内容涉及多进程生命周期、init进程(以systemd为例)、系统服务、守护进程、进程间通信(IPC,信号、信号量、socket等)、共享内存、dma-buf设备级内存共享、以及多进程的调试技巧。
上课形式:
视频课程(可无限次数回看)
课后练习(在自己的电脑上进行实际操作)
加入课程讨论答疑群。
上课时间:
2020年1月13日晚9点开始,共五晚,每晚约1小时。由于是视频,可以无限次回看,所以当晚没看后面还是可以看。
指导老师:宋老师
课程大纲:
1:多进程生死抉择
1.0 多进程场景与解决什么问题
1.1 多进程模式fork、vfork、exec、wait
1.2 多进程模型里的subreaper
1.3 main函数进去前和出来后,做了些什么?
1.4 exit vs _exit
1.5 flush IO
1.6 atexit()钩子
1.7 动态链接库的构造函数和析构函数
1.8 LD_PRELOAD + 构造函数完成leak sanitizer helper
2: systemd和守护进程Daemon
2.1 sys v init和systemd
2.2 daemon进程是如何形成的?
2.3 daemon进程的stdout, stderr到哪里去了?
2.4 daemon进程如何写log?
2.5 daemon与终端terminal
2.6 nohup命令
2.7 systemd和daemon之间是什么关系?
3. 多进程通信
3.1 管道(shell pipe的原理)
3.2 信号的捕获、忽略与缺省
3.3 信号的block和pending
3.4 Sys V信号量、共享内存、消息队列
3.5 POSIX信号量、共享内存、消息队列
3.6 UNIX域Socket, Socket Pair
4. 文件描述符fd跨进程共享与共享内存
4.1 跨进程共享文件描述符fd
4.2 memfd_create与共享内存
4.3 dma-buffer:Multimedia/Graphis数据跨进程共享
4.4 dma-buffer跨进程共享
4.5 dma-buffer跨设备共享
5. 多进程与调试
5.1 gdb与多进程
5.2 进程的coredump
5.3 strace,ltrace与多进程
5.4 进程间通信的调试
5.5 查看日志
苹果和电脑用户报名方法:
电脑浏览器访问yomocode.com(不支持手机访问),先点击网站右上角图标,微信扫码登录,然后在此链接报名:
http://www.yomocode.com/courses/15
安卓手机用户可点击链接一键报名:
报名价格:
早鸟599元,原价759元。早鸟将于1月8日24点结束。
详情也可扫描如下二维码添加客服咨询: