课程定位:从应用层切入Linux系统编程

这门课的核心价值在于厘清Linux环境下的开发边界。它不教授内核驱动编写,而是聚焦于用户态进程与系统资源的交互。对于想从事物联网网关、嵌入式服务或后端开发的同学,理解“用户态”与“内核态”的调用关系是必修的基础。课程内容从C语言在Linux下的编译链接流程讲起,逐步深入到文件IO、进程管理、线程同步以及网络编程,构建了一套完整的应用层开发知识闭环。

适合谁学:具备基础C语言能力者

prerequisite 是熟练掌握C语言指针、结构体及内存管理。如果你尚未理解函数指针或复杂的结构体嵌套,学习多线程和进程通信时会非常吃力。本课程适合两类人群:一是有一定C++或Java基础,希望转型Linux底层开发的程序员;二是物联网方向的嵌入式工程师,需要补齐网络协议栈和并发编程短板。课程不讲解复杂的Linux内核源码分析,因此对内核专家吸引力有限,但对应用开发者而言,内容足够深入且务实。

学习路径与资料配合建议

建议按以下顺序推进,以最大化资料利用效率:

  • 基础夯实:先观看C语言编译流程、Makefile管理及文件IO相关视频。重点理解标准IO与系统调用的区别,这是后续所有操作的基础。
  • 核心攻坚:深入进程与线程模块。务必亲手编写fork/execve创建子进程的代码,以及使用互斥锁、条件变量解决“生产者-消费者”问题。这部分视频时长较长,需配合笔记反复调试。
  • 进阶实战:进入网络编程领域。从OSI七层模型入手,理解TCP报文结构,随后通过socket API实现服务端与客户端的通信。最后结合IO多路复用(如select/poll)和线程池技术,优化高并发场景下的性能。

学完本课程,你能够独立完成基于Linux Socket的网络服务开发,掌握多进程/多线程程序的调试技巧,并能使用IPC机制实现模块间通信。建议在练习时,不要只看视频演示,必须将代码逐行敲入Linux环境,观察系统调用返回的错误码,这是从“看懂”到“会用”的关键一步。

课程目录

📁 视频
98_TCP_什么是TCP协议【更多精选‖公众号:CunWorknotes】 .mp4 [19.1 MB]
97_网络编程_数据单元及传输过程介绍【整理不易‖记得关注:CunWorKNotes】.mp4 [36.0 MB]
95_网络编程_OSI7层模型介绍.mp4 [61.1 MB]
99_TCP_报文段格式介绍【整理不易‖记得关注:CunWorKNotes】.mp4 [36.9 MB]
105_TCP_创建socket常用函数介绍.mp4 [70.1 MB]
03_C语言开发_使用Linux的必有性.mp4 [44.0 MB]
106_TCP_使用socket常用函数介绍.mp4 [35.4 MB]
109_TCP_网络地址填写案例.mp4 [73.0 MB]
01_Linux应用层编程课程介绍【更多精选‖公众号:CunWorknotes】 .mp4 [35.7 MB]
110_TCP_服务端打开代码编写【公重号:CunWorkNotes】.mp4 [56.0 MB]
115_TCP_多连接的服务端代码编写.mp4 [102.0 MB]
11_C语言编译流程_编译.mp4 [14.3 MB]
122_IPC_案例演示【公重号:CunWorkNotes】.mp4 [14.3 MB]
119_UDP_服务端代码编写【资源精选‖更多关注:CunworkNotes】.mp4 [56.8 MB]
117_TCP_多进程实现多连接的案例.mp4 [77.2 MB]
15_Makefile_编译管理工具介绍.mp4 [53.5 MB]
128_IO多路复用_原理介绍【公重号:CunWorkNotes】.mp4 [66.3 MB]
22_文件IO_写入字节fputc.mp4 [21.8 MB]
121_IPC_使用套接字进程通讯.mp4 [128.7 MB]
31_系统调用_综合案例.mp4 [55.9 MB]
60_线程处理_cancel的延迟取消【整理不易‖记得关注:CunWorKNotes】.mp4 [256.8 MB]
73_信号量_计数信号量控制线程执行顺序(1).mp4 [82.4 MB]
69_线程同步_条件变量功能演示【优质资源‖关注:cunWorkNotes 解锁】.mp4 [95.2 MB]
63_线程同步_互斥锁介绍【优质资源‖关注:cunWorkNotes 解锁】.mp4 [62.6 MB]
71_信号量_使用信号量解决进程间同步问题.mp4 [321.4 MB]
91_内核原理_系统调用和库函数【公重号:CunWorkNotes】.mp4 [20.7 MB]
77_线程池_使用案例演示【资源精选‖更多关注:CunworkNotes】.mp4 [61.9 MB]
87_内核原理_fork调用执行原理.mp4 [46.0 MB]
93_内核管理_线程特点及内核线程.mp4 [22.4 MB]
82_内核原理_Linux具体进程状态.mp4 [146.6 MB]
81_内核原理_抽象进程状态.mp4 [18.2 MB]
38_进程处理_使用execve跳转程序.mp4 [81.3 MB]
41_进程通讯_类型及发展.mp4 [20.1 MB]
43_进程通讯_使用特殊通讯方式的必要性【持续更新‖免费提供:CunworknoteS】.mp4 [19.5 MB]
36_进程处理_fork加execve完成子进程运行.mp4 [44.0 MB]
61_线程处理_cancel的异步取消和禁用取消【更多精选‖公众号:CunWorknotes】 .mp4 [29.0 MB]
51_进程通讯_使用消息队列完成父子进程通信.mp4 [88.4 MB]
53_进程通信_生成者消费者的消息队列通信【优质资源‖关注:cunWorkNotes 解锁】.mp4 [269.9 MB]
56_线程处理_线程创建的基础代码.mp4 [81.3 MB]
39_进程处理_进程树【持续更新‖免费提供:CunworknoteS】.mp4 [259.2 MB]
64_线程同步_读写锁基础机制【更多精选‖公众号:CunWorknotes】 .mp4 [95.7 MB]
52_进程通讯_消息队列生产者代码编写.mp4 [61.4 MB]
55_线程处理_线程简介.mp4 [15.4 MB]
49_进程通讯_共享内存对象数据存储【持续更新‖免费提供:CunworknoteS】.mp4 [31.3 MB]
44_进程通讯_匿名管道通讯.mp4 [100.5 MB]
50_进程通讯_消息队列介绍.mp4 [68.5 MB]
54_进程通讯_信号处理介绍.mp4 [322.3 MB]
62_线程同步_竞态条件和锁.mp4 [60.4 MB]
45_进程通讯_有名管道功能.mp4 [61.1 MB]
57_线程处理_线程终止内容介绍.mp4 [41.5 MB]
59_线程处理_detach不挂起终止.mp4 [39.3 MB]
47_进程通讯_共享内存使用的函数和系统调用.mp4 [43.9 MB]
58_线程处理_线程终止exit.mp4 [97.4 MB]
48_进程通讯_共享内存对象使用演示.mp4 [68.6 MB]
46_进程通讯_有名管道补充.mp4 [32.7 MB]
42_进程通信_打印错误及错误编号.mp4 [37.3 MB]
36_进程处理_fork创建子进程.mp4 [74.7 MB]
40_进程处理_孤儿进程.mp4 [26.9 MB]
37_进程处理_waitpid介绍.mp4 [36.2 MB]
38_进程处理_waitpid案例.mp4 [38.0 MB]
32_文件描述符_结构图概念介绍.mp4 [62.9 MB]
37_进程处理_使用fork复制文件描述符.mp4 [68.4 MB]
34_进程处理_使用system库函数.mp4 [36.1 MB]
74_信号量_计数信号量控制进程执行顺序.mp4 [44.8 MB]
90_内核原理_进程切换流程介绍.mp4 [33.6 MB]
94_网络编程_计算机网络分类.mp4 [40.8 MB]
78_内核原理_操作系统软件分层.mp4 [22.5 MB]
88_内核原理_execve调用执行原理.mp4 [33.7 MB]
76_线程池_原理及api介绍.mp4 [42.9 MB]
83_内核原理_虚拟内存相关介绍.mp4 [56.7 MB]
75_信号量_有名信号量在进程间的使用.mp4 [96.0 MB]
85_内核原理_异常和中断处理.mp4 [55.2 MB]
86_内核原理_缺页故障原理.mp4 [11.8 MB]
84_内核原理_物理内存和虚拟内存映射.mp4 [17.8 MB]
79_内核原理_pcb和内存模型.mp4 [446.6 MB]
89_内核原理_进程组id.mp4 [48.1 MB]
80_内核原理_CPU工作模型.mp4 [318.5 MB]
68_线程同步_条件变量原理介绍.mp4 [46.9 MB]
65_线程同步_读写锁使用展示.mp4 [48.3 MB]
72_信号量_信号量在进程间使用的注意事项.mp4 [31.3 MB]
66_线程同步_读写锁的写饥饿机制.mp4 [53.8 MB]
67_线程同步_自旋锁介绍.mp4 [8.2 MB]
70_信号量_无名信号量实现互斥锁功能.mp4 [79.8 MB]
73_信号量_计数信号量控制线程执行顺序.mp4 [82.4 MB]
25_文件IO_读取字节_fgetc.mp4 [37.7 MB]
30_系统调用_其他常用的系统调用.mp4 [25.3 MB]
19_Makefile_忽略错误和名称对应.mp4 [21.8 MB]
17_Makefile_自动推导.mp4 [22.8 MB]
127_守护进程_功能展示.mp4 [477.2 MB]
23_文件IO_写入字符串fputs.mp4 [19.9 MB]
125_链路层_交换机和解调器.mp4 [52.9 MB]
18_Makefile_伪目标声明.mp4 [14.3 MB]
24_文件IO_写入字符串fprintf.mp4 [36.0 MB]
20_文件IO_打开文件fopen.mp4 [47.4 MB]
16_Makefile_引入变量.mp4 [13.3 MB]
129_IO多路复用_功能展示.mp4 [100.4 MB]
29_系统调用_open打开文件.mp4 [60.8 MB]
21_文件IO_关闭文件.mp4 [197.0 MB]
126_守护进程_逻辑介绍.mp4 [35.4 MB]
120_UDP_客户端代码及测试.mp4 [55.7 MB]
笔记.zip [48.9 MB]
资料.zip [97.0 MB]