李林Linux第一讲前言

李林Linux第一讲前言

ID:37031418

大小:2.14 MB

页数:92页

时间:2019-05-11

李林Linux第一讲前言_第1页
李林Linux第一讲前言_第2页
李林Linux第一讲前言_第3页
李林Linux第一讲前言_第4页
李林Linux第一讲前言_第5页
资源描述:

《李林Linux第一讲前言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Linux环境高级编程李林电子科技大学计算机学院自我介绍姓名:李林专业:计算机系统结构学位:博士职称:副教授研究方向:操作系统及安全分布式计算计算机网络QoS自我介绍技术背景:熟悉windows内核程序设计熟悉windowsAPI/MFC/ATL/WTL的应用开发熟悉Linux下基于API的应用开发熟悉Linux下网络应用程序开发熟悉Linux内核网络模块开发熟悉erlang应用开发Email:lilin@uestc.edu.cn第一讲前言教学目的课程主要内容及安排学习方法学习资料推荐编程环境介绍第一讲前言教学目的课程主要内容及安排

2、学习方法学习资料推荐编程环境介绍教学目的作为程序员,为什么要学习Linux程序设计?计算机网络越来越普及,带来了巨大的经济效益单机版程序越来越弱化,各种应用将放置于云端(桌面应用web化、web中心化、SaaS、云计算???)Linux是后台系统首选的操作系统7教学目的Linux上的程序设计涉及到的内容很多:Shell编程各种Web后台技术:PHP,Python,Ruby….数据库技术:MySql,Oracle,Sybase…….各类开发语言:erlang,scalar……Linux内核程序设计底层的基于操作系统API的socket

3、编程技术本课程的关注点?从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台四个层次从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台硬件工程师包括固件程序微码的编写从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台内核工程师包括驱动、各类内核模块开发从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台应用开发工程师基于API的程序开发从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库

4、或平台应用开发工程师使用各种库进行开发从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台应用程序开发从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台应用程序开发本课程关注点从程序员视角看计算机系统硬件设备操作系统API层ShellC/C++库其他库或平台应用程序开发本课程关注点理清学习思路教学目的本课程以Linux操作系统为基础,通过介绍该系统的API,使同学们掌握Linux系统调用的基本使用方法。同时,也希望通过本课程的教学,使同学们初步掌握按照当代程序设计思想灵活

5、运用API的方法,以提高学生在Linux环境下进行程序开发的能力和水平。为此,本课程开发了一个面向对象的执行体类库什么是系统调用和库过去windows使用0x2e号中断作为系统调用入口,而linux使用0x80号。现在仍然可以使用0x80示例1.10编译方法:需要安装nasm#nasm–felf64hello.asm#gcc-ohellohello.o调试:gdbdisassmain//段名找到地址后,b*addrr什么是系统调用和库Intel提供了sysenter/sysexit指令,可以在longmode下运行,但是在AMD上这

6、组指令无效。Intel不支持32位中使用syscall/sysret,但和AMD相同,在64位下支持所以,为了兼容性,在64位下使用syscall/sysret示例1.11什么是系统调用和库从某种意义上将,C库实际上是对系统调用的包裹。通常,把包裹之后的函数成为API示例1.12真正的入口点如何调试C库第一讲前言教学目的课程主要内容及安排学习方法学习资料推荐编程环境介绍课程主要内容及安排总学时:20学时教材Linux程序设计实践,李林段翰聪著,电子科技大学出版社参考资料UNIX环境高级编程,W.RichardStevens,人民邮电

7、出版社考核方式考查(平时作业)有问题、错误时,随时打断提问课程主要内容操作系统程序设计所涉及的内容过多,不可能面面俱到,只能讨论重点内容如何组织重点内容?本课程将讨论如何设计、实现一个执行体模型的程序库,并以此为线索,覆盖重点内容执行体模型程序库面向对象的——类库封装了基本的执行体:线程、进程封装了执行体常见的创建方式、同步方式、通信方式https://github.com/uestcll/LibExecutive执行体程序库课程所涉及的内容执行体类库的日志实现文件的基本操作、文件操作的I/O效率分析、库函数出错处理、日志类的实现线

8、程的封装线程的基本概念、线程创建与终止、多种程序设计思想封装线程的创建、线程同步的封装、windows消息循环机制在Linux的重现与封装进程的封装进程的创建与终止、多种程序设计思想封装进程的创建、进程同步的封装、进程通信的封装25L

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。