《UNIX网络编程》课程介绍与教学大纲_第1页
《UNIX网络编程》课程介绍与教学大纲_第2页
《UNIX网络编程》课程介绍与教学大纲_第3页
《UNIX网络编程》课程介绍与教学大纲_第4页
《UNIX网络编程》课程介绍与教学大纲_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE5《UNIX网络编程》课程简介课程编号:07034004课程名称:UNIX网络编程/UNIXNetworkProgramming学分:3学时:48(课内实验(践):18上机:课外实践:)适用专业:网络工程建议修读学期:6开课单位:网络工程先修课程:计算机网络、数据结构、C语言程序设计、操作系统考核方式与成绩评定标准:闭卷平时成绩30%期末70%教材与主要参考书目:UNIXNetworkProgrammingvol.1(3rdEdition)R.StevensChinaMachinePress参考书目:TheLinuxProgrammingInterface.M.Kerrisk.NoStarchPress.2010AdvancedProgrammingintheUNIXEnvironment.R.StevensChinaMachinePress内容概述:中文:本课程是网络工程的必修课,以介绍UNIX类系统环境下服务器客户端套接字编程为主线,介绍各种常用服务器端代码框架并分析其优缺点。其主要内容包括:BSDsocket函数族接口定义与语义、常见客户端服务器通信代码框架、利用select与epoll系统调用实现IO多路复用、UNIX域套接字与描述符传送、后台进程、线程并发、Linux同步与互斥机制、进程池与线程池。课程实现目标包括:毕业要求3.4掌握网络工程专业核心思维与方法。体现在掌握Socket编程的核心内容、同步与互斥的机制、服务端并发编程的技巧、应用层编程与操作系统内核的契合等;体现在课程设计中学生能够在Linux环境下实现一个相对完整的服务。毕业要求5.1了解整个学科的知识组织结构、学科形态、典型方法等。体现在学生对服务器的工作机制可以从实现的角度有一个全面深入的理解,并可以根据应用需求选择相应的服务器代码架构。英文:Thiscourseisarequiredcourseforstudentsofthespecialityofnetworkengineering.ItmainlyintroducessocketprogrammingintheUNIX-likeenvironment.Thematerialsinvolvedinthiscourseincludes:theinterfacesandsemanticsofBSDsocketsystemcalls,server-sidecodeframeworks,IO-multiplexingwithselectandepoll,UNIXdomainprotocol,anddaemonprocesses,threads,synchronization,andprocess(thread)pre-allocation. Theimplementingobjectsofthiscoursearethefollowing. Graduaterequirement3.4:Graduatesshouldcomprehendthecorethinkingandmethodologyofthespecialityofnetworkengineering.Itisembodiedinthatstudentscomprehendsocketprogramming,themechanismofsynchronizationandmutualexclusion,theskillsofserver-sideconcurrentprogramming,cooperationbetweenapplicationprogrammingandtheoperatingsystemkernel,etc..ItisalsoembodiedinthatinthecoursedesignstudentscanimplementarelativelycompleteserverwithintheLinuxenvironment. Graduaterequirement5.1Graduatesshouldknowtheknowledgearchitecture,disciplineform,andcommonapproaches.Theyareembodiedinthatgraduateshaveacomprehensiveunderstandingabouttheworkingmechanismofserverbyimplementingaspecificserver,whichisconstructedinaspecificwayaccordingtoapplicationrequirements.《UNIX网络编程》教学大纲课程名称课程编号学分/学时建议开课学期计算机网络070340043/486先修课程后续课程开课单位适用专业计算机网络操作系统C语言程序设计数据结构网络工程网络工程一、课程性质、目的与任务本课程是网络工程的必修课,以介绍UNIX类系统环境下服务器客户端套接字编程为主线,介绍各种常用服务器端代码框架并分析其优缺点。其主要内容包括:BSDsocket函数族接口定义与语义、常见客户端服务器通信代码框架、利用select与epoll系统调用实现IO多路复用、UNIX域套接字与描述符传送、后台进程、线程并发、Linux同步与互斥机制、进程池与线程池。通过本课程的学习,初步掌握客户端、服务器端程序的常用算法,并能恰当地使用并发技术提高程序的性能;掌握利用线程或进程进行并发服务的程序框架。通过实际操作,熟悉Linux操作环境,掌握客户端/服务器通信的程序设计技术。课程实现目标包括:毕业要求3.4掌握网络工程专业核心思维与方法。体现在掌握Socket编程的核心内容、同步与互斥的机制、服务端并发编程的技巧、应用层编程与操作系统内核的契合等;体现在课程设计中学生能够在Linux环境下实现一个相对完整的服务。毕业要求5.1了解整个学科的知识组织结构、学科形态、典型方法等。体现在学生对服务器的工作机制可以从实现的角度有一个全面深入的理解,并可以根据应用需求选择相应的服务器代码架构。本课程目标分为课程教学和课程设计两部分。1.课程教学活动对学生能力培养的安排本课程的目的是使学生深入理解套接字编程的基础知识和通过并发编程提升服务性能的技巧与方法。2.课程设计活动对学生能力培养的安排通过实验、课程设计等环节,以实现的方式让学生掌握如何根据功能要求设计服务端架构,培养学生设计与编程能力、通过课程设计全过程训练强化学生对服务端编程的实际动手能力。二、教学内容及学时分配(按章节列出内容要求学时等,实验上机项目要列在课程内容一栏)UNIX网络编程总学时数为48学时,其中理论教学为30学时,实验教学为18学时;课程教学共有16章,具体内容及学时安排等如下表所示:课程内容教学要求重点(☆)难点(△)学时安排实验学时上机学时备注(指标)ConcurrentprogrammingandPOSIXIPCA☆4ElementSockets,UDPandTCPA☆4IOMultiplexingA☆Δ4DaemonA☆Δ4UNIXDomainProtocolA☆Δ2AdvancedIOandtimeoutB2AdvancedNon-blockingA☆Δ2Threading,mutualexclusionandread-writelocksA☆4Pre-allocationA☆Δ4Linuxconcurrency2IterativeUDPserver2ConcurrentTCPserver2IOmulti-plexingbyselect2IOmulti-plexingbyepollΔ4Non-blockingIOserver2ProcessPre-allocationserverΔ4(教学基本要求:A-掌握;B-熟悉;C-了解)三、建议实验(上机)项目及学时分配本课程安排7次实验:包括Linux并发基础、迭代型UDP服务、并发型TCP服务、select实现IO多路服用、epoll实现IO多路服用、非阻塞服务、以及进程池预分配。共18学时。四、教学方法与教学手段课程教学以课堂讲授、代码解析为主,结合上机编程与代码研读等共同实施。五、考核方式与成绩评定标准课程考核成绩采用平时成绩+期终考试成绩相结合的方式,平时成绩占课程考核成绩的30%,平时成绩考核采用课堂提问、作业、实验相结合的方式;期终考试成绩占课程考核成绩的70%,期终考试试卷对应该课程支撑毕业要求指标点的情况如下表所示:课程支撑毕业要求指标点在试卷中的相应分数指标点3.460指标点5.140总计100六、教材与主要参考书目UNIXNetworkProgrammingvol.1(3rdEdition)R.StevensC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论