课程详情
课程评价
spContent=本课程对Linux下应用程序的设计思想、开发特点、开发手段进行介绍,并重点讲述文件I/O、目录操作、进程控制、线程控制、多任务同步与通信等POSIX API的使用方法和编程技巧。本课程是《C语言程序设计》与《操作系统基础》课程的后行课程,是对这两门课程的相关知识的应用、延续和深化。
—— 课程团队
课程概述

    本课程采用理论与实践相结合的方式,选取具有代表性并且有着广泛实际应用的操作系统——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


课程大纲
预备知识

C语言程序设计知识;操作系统基础知识

证书要求

通过单元测验和期末考试,总成绩合格可以获得证书。为了保障证书权威性,平台不再支持免费电子证书,只提供认证证书,请同学们注意!

参考资料

(一)教材: 

《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/