本课程采用理论与实践相结合的方式,选取具有代表性并且有着广泛实际应用的操作系统——Linux作为基础,对Linux下应用程序的设计思想、开发特点、开发手段进行介绍,锻炼学生在Linux下设计和开发原生应用程序的实践能力。本课程对Linux下应用程序的设计思想、开发特点、开发手段进行介绍,并重点讲述文件I/O、目录操作、进程控制、线程控制、多任务同步与通信等POSIX API的使用方法和编程技巧。本课程是《C语言程序设计》与《操作系统基础》课程的后行课程,是对这两门课程的相关知识的应用、延续和深化。
CO1:掌握Linux操作系统编程基础知识
Understand some basic knowledge of C programming on Linux system
CO2:掌握文件I/O操作以及目录与文件属性的操作
Understand how to access file and directory on Linux system
CO3:掌握常用的Linux进程控制操作与线程控制操作
Understand how to manipulate process and thread on Linux system
CO4:掌握常用的Linux线程同步机制与进程间通信机制
Understand the mechanism of thread synchronization and inter process communication
CO5:掌握在Linux应用开发环境中模拟操作系统经典同步互斥问题的方法
Understand how to simulate some classic theory about synchronization and inter process communication through application programming on Linux system
课程介绍
Linux操作系统编程-课程介绍
第一章 操作系统基本知识
1.1 从UNIX 到Linux的发展历程
1.2 UNIX/Linux体系结构
1.3 系统调用和库函数
1.4 常用Linux命令-文件目录类命令
1.5 常用Linux命令-进程控制类命令
1.6 常用Linux命令-用户及权限管理类命令
1.7 Linux程序编译调试方法
第二章 文件与目录操作
2.1 linux文件系统概述1
2.2 Linux文件系统概述2
2.3 linux的文件IO操作1
2.4 linux的文件IO操作2
2.5 Linux标准IO库
2.6 Linux文件定位
2.7 Linux文件共享1
2.8 Linux文件共享2
2.9 Linux目录操作1
2.10 Linux目录操作2
2.11 Linux文件属性管理1
2.12 Linux文件属性管理2
2.13 Linux文件权限管理1
2.14 Linux文件权限管理2
第三章 进程与线程
3.1 进程在内核中的组织
3.2 进程属性1
3.3 进程属性2
3.4 进程生命周期1
3.5 进程生命周期2
3.6 进程生命周期3
3.7 进程环境
3.8 创建进程
3.9 获知子进程运行状态改变
3.10 在进程中运行可执行文件
3.11 Linux线程控制1
3.12 Linux线程控制2
第四章 线程同步和进程间通信
4.1 Linux线程同步机制-互斥量
4.2 Linux线程同步机制-条件变量
4.3 Linux线程同步机制-读写锁
4.4 Linux进程间通信机制概述
4.5 Linux进程间通信机制-消息队列
4.6 Linux进程间通信机制-信号量集1
4.7 Linux进程间通信机制-信号量集2
4.8 Linux进程间通信机制-共享内存
第五章 实验
实验1 开发环境实验
实验2 文件IO实验
实验3 文件与目录操作实验
实验4 进程控制实验
实验5 线程控制实验
实验6 线程同步实验
实验7 综合实验1
实验7 综合实验2
C语言程序设计知识;操作系统基础知识
为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。
电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 https://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。
完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。
认证证书申请注意事项:
1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。
2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。
(一)教材:
《UNIX环境高级编程》第二版,[美]史蒂文斯,拉戈等,人民邮电出版社,2006年5月。
(二)参考资料:
1. 深入理解 Linux 内核. [美] 博韦等著,中国电力出版社,2007.9
2. 嵌入式Linux应用开发完全手册. 韦东山著,人民邮电出版社,2008.8
(三)推荐网站:
1. https://oss.org.cn/ossdocs/gnu/linux/index.htm
2. https://www.ibm.com/developerworks/cn/linux/newto/