欢迎来到天天文库
浏览记录
ID:9882479
大小:521.02 KB
页数:68页
时间:2018-05-11
《linux环境高级编程-第一讲前言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Linux环境高级编程第一讲前言教学目的课程主要内容及安排课程学习方法Unix/Linux标准化及实现编程环境介绍教学目的作为程序员,为什么要学习Linux程序设计?计算机网络越来越普及,带来了巨大的经济效益(各类网站,各类即时通讯工具等等)单机版程序越来越弱化,各种应用将放置于云端(桌面应用web化、web中心化、SaaS、云计算???)后台系统将不仅仅是单机系统,而是集群,分散式类webservice(网站架构的变迁)Linux是后台系统首选的操作系统教学目的互联网络程序设计涉及到的技术Web前台技术:html,css,
2、javascript,flashWeb后台技术:ASP,JSP,PHP,Python,Ruby数据库技术:MySql,Oracle,Sybase适用于分布式处理的函数式语言:erlang,scalar底层的基于操作系统API的socket编程技术本课程的关注点?4从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平台四个层次从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平台硬件工程师包括固件程序微码的编写从程序员视角看计算机系统硬件设备Linux
3、操作系统API层ShellC/C++库其他库或平台内核工程师包括驱动、各类内核模块开发从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平台应用开发工程师基于API的程序开发从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平台应用开发工程师使用各种库进行开发从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平台应用程序开发从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平
4、台应用程序开发本课程关注点从程序员视角看计算机系统硬件设备Linux操作系统API层ShellC/C++库其他库或平台应用程序开发本课程关注点理清学习思路教学目的掌握Linux提供的常见系统调用(API,ApplicationProgrammingInterface)加深对操作系统结构的理解掌握系统编程的方法,能够举一反三,为今后对其他系统的学习奠定基础本课程不对Linux内核做讨论但将会说明如何按照现代程序设计思想,运用API第一讲前言教学目的课程主要内容及安排课程学习方法Unix/Linux标准化及实现编程环境介绍课程主
5、要内容及安排总学时:20学时(以前是40学时)参考教材UNIX环境高级编程考核方式考查(平时作业)有问题、错误时,随时打断提问课程主要内容及安排文件系统文件、目录的操作方法,常用的文件I/O标准I/O及流标准I/O及流的概念、标准I/O与文件I/O区别、常用的I/O函数进程进程概念、状态转换图、进程环境、控制方法等信号信号的处理方式,以及应用程序对信号的捕捉线程线程的本质,线程的创建方式,同步方式文件的操作文件的基本操作(打开、定位、读写、关闭)I/O效率文件共享其他重要I/O函数ext2文件系统在磁盘的组织stat、fst
6、at、lstat函数文件的基本性质修改文件属性的函数硬链接与符号连接目录操作标准I/O静态库、动态库的编写库接口编写的注意事项标准I/O库打开流定位流读写流格式化输出临时文件进程环境main函数和命令行参数进程的启动和终止环境表和环境变量存储空间布局存储器分配setjmp和longjmp函数进程控制进程标识符fork等函数exit函数wait等函数exec等函数更改用户ID和组IDsystem函数进程会计用户标识和进程时间进程关系进程组会话控制终端信号信号的概念signal函数不可靠信号与可靠信号信号的发送接收机制信号集与可
7、靠信号机制sigsetjmp和siglongjmp函数abort函数线程线程的概念线程的创建线程的终止线程的同步线程的属性同步属性重入线程私有数据23Linux环境高级编程实验11周后,将开设《Linux环境高级编程实验》一课主要内容包括:高级编程环境学习(vi的高级使用,make的使用、gdb的使用、测试驱动工具googletest使用)执行体模型实现基本网络程序框架实现通用插件框架实现24第一讲前言教学目的课程主要内容及安排课程学习方法Unix/Linux标准化及实现编程环境介绍学习路线建议学习中的困惑漫无目的、缺乏指导
8、,不知道该怎么样学习基本的方法看书+实践方向不明确学习路线建议高度重视语言的学习学好C和C++,暂时不要盲目学Java等语言,限制今后的技术道路C和C++程序贴近机器(大多数操作系统都是基于C的)、高性能,将使你更能深入理解计算机系统和算法,在技术道路上走得更远语言的学习不仅仅是语法的学习
此文档下载收益归作者所有