Linux开发培训课程体系(选修)
专题划分
专题一:Linux系统管理与基础
专题二:Linux环境编程(C/C++)
专题三:Linux网络与高并发编程
专题四:Linux内核与驱动开发
专题一:Linux系统管理与基础
培训对象:
-
零基础或刚接触Linux的开发/运维人员
-
希望夯实Linux系统使用与管理技能的工程师
-
从Windows环境转向Linux开发的从业者
培训目标:
掌握Linux系统安装、常用命令、文件系统、用户权限、进程管理、网络配置等核心技能,能够独立进行Linux环境搭建与日常维护,理解系统启动流程与服务管理。
培训内容:
-
Linux发行版选择与系统安装:CentOS/Ubuntu安装、分区方案、引导程序配置、软件源设置
-
命令行基础与Shell编程:常用命令(find/grep/awk/sed)、管道与重定向、Shell脚本编写与调试
-
文件系统与权限管理:目录结构、文件属性、权限机制(chmod/chown)、ACL、链接文件
-
用户与组管理:用户/组创建与删除、环境变量配置、sudo权限控制、PAM认证基础
-
进程管理与调度:进程查看(ps/top/htop)、作业控制、nice值调整、systemd服务管理
-
系统监控与性能分析:CPU/内存/磁盘/网络监控(vmstat/iostat/iftop)、日志分析(journalctl/rsyslog)
-
软件包管理:RPM/YUM、APT/DPKG、源码编译安装、软件仓库配置
-
网络配置与故障排查:IP配置、路由设置、网络诊断工具(ping/traceroute/ss/tcpdump)
-
存储管理与LVM:磁盘分区、格式化、挂载、逻辑卷管理(LVM)、磁盘配额
-
系统启动流程与引导:BIOS/UEFI、GRUB配置、init进程、systemd单元文件
-
系统安全基础:防火墙(firewalld/iptables)、SELinux/AppArmor、SSH安全配置
-
虚拟化与容器基础:KVM虚拟机管理、Docker安装与基本操作、容器网络与存储
专题二:Linux环境编程(C/C++)
培训对象:
培训目标:
熟练使用GCC/GDB/Make等工具链,掌握Linux系统编程核心接口(文件I/O、进程/线程、信号、IPC),能够开发健壮的系统级应用程序。
培训内容:
-
Linux开发环境搭建:编辑器(Vim/VSCode)、GCC编译选项、静态库与动态库制作
-
Makefile与构建工具:Makefile规则编写、变量与函数、CMake入门与实战
-
GDB调试技术:断点设置、单步执行、查看堆栈、多线程调试、core文件分析
-
文件I/O编程:系统调用与C库函数对比、文件描述符、缓冲机制、高级I/O(mmap/sendfile)
-
进程管理与控制:fork/vfork/exec家族、孤儿进程与僵尸进程、守护进程编写
-
信号处理:信号生命周期、信号集操作、自定义信号处理函数、可重入函数
-
多线程编程:pthread线程创建与回收、线程属性、线程局部存储、线程取消
-
线程同步机制:互斥锁、条件变量、读写锁、信号量、自旋锁、死锁预防
-
进程间通信(IPC):管道、FIFO、消息队列、共享内存、信号量集、Socket本地通信
-
内存管理:堆内存分配(malloc/free)、内存泄漏检测、内存映射、内存池设计
-
错误处理与日志:errno处理、strerror/perror、syslog日志记录、断言使用
-
性能分析与优化:gprof性能剖析、valgrind内存检查、perf热点分析、代码优化技巧
专题三:Linux网络与高并发编程
培训对象:
-
后端开发、网络中间件开发工程师
-
需要构建高并发服务器的开发者
-
希望深入理解TCP/IP协议栈与网络模型的工程师
培训目标:
掌握Socket网络编程、TCP/UDP协议原理、多线程/多进程并发模型,熟悉I/O多路复用(select/poll/epoll)及常见网络框架(libevent),能够设计高性能网络服务。
培训内容:
-
TCP/IP协议栈详解:TCP三次握手/四次挥手、滑动窗口、拥塞控制、UDP特性
-
Socket API编程:socket/bind/listen/accept/connect、字节序转换、地址复用
-
TCP服务器并发模型:多进程并发、多线程并发、进程池/线程池实现
-
I/O多路复用:select/poll原理与局限性、epoll事件驱动、边缘触发与水平触发
-
Reactor模式设计:基于epoll的Reactor框架实现、事件驱动编程思想
-
高性能网络框架应用:libevent/libuv安装与使用、定时器集成、异步DNS解析
-
协程编程入门:协程原理、ucontext/boost.context、协程在高并发中的应用
-
HTTP协议解析与实现:HTTP报文格式、状态码、HTTP服务器实现、WebSocket协议
-
网络安全编程:SSL/TLS协议、OpenSSL库使用、数字证书、HTTPS服务器搭建
-
网络性能优化:零拷贝技术(sendfile)、TCP参数调优、连接池、缓冲区优化
-
负载均衡与反向代理:LVS/HAProxy原理、Nginx配置与模块开发基础
-
容器化网络与服务发现:Docker网络模式、Kubernetes Service概念、etcd/Consul入门
专题四:Linux内核与驱动开发
培训对象:
-
嵌入式系统开发、驱动开发工程师
-
希望深入理解操作系统底层机制的软件工程师
-
从事系统优化、内核定制的研究人员
培训目标:
理解Linux内核架构与关键子系统(进程调度、内存管理、文件系统、设备驱动),掌握内核模块开发与简单驱动编写,能够进行内核配置与编译,初步具备内核调试能力。
培训内容:
-
内核源码获取与结构:内核版本管理、源码目录结构、Kconfig与Makefile
-
内核配置与编译:menuconfig配置、交叉编译环境搭建、内核镜像生成与安装
-
内核模块开发:模块编写框架、模块加载/卸载、模块参数传递、模块依赖
-
字符设备驱动:设备号分配、file_operations实现、与用户空间数据交互(copy_to/from_user)
-
并发与同步机制:自旋锁、信号量、互斥体、RCU机制、原子操作
-
中断处理:注册中断处理函数、上半部与下半部(tasklet/workqueue)、线程化中断
-
时间管理与内核定时器:jiffies、高精度定时器、内核延时函数
-
内存管理子系统:页分配、slab分配器、内存映射、DMA与CMA
-
进程调度与CFS:进程优先级、调度类、CFS算法实现、实时进程调度
-
设备树(Device Tree):设备树语法、绑定文档、平台设备驱动模型
-
块设备驱动与文件系统:块设备注册、请求队列、简单的文件系统实现概念
-
内核调试与性能分析:printk与动态调试、ftrace/tracepoint使用、kdump/crash分析、kgdb远程调试
如果您想学习本课程,请
预约报名
如果没找到合适的课程或有特殊培训需求,请
订制培训
除培训外,同时提供相关技术咨询与技术支持服务,有需求请发需求表到邮箱soft@info-soft.cn,或致电4007991916
技术服务需求表点击在线申请
服务特点:
海量专家资源,精准匹配相关行业,相关项目专家,针对实际需求,顾问式咨询,互动式授课,案例教学,小班授课,实际项目演示,快捷高效,省时省力省钱。
专家力量:
中国科学院软件研究所,计算研究所高级研究人员
oracle,微软,vmware,MSC,Ansys,candence,Altium,达索等大型公司高级工程师,项目经理,技术支持专家
中科信软培训中心,资深专家或讲师
大多名牌大学,硕士以上学历,相关技术专业,理论素养丰富
多年实际项目经历,大型项目实战案例,热情,乐于技术分享
针对客户实际需求,案例教学,互动式沟通,学有所获