课程编号: ITMS-C
课程介绍:
Linux操作系统以其开源的特性在程序设计领域中占有重要的地位,特别是在网络通信、安全技术、嵌入式程序设计等方面具有独到的优势,所以得到了各企业广泛的使用。本课程的详细介绍Linux操作系统下C语言开发的各种方法,深入探讨各种技术的实现细节,以实例为基础展示Linux下程序设计的特点,并能为进一步学习Linux下的高级应用开发(如路由器开发)打下良好基础。
入学基础:
本课程适合于正在或即将从事Linux程序设计的人员,需要对C语言较为熟悉,并且熟悉基本的Linux操作指令。
培训目标:
通过本课程的学习,学员可以熟悉Linux下C程序设计的方法并能独立开发工程项目,达到企业的要求。
培训课时:30学时
培训教材:英文教材
课程大纲:
·高级C语言基础:数组、指针、结构、联合、函数指针等的应用及其注意事项,
·C程序设计过程中的关键技术与知识点。
Linux下的程序开发环境和工具:vi编辑器的使用
·makefile的语法、作用、结构及其调用
·GNU的gcc指令,借助Windows IDE环境开发Linux程序
Linux下文件的处理:Linux/Unix文件结构,文件底层访问,标准I/O库,文件和子目录。
Unix环境:程序参数,环境变量,时间日期,主机资料的介绍和使用方法。
数据管理:内存管理,文件封锁,数据库的应用。
进程与线程:进程结构,多进程处理,线程的概念与属性,线程同步方法,多线程编程
·管道的使用方法,信号量机制,共享内存,消息队列及其应用。
网络编程:网络通信的原理,socket的构建、侦听、接收、发送和销毁
·与WinSock的区别,socket高级编程(阻塞与非阻塞,select机制)
·Netfilter的应用和研究,构建Linux路由器。
shell编程: shell的概念,管道重定向技术,shell程序设计语法。
Linux程序的调试与纠错:错误的分类,常用的调试技巧
·gdb的使用及其它调试工具,内存调试方法。
设备驱动程序:设备分类,字符设备驱动开发,定时技术,内存管理,I/O端口
·块设备驱动开发,驱动调试。
程序移植:Windows下程序与Linux程序互相移植的问题及其解决方法。
内核及源码:内核编译方法,模块与系统调用,源码阅读指导。
培训地点:华胜天成培训部
|