浙江大学Linux程序设计教学大纲与建议学时分配数-金国庆刘加海Word文档格式.doc
《浙江大学Linux程序设计教学大纲与建议学时分配数-金国庆刘加海Word文档格式.doc》由会员分享,可在线阅读,更多相关《浙江大学Linux程序设计教学大纲与建议学时分配数-金国庆刘加海Word文档格式.doc(8页珍藏版)》请在冰点文库上搜索。
本课程的教学主要以理论教学和上机实践教学相结合的方式进行。
四、课程教学内容、要求及重点、难点
第一章终端的基本操作
(一)主要教学内容
第一节Linux的常用命令
第二节文件与网络常用命令
第三节Linux的进程命令
第四节Linux的安全常用命令
(二)学习目的要求
1.了解Linux下终端常用命令的操作
2.熟悉网络命令的使用;
3.熟悉安全命令的使用;
(三)重点和难点
教学重点:
Linux下终端命令的操作。
教学难点:
命令的使用格式。
第二章Shell程序设计
第一节shell程序设计初步
第二节shell程序设计中表达式应用
第三节循环程序设计
第四节分支程序设计
第五节综合实例
1.了解Linux下shell程序设计方法;
2.掌握shell程序的顺序、分支、循环结构的程序设计。
Linux下shell程序设计方法、程序的顺序、分支、循环结构的程序设计。
表达式的表达方式及应用、分支、循环结构。
第三章Linux系统程序设计基础
1.第一节第一个Linuxc程序、库依赖
第二节gcc编译器
2.使用gcc
3.gcc编译流程
4.gcc编译器的主要参数
第三节makefile工程文件
1.makefile工程文件
2.makefile工程文件参数使用
第四节gdb调试器
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.熟悉进程的一般操作;
4.熟悉进程的特殊操作。
进程的状态,进程调度,进程的一般操作和特殊操作。
进程的一般操作和特殊操作。
第七章
进程间的通信
第一节信号
1.信号及其使用简介
2.信号操作的相关函数
第二节管道
1.低级管道操作
2.高级管道操作
3.命名管道
第三节消息队列
第四节共享内存
1.mmap系统调用
2.系统V共享内存
大纲属学院、学校基本教学文件,由学院、学1.掌握Linux下进程通信;
2.了解管道的概念;
3.了解消息队列和管道;
4.了解各个进程间如何实现共享内存。
管道、消息队列、各个进程间实现共享内存。
第八章
线程程序设计
第一节线程的基本概念及进程的结构;
第二节Linux环境下线程的相关函数的应用;
第三节线程的创建及线程相关函数的应用;
第四节线程同步互斥。
1.线程的机制与线程的基本概念;
2.掌握在Linux环境下利用pthread线程库编写多线程程序设计;
3.线程同步与互斥程序。
(三)重点和难点
教学重点:
多线程程序设计中各函数的应用,线程程序设计中线程同步与互斥、条件变量、信号量的使用。
教学难点:
线程创建,线程同步与互斥,条件变量,信号量。
第九章
网络程序设计
第一节 TCP/IP简介
1.TCP/IP概述
2.TCP/IP模块结构
第二节 网络编程
1.socket简介
2.socket套接口简介
3.socket套接口的数据结构
4.TCP编程
5.UDP编程
第三节 网络高级编程
大纲属学院、学校基本教学文件,由学院、学校1.了解TCP/IP;
2.掌握Socket编程;
3.了解ping命令的简单实现。
Socket编程。
第十章
Linux的图形编程
第一节Linux的图形编程简介
第二节安装和使用SDL图形开发库
第三节初始化图形模式
第四节基本绘图函数的应用
第五节图片与文字显示
第六节动画
第七节三维绘图
第八节游戏程序入门
大纲属学院、学校基本教学文件,由学院、学校1.了解Linux图形编程的基本特点;
2.熟悉图形编程的基本操作。
图形编程的基本操作和实例。
第十一章设备驱动程序设计基础
第一节 在Linux环境下设备文件的查看,主设备号与次设备号。
第二节 设备驱动程序设计流程,设备的分类及相关的数据结构。
第三节 简单字符设备驱动程序的设计。
第四节 GPIO驱动程序的设计。
大纲属学院、学校基本教学文件,由学院、学校1.学会如何查看设备类型、主设备号与次设备号,理解主设备号与次设备号的含义;
2.设备的分类及不同设备所对应的数据结构;
3.掌握设备驱动程序的设计方法、设备驱动程序的编译、模块加载与卸载的方法;
4.掌握简单字符设备驱动、GPIO驱动程序设计与测试方法。
设备驱动程序设计流程,设备的分类及相关的数据结构及字符设备驱动程序的设计。
教学难点:
设备驱动程序数据结构各字段的含义及字符设备驱动程序的设计与调试。
第十二章 串行通信
第一节串行通信概述
第二节串行通信程序的设计
1.串行通信程序设计流程
2.打开通讯端口
3.设置串口属性
4.串口通信程序设计主要语句说明
大纲属学院、学校基本教学文件,由学院、学校1.了解通讯端口;
2.了解串口属性;
3.熟悉串行通信程序设计流程。
串行通信程序设计流程,通讯端口,串口属性。
串行通信程序设计流程。
二、教学日历与建议学时分配
授课次数
内容
课堂讲授
课程实验
习题或讨论
其它教学环节
小计
1
Linux概况、终端的基本操作.编辑器的使用。
2
4
2,3
Shell程序设计、Shell程序设计应用讨论
8
4
Linux程序设计的编辑、编译、调试,gcc各参数的使用、make工程管理器、gdb的使用
5
Linux环境下系统函数的使用
6,7
文件属性的操作、非缓冲文件、有关文件目录的程序设计
8,9
10,11
12,13
14
15
驱动程序设计简介
16
串行通信简介
总计
32
64
制订日期:
2015年6月
7