教学大纲与建议学时分配数-刘加海
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浙江大学计算机学院、软件学院《Linux程序设计》教学大纲与教学日历
一、课程基本情况
课程代码:
总学时数:32-64
课程类型: 考试课+项目实训
适用对象: 计算机各专业、软件工程专业、嵌入式专业本科学生,理工科各专业。
先导课程:C程序设计基础与实验
后续课程:Linux数据库程序设计,Linux嵌入式程序设计。
使用教材:Linux程序设计,浙江大学出版社,金国庆、刘加海、季江民主编
二、课程性质和目标
1、课程的基本特性
本课程是一门为计算机软件人员开设的一门计算机专业课程。Linux作为具有良好特性的操作系统,C语言作为广泛使用的编程语言,两者的结合为用户提供了一个强大的编程学习环境与开源应用环境。
2、课程的教学目标
通过本课程的学习,学生能够熟练掌握Linux操作系统下的基本命令的使用,shell 程序设计,在Linux环境下C程序的编辑、编译、调试及运行,掌握Linux环境下系统函数的使用,掌握文件操作、非缓冲文件的I/O操作,掌握进程控制的程序设计,掌握进程间共享内存、管道、队列及信号等通信的机理及编程方法,掌握图形、动画、文字及简单游戏程序的设计,掌握网络编程设计,掌握串行通信程序设计,初步了解驱动程序设计,使学生掌握Linux操作系统下C程序开发的方法和技巧,并具备开发大型应用程序的能力。
三、课程教学方法与手段
本课程的教学主要以理论教学和上机实践教学相结合的方式进行。
四、课程教学内容、要求及重点、难点
第一章终端的基本操作
(一)主要教学内容
第一节 Linux的常用命令
第二节文件与网络常用命令
第三节Linux的进程命令
第四节Linux的安全常用命令
(二)学习目的要求
1.了解Linux下终端常用命令的操作
2.熟悉网络命令的使用;
3.熟悉安全命令的使用;
(三)重点和难点
教学重点:Linux环境下终端命令的操作。
教学难点:命令各参数的使用。
第二章Shell程序设计
(一)主要教学内容
第一节 shell程序设计初步
第二节 shell程序设计中表达式应用
第三节循环程序设计
第四节分支程序设计
第五节数值处理
第六节函数设计
第七节综合实例
(二)学习目的要求
1.了解Linux下shell程序设计方法;
2.掌握shell程序的顺序、分支、循环结构的程序设计。
(三)重点和难点
教学重点:Linux下shell程序设计方法、程序的顺序、分支、循环结构的程序设计。
教学难点:表达式的表达方式及应用、分支、循环结构。
第三章Linux系统程序设计基础
(一)主要教学内容
第一节第一个Linux c程序设计、库依赖
第二节gcc编译器
1.使用gcc;
2.gcc编译流程;
3.gcc编译器的主要参数。
第三节 makefile工程文件
1.makefile工程文件;
2.makefile工程文件参数使用。
1.gdb概述;
2.使用gdb调试程序。
思考与实验
(二)学习目的要求
1.了解Linux下c程序的编辑、编译和运行
2.熟悉gcc编译器的使用;
3.熟悉gdb调试器的使用;
(三)重点和难点
教学重点:Linux下C语言编程环境、Linux下C语言程序的调试,gcc的使用和常用选项;gdb的调试方法;makefile 文件的书写规则、make命令的使用
教学难点:编译器参数的使用,makefile工程文件,Linux下C语言编程环境。
第四章 Linux环境下系统函数的使用
(一)主要教学内容
第一节数学函数的使用
第二节字符函数的使用
第三节系统时间与日期函数的使用
第四节环境控制函数
第五节内存分配函数
第六节数据结构中常用函数
思考与实验
(二)学习目的要求
熟悉系统函数的应用,尤其是时间函数的程序设计的应用。
(三)重点和难点
教学重点:系统函数的使用。
第五章文件的操作
(一)主要教学内容
第一节 Linux系统文件的属性
1.Linux文件类型;
2.Linux文件权限;
3.Linux文件的其他属性.
第二节不带缓存的文件I/O操作
1.文件的创建;
2.文件的打开和关闭;
3.文件的读写操作;
4.文件上锁。
第三节带缓存的流文件I/O操作
1.流文件的打开与关闭;
2.流文件的读写操作;
3.文件的定位。
第四节特殊文件的操作
1.目录文件的操作;
2.链接文件的操作。
思考与实验
(二)学习目的要求
1.了解Linux的文件结构;
2.熟悉系统调用;
3.了解流和FILE对象;
4.熟悉流的打开、读和写操作;
5.熟悉文件和目录的维护。
(三)重点和难点
教学重点:非缓冲文件的打开、读和写等操作。
教学难点:有关文件属性的程序设计,有关目录文件的递归设计。
第六章进程控制
(一)主要教学内容
第一节进程简介
第二节Liunx进程控制
1.进程的相关函数;
2.进程创建;
3.进程终止;
4.僵尸进程。
第三节Linux守护进程
1.守护进程及其特性;
2.编写守护进程的要点;
3.守护进程的编写。
思考与实验
(二)学习目的要求
1.了解进程的状态及其状态转换;
2.了解进程的调度;
3.熟悉进程的一般操作;