软件学院09级基于UNIX操作系统编程课件

上传人:阳*** 文档编号:100733160 上传时间:2022-06-03 格式:PPT 页数:213 大小:1.26MB
返回 下载 相关 举报
软件学院09级基于UNIX操作系统编程课件_第1页
第1页 / 共213页
软件学院09级基于UNIX操作系统编程课件_第2页
第2页 / 共213页
软件学院09级基于UNIX操作系统编程课件_第3页
第3页 / 共213页
点击查看更多>>
资源描述
软件学院09级基于UNIX操作系统编程1电子科技大学电子科技大学 信息与软件工程学院信息与软件工程学院刘玓刘玓联系方式:联系方式:基于基于UNIX操作系统编程操作系统编程软件学院09级基于UNIX操作系统编程引引 言言软件学院09级基于UNIX操作系统编程大巨型机大巨型机 + MVS小中型机小中型机 + UNIX微型机微型机 + Windows功能强大功能强大简单易用简单易用引引 言言软件学院09级基于UNIX操作系统编程引引 言言 各类操作系统的特点:各类操作系统的特点:(一)、(一)、Windows类类: 运行在运行在Intel x86 体系结构的硬件平台上体系结构的硬件平台上 单用户单任务单用户单任务 使用简单方便使用简单方便 使用和维护成本低廉使用和维护成本低廉 功能和性能有限功能和性能有限 安全可靠性较低安全可靠性较低 适合个人应用环境适合个人应用环境软件学院09级基于UNIX操作系统编程引引 言言 各类操作系统的特点:各类操作系统的特点:(二)、(二)、UNIX类类: 运行的硬件平台广泛运行的硬件平台广泛 多用户多任务多用户多任务 操作相对复杂操作相对复杂 运行和维护成本较高运行和维护成本较高 功能强大和性能高功能强大和性能高 安全可靠性较高安全可靠性较高 适合企业用户使用适合企业用户使用软件学院09级基于UNIX操作系统编程引引 言言 各类操作系统的特点:各类操作系统的特点:(三)、(三)、z/OS类类: 运行大型机或巨型机硬件平台运行大型机或巨型机硬件平台 高度并发的运行模式高度并发的运行模式 操作非常复杂操作非常复杂 运行和维护成本很高运行和维护成本很高 功能非常强大和性能极高功能非常强大和性能极高 非常安全可靠非常安全可靠 适合大型企业用户使用适合大型企业用户使用软件学院09级基于UNIX操作系统编程引引 言言软件学院09级基于UNIX操作系统编程引引 言言软件学院09级基于UNIX操作系统编程引引 言言软件学院09级基于UNIX操作系统编程引引 言言软件学院09级基于UNIX操作系统编程引引 言言软件学院09级基于UNIX操作系统编程本课程内容本课程内容软件学院09级基于UNIX操作系统编程第一章第一章 UNIX操作系统概述操作系统概述软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程有代表性的其它版本有代表性的其它版本软件学院09级基于UNIX操作系统编程1.2 功能特征功能特征软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程1.3 系统层次结构系统层次结构用户和核外应用程序通过系统调用请求用户和核外应用程序通过系统调用请求OS的内核服的内核服务务, 内核提供文件系统管理、设备管理、存储管理、内核提供文件系统管理、设备管理、存储管理、进程管理和时钟管理五大服务,硬件向进程管理和时钟管理五大服务,硬件向OS内核提供内核提供中断和存储器地址映射管理等基本服务中断和存储器地址映射管理等基本服务。软件学院09级基于UNIX操作系统编程第二章第二章 UNIX操作系统入门操作系统入门主 机终端1 终端2 终端n网 络 TCP/IP网络终端服务器终 端 主机m 主机nRS2322RS2322RS2322RS2322RS2322RS2322软件学院09级基于UNIX操作系统编程装入装入OS内核内核硬件检查硬件检查安装安装rootfs形成形成0号进程号进程产生子进程产生子进程对换进程对换进程swap产生产生1号进程号进程init执行执行inittab初始化各端口初始化各端口gettygetty登录登录执行命令执行命令退出退出boot父父子子软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程Shell提示符提示符软件学院09级基于UNIX操作系统编程可用可用logout退出退出可用可用Ctrl-d退出退出表明表明: 1. 当前用户已成功退出当前用户已成功退出, 善善 后工作已完成后工作已完成 2. 本用户或其他用户可重本用户或其他用户可重 新登录进入系统新登录进入系统软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程说明:说明: 。同一个登录名可以被同一个人或多人同时使。同一个登录名可以被同一个人或多人同时使 用多次用多次 。终端号通常可以表明使用者的位置,但并不。终端号通常可以表明使用者的位置,但并不 肯定(对虚终端而言)肯定(对虚终端而言)软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程注意注意: 一个普通用户在一台终端上无论是进行登录系统、退一个普通用户在一台终端上无论是进行登录系统、退 出系统、发出命令还是终止程序等操作,都不会影响出系统、发出命令还是终止程序等操作,都不会影响 其他用户的正常操作其他用户的正常操作。软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程第三章第三章 编辑程序编辑程序vi内内存存编编辑辑缓缓冲冲区区磁盘磁盘文件系统文件系统读入已有文件或建立新文件读入已有文件或建立新文件编辑文件编辑文件将编辑结果写回到磁盘中将编辑结果写回到磁盘中窗口窗口显示部分文本显示部分文本窗窗口口上上下下移移动动软件学院09级基于UNIX操作系统编程屏幕编辑器屏幕编辑器vi、view行编辑器行编辑器edit、ex软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程_“abc”new file 0 lines, 0 charsaaaaaaaaaabbbbbbbbbbccccccccccdd“abc” 4 lines, 40 charsabc是不存在的新文件是不存在的新文件abc是已存在的文件是已存在的文件软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程文本输入模式文本输入模式命令命令模式模式软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程111111111112222222222333333333333344444444444455555555555333333333333344444444444455555555555 复制复制/粘贴命令对粘贴命令对 ( yy/p ) :aaaaaaaaaaaabbbbbbbbbbbccccccccccccc333333333333344444444444411111111111222222222255555555555当前文本当前文本发发2dd 后后下移一行按下移一行按paaaaaaaaaaaabbbbbbbbbbbcccccccccccccaaaaaaaaaaaabbbbbbbbbbbaaaaaaaaaaaabbbbbbbbbbbccccccccccccc当前文本当前文本发发2yy 后后下移两行按下移两行按p软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程Shell模式模式vi命令模式命令模式vi输入模式输入模式loginexitdatewhopasswdmanoiaESCdddwxh j k l+ -vi file:wq软件学院09级基于UNIX操作系统编程aaaaaaaaaaaaaabbbbbbbbbbbbbcccccccccccccccddeeeeeeeeeeeeeeefile 5lines, 70chars:_file已存在已存在 % ex filefile new file:_file是新文件是新文件软件学院09级基于UNIX操作系统编程11111111122222屏编命令模式屏编命令模式111111111222222222222:_行编命令模式行编命令模式软件学院09级基于UNIX操作系统编程aaaaaaaaaabbbbbbbbbbbbccccdd:_行编状态行编状态aaaaaaaaaabbbbbbbbbbbbccccdd回到屏编状态回到屏编状态从行编回到屏编后从行编回到屏编后, 光标停留在行编处理的最后一行的行首光标停留在行编处理的最后一行的行首vi软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程第四章第四章 UNIX文件系统文件系统存储区域存储区域逻辑设备逻辑设备格式划分格式划分文件系统文件系统软件学院09级基于UNIX操作系统编程.逻辑文件系统的存储结构逻辑文件系统的存储结构软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程rootbinlibbinincludespoolusrmntetctmpdevttyp1fd0cdromttyp2lp hd02tty02memtty01 hd01图例图例:目录目录普通文件普通文件设备文件设备文件软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程上级目录上级目录/data/data/xyz/data/abc父目录父目录子目录子目录目录项目录项长度长度:2 + 14 = 16字节字节软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程其他用户其他用户( o: other )的访问权限的访问权限: 只能读只能读, 不能写不能写, 不能执行不能执行同组用户同组用户( g: group )的访问权限的访问权限:可读可读, 可写可写, 不能执行不能执行本用户本用户(文件属主文件属主 u:user )的访问权限的访问权限:可读可读, 可写可写, 可执行可执行软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程如果执行命令如果执行命令: chmod 000 file 将会出现什么状况将会出现什么状况?软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程$ more testfileaaaaaaaaaabbbbbbbbbbbcccccccddddddeeeeeeeeeeeeeeeefffffffffffffgggggggggggggggg- more - (37%)软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程正正 文文 区区5行行5行行4列列4列列标题行标题行, 包括日期包括日期,时间时间,文件名和页号文件名和页号软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程文件名多于一个时自文件名多于一个时自动显示的累计信息动显示的累计信息软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程第五章第五章 shell的交互功能及进程的交互功能及进程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程等待命令输入等待命令输入分析命令分析命令退出命令退出命令产生子进程产生子进程后台进程后台进程等待子进程等待子进程执行命令执行命令gettyYN子进程子进程父进程父进程唤醒父进程唤醒父进程NY软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程$ who temp1$ sort temp1 temp2$ more temp2$ rm temp1 temp2$ who | sort | more软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程$ c=The value of a is $a$ echo $cThe value of a is he is a student软件学院09级基于UNIX操作系统编程$ b=date (反撇号中的字符串作为命令名反撇号中的字符串作为命令名)$ echo $bSat Feb 1 16:28:19 Beijing 2003 ()$ c=There is a teach$ echo $cer reading roomreading room (无变量无变量cer, 用空串替代用空串替代)$ echo $cer reading roomThere is a teacher reading room (花括号将变量名和后面的字符串区分开花括号将变量名和后面的字符串区分开)软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程运行态运行态就绪态就绪态睡眠态睡眠态等待等待I/O或或调用调用sleep得到得到CPU运行运行时间时间片到片到I/O完成完成或睡眠或睡眠时间到时间到软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程第六章第六章 UNIX通信通信软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程, , .软件学院09级基于UNIX操作系统编程connect establishedHello, teacher!Have you received my email?_Hi, student!Yes, I have received it.Bye.connect establishedHi, student!Yes, Ihave received it.Bye._Hello, teacher!Have you received my email?软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程mail输入模式输入模式mail命令模式命令模式mail user file根据命令行参数的个根据命令行参数的个数确定循环的次数数确定循环的次数软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程取所有位置参数取所有位置参数用用2求模求模, count的的值只能是值只能是0或或1下下轮轮循循环环是奇数是奇数偶数放到偶数队列中偶数放到偶数队列中软件学院09级基于UNIX操作系统编程死循环程序死循环程序, 只只能由人工中断能由人工中断如果改为如果改为break 3跳出最外层循环跳出最外层循环改为改为continue 3开始最外层循环开始最外层循环软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程函数的所有标准输出都传函数的所有标准输出都传递给了主程序的变量递给了主程序的变量函数的返回值隐含在变量中函数的返回值隐含在变量中, 由主程序使用该变量的值由主程序使用该变量的值软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程7.5 shell 程序调试程序调试软件学院09级基于UNIX操作系统编程显示读入显示读入的各语句的各语句程序运行结果程序运行结果软件学院09级基于UNIX操作系统编程执行执行(而非读入而非读入)的的语句及变量的值语句及变量的值程序的执行结果程序的执行结果如将程序第一行改为如将程序第一行改为set -vx 将会什么结果将会什么结果?软件学院09级基于UNIX操作系统编程注意注意:状态信息是追加状态信息是追加, 而不是覆盖日志文件而不是覆盖日志文件.或是或是warning等关键字等关键字闪烁字符、反白显闪烁字符、反白显示、喇叭响铃等示、喇叭响铃等在报警及时性和减轻系统负在报警及时性和减轻系统负载之间合理设定间隔时间载之间合理设定间隔时间软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程语句组的运行结果作语句组的运行结果作为条件表达式的值为条件表达式的值软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程datafile是整个是整个while循环循环(语语句组句组)的输入文件的输入文件, 而不是语而不是语句句done的输入文件的输入文件.软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程第八章第八章 系统管理系统管理软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程取值为取值为*号时表示号时表示取所有的有效值取所有的有效值软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程第九章第九章 程序开发程序开发软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程prog: main.o x1.o x2.o x3.o (目标(目标prog依赖四个依赖四个.o文件)文件) cc o prog main.o x1.o x2.o x3.o (产生(产生prog所使用的命令)所使用的命令)main.o: main.c (main.o所依赖的所依赖的main.c) cc c main.c (产生产生main.o所使用的命令所使用的命令)x1.o: x1.c cc c x1.cx2.o: x2.c cc c x2.cx3.o: x3.c cc c x3.c软件学院09级基于UNIX操作系统编程#include #include main(int argc,char main(int argc,char * *argv)argv) int i,j,x1,x2,x3,x4; int i,j,x1,x2,x3,x4; if(argc != 3) if(argc != 3) printf(Usage: prg num1 num2n); printf(Usage: prg num1 num2n); exit(0); exit(0); i=atoi(argv1); i=atoi(argv1); j=atoi(argv2); j=atoi(argv2); printf(num1 is %d, num2 is %dn, i, j); printf(num1 is %d, num2 is %dn, i, j); x1=plus(i, j); x1=plus(i, j); x2=minus(i, j); x2=minus(i, j); x3=multi(i, j); x3=multi(i, j); x4=div(i, j); x4=div(i, j); printf(%d + %d = %dn, i,j,x1); printf(%d + %d = %dn, i,j,x1); printf(%d - %d = %dn, i,j,x2); printf(%d - %d = %dn, i,j,x2); printf(%d printf(%d * * %d = %dn, i,j,x3); %d = %dn, i,j,x3); printf(%d / %d = %dn, i,j,x4); printf(%d / %d = %dn, i,j,x4); 软件学院09级基于UNIX操作系统编程int plus(int a, int b) int y; y=a+b; return(y);int minus(int a, int b) int y; y=a-b; return(y);int multi(int a, int b) int y; y=a * b; return(y);int div(int a, int b) int y; y=a / b; return(y);软件学院09级基于UNIX操作系统编程makefile的内容OPT=-Oprg: main.o plus.o minus.o multi.o div.o cc -o prg main.o plus.o minus.o multi.o div.o $OPTmain.o: main.c cc -c main.cplus.o: plus.c cc -c plus.cminus.o: minus.c cc -c minus.cmulti.o: multi.c cc -c multi.cdiv.o: div.c cc -c div.c软件学院09级基于UNIX操作系统编程软件学院09级基于UNIX操作系统编程本课程总结本课程总结1、课程内容总结、课程内容总结 . 系统功能特征系统功能特征 . 应用环境应用环境2、后续学习建议、后续学习建议 . 内核实现内核实现 . 应用开发应用开发软件学院09级基于UNIX操作系统编程213谢谢 谢谢
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!