《第2章操作系统用户界面精选PPT.ppt》由会员分享,可在线阅读,更多相关《第2章操作系统用户界面精选PPT.ppt(52页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第2 2章操作系统用户章操作系统用户界面界面第1页,此课件共52页哦22.1简介简介2.2一般用户的输入输出界面一般用户的输入输出界面2.2.1作业的定义作业的定义作业作业(Job)在一次应用业务处理过程中,从输入开始到输出结束,用户要求计在一次应用业务处理过程中,从输入开始到输出结束,用户要求计算机所做的有关该次业务处理的全部工作称为一个作业。算机所做的有关该次业务处理的全部工作称为一个作业。作业步作业步一个作业所经历的加工步骤(如编译、连接和运行等)称为作业步。一个作业所经历的加工步骤(如编译、连接和运行等)称为作业步。2.2.2作业组织作业组织作业由三部分组成作业由三部分组成程序、数据
2、和作业说明书。程序、数据和作业说明书。JCB(JobControlBlock)由作业说明书在系统中生成。由作业说明书在系统中生成。第第2 2章章 操作系统用户界面操作系统用户界面第2页,此课件共52页哦3作业说明书的主要内容作业说明书的主要内容第第2 2章章 操作系统用户界面操作系统用户界面作业基本情况描述作业基本情况描述用户名用户名作业名作业名使用语言名使用语言名允许最大处理时间等允许最大处理时间等作业控制描述作业控制描述控制方式控制方式操作顺序操作顺序出错处理等出错处理等作业资源要求描述作业资源要求描述要求处理时间要求处理时间内存空间内存空间外设类型和数量外设类型和数量处理机优先级处理机优
3、先级库函数或实用程序等库函数或实用程序等第3页,此课件共52页哦4JCB的建立的建立JCB包含了系统对作业进行管理所必须的信息:包含了系统对作业进行管理所必须的信息:作业名、作业估计执行时间、优先数、作业建立时间、作业说明作业名、作业估计执行时间、优先数、作业建立时间、作业说明书文件名、程序语言类型、内存要求、外设要求、作业状态以及作业书文件名、程序语言类型、内存要求、外设要求、作业状态以及作业在外存中的存储地址等。在外存中的存储地址等。作业的四种状态:作业的四种状态:1.提交状态提交状态2.后备状态后备状态3.执行状态执行状态4.完成状态完成状态第第2 2章章 操作系统用户界面操作系统用户界
4、面第4页,此课件共52页哦52.2.3一般用户的输入输出方式一般用户的输入输出方式SPOOLING(或或SPOOL)SimultaneousPeripheralOperationsOn-LineSPOOLING又可译作外围设备同时联机操作。又可译作外围设备同时联机操作。“斯普林斯普林”操作或操作或“假脱机假脱机”操作操作第第2 2章章 操作系统用户界面操作系统用户界面输入输出方式输入输出方式1.联机输入输出方式联机输入输出方式2.脱机输入输出方式脱机输入输出方式3.直接耦合方式直接耦合方式4.SPOOLING系统系统5.网络联机方式网络联机方式第5页,此课件共52页哦62.3命令控制界面命令控
5、制界面用户接口用户接口 程序一级的接口程序一级的接口程序员接口程序员接口 作业一级的接口作业一级的接口操作员接口操作员接口作业控制方式分为两大类:脱机控制方式和联机控制方式(即作业控制方式分为两大类:脱机控制方式和联机控制方式(即批处理控制方式和交互控制方式)批处理控制方式和交互控制方式)脱机控制方式脱机控制方式用作业控制语言编写作业说明书用作业控制语言编写作业说明书联机控制方式联机控制方式用户使用系统提供的操作命令和系统会话,交互用户使用系统提供的操作命令和系统会话,交互地控制程序执行和管理计算机系统。地控制程序执行和管理计算机系统。第第2 2章章 操作系统用户界面操作系统用户界面第6页,此
6、课件共52页哦7联机控制方式的命令种类联机控制方式的命令种类第第2 2章章 操作系统用户界面操作系统用户界面联机控制方式的命令种类联机控制方式的命令种类1.环境设置环境设置2.执行权限管理执行权限管理3.系统管理系统管理4.文件管理文件管理5.编辑、编译、链接装配编辑、编译、链接装配6.通信通信7.资源要求资源要求第7页,此课件共52页哦82.4Linux与与Windows的命令控制界面的命令控制界面2.4.1Linux的的命令控制界面命令控制界面Linux命令主要有以下命令主要有以下9类:类:(1)系统维护及管理命令系统维护及管理命令date显示和设置系统日期和时间显示和设置系统日期和时间s
7、etenv查询或设置环境变量查询或设置环境变量(setenvironmentvariable)(2)文件操作及管理命令文件操作及管理命令ls显示文件及目录显示文件及目录find查找文件查找文件(3)系统维护及管理命令系统维护及管理命令kill发送一个发送一个signal给某一个给某一个processat在指定的时间执行指令在指定的时间执行指令第第2 2章章 操作系统用户界面操作系统用户界面第8页,此课件共52页哦9(4)磁盘及设备管理命令磁盘及设备管理命令df检查文件系统的磁盘空间占用情况检查文件系统的磁盘空间占用情况(diskfree)du显示磁盘空间的使用情况显示磁盘空间的使用情况(dis
8、kusage)mount挂载设备挂载设备(5)用户管理命令用户管理命令adduser新增用户帐户新增用户帐户userdel删除用户帐号删除用户帐号(6)文档操作命令文档操作命令csplit分割文件分割文件(Splitafileintocontext-determinedpieces)sort对文件中的各行进行排序对文件中的各行进行排序第第2 2章章 操作系统用户界面操作系统用户界面第9页,此课件共52页哦10(7)网络通信命令网络通信命令netstat显示网络连接、路由表和网络接口信息显示网络连接、路由表和网络接口信息ifconfig显示或设置网络设备显示或设置网络设备(8)程序开发命令程序开
9、发命令ccc编译编译link链接链接(9)XWindow管理命令管理命令startx启动启动XWindowXF86setup图形界面下运行的配置程序图形界面下运行的配置程序第第2 2章章 操作系统用户界面操作系统用户界面第10页,此课件共52页哦11Shell程序组成:程序组成:(1)命令或命令或Shell程序;程序;(2)位置参数;位置参数;(3)变量及特殊字符;变量及特殊字符;(4)表达式比较;表达式比较;(5)控制流程语句,例如控制流程语句,例如while,case等;等;(6)函数。函数。例:备份当前目录下的所有文件。例:备份当前目录下的所有文件。mkdirbackupforfilei
10、nlsdocp$filebackup/$fileif$?ne0thenecho“copying$fileerror”fidone第第2 2章章 操作系统用户界面操作系统用户界面第11页,此课件共52页哦12shell预定义变量是由预定义变量是由$符和另一个符号组成的,常用的符和另一个符号组成的,常用的shell预定义变量有:预定义变量有:$#:位置参数的数量:位置参数的数量$*:所有位置参数的内容:所有位置参数的内容$?:命令执行后返回的状态:命令执行后返回的状态$:当前进程的进程号:当前进程的进程号$!:后台运行的最后一个进程号:后台运行的最后一个进程号$0:当前执行的进程名:当前执行的进程
11、名其中,其中,“$?”用于检查上一个命令执行是否正确用于检查上一个命令执行是否正确(在在Linux中,命令退出状态为中,命令退出状态为0表示该命令正确执行,任何非表示该命令正确执行,任何非0值表示命值表示命令出错令出错)。第第2 2章章 操作系统用户界面操作系统用户界面第12页,此课件共52页哦132.4.2Windows的的命令控制界面命令控制界面Windows命令主要有以下命令主要有以下4类:类:(1)系统信息命令系统信息命令timeDisplaysorsetsthesystemtime.显示或设置系统时间显示或设置系统时间dateDisplaysorsetsthedate.显示或设置日期
12、显示或设置日期memDisplaystheamountofusedandfreememoryinyoursystem.driverqueryEnablesanadministratortoenumerateanddisplaythelistofinstalleddevicedriversaswellastheirproperties.systeminfoThiscommandlinetoolenablesanadministratortoqueryforbasicsystemconfigurationinformation.第第2 2章章 操作系统用户界面操作系统用户界面第13页,此课件共52
13、页哦14(2)系统操作命令系统操作命令shutdown关机关机runas允许用户用其他权限运行指定的工具和程序,而不是用户允许用户用其他权限运行指定的工具和程序,而不是用户当前登录提供的权限。当前登录提供的权限。taskkillThiscommandlinetoolcanbeusedtoendoneormoreprocesses.Processescanbekilledbytheprocessidorimagename.(3)文件系统命令文件系统命令copyCopiesoneormorefilestoanotherlocation.del删除文件删除文件mkdir建立目录建立目录(4)网络通信
14、命令网络通信命令ping检查网络是否能够连通检查网络是否能够连通netstat显示当前正在活动的网络连接的详细信息显示当前正在活动的网络连接的详细信息route主要用来管理本机路由表,可以查看,添加、修改或删除路由主要用来管理本机路由表,可以查看,添加、修改或删除路由表条目。表条目。第第2 2章章 操作系统用户界面操作系统用户界面第14页,此课件共52页哦15n&同时执行多条命令,而不管命令是否执行成功同时执行多条命令,而不管命令是否执行成功。Usage:第一条命令:第一条命令&第二条命令第二条命令&第三条命令第三条命令.n&同时执行多条命令,当碰到执行出错的命令后将不执行后面的命同时执行多条
15、命令,当碰到执行出错的命令后将不执行后面的命令,如果一直没有出错则一直执行完所有命令。令,如果一直没有出错则一直执行完所有命令。Usage:第一条命令:第一条命令&第二条命令第二条命令&第三条命令第三条命令.n|同时执行多条命令,当碰到执行正确的命令后将不执行后面的命令,如同时执行多条命令,当碰到执行正确的命令后将不执行后面的命令,如果没有出现正确的命令则一直执行完所有命令。果没有出现正确的命令则一直执行完所有命令。Usage:第一条命令:第一条命令|第二条命令第二条命令|第三条命令第三条命令.1.直接在命令行输出命令直接在命令行输出命令Systeminfo&mem2.批处理批处理echoof
16、fmkdirtestechohellopause第第2 2章章 操作系统用户界面操作系统用户界面第15页,此课件共52页哦16例:例:echooffmem%1meminfo.txtechogeneratememoryinfook!echoofftype%1*.txtechotypeok!echooffmkdirtestcallexam2.battestcallexam3.battestechocallok!pause第第2 2章章 操作系统用户界面操作系统用户界面第16页,此课件共52页哦172.5系统调用系统调用进程进程(Process)是一个在功能上独立的程序的一次执行过程。是一个在功能上
17、独立的程序的一次执行过程。线程线程(Thread)是进程中进行数据处理操作的执行单位,每个进程中是进程中进行数据处理操作的执行单位,每个进程中至少拥有一个线程来进行数据处理操作。至少拥有一个线程来进行数据处理操作。第第2 2章章 操作系统用户界面操作系统用户界面系统调用分类系统调用分类1.设备管理设备管理2.文件管理文件管理3.进程控制进程控制4.进程通信进程通信5.存储管理存储管理6.线程管理线程管理第17页,此课件共52页哦18陷阱陷阱(Trap)处理机构处理机构陷阱陷阱(Trap)处理机构处理机构在系统中为控制系统调用服务在系统中为控制系统调用服务的机构。的机构。陷阱指令陷阱指令(或称访
18、管指令或称访管指令)由于系统调用而引起处理机中由于系统调用而引起处理机中断的指令。断的指令。系统态系统态(管态管态)处理机在系统程序中执行。处理机在系统程序中执行。用户态用户态(目态目态)处理机在用户程序中执行。处理机在用户程序中执行。第第2 2章章 操作系统用户界面操作系统用户界面第18页,此课件共52页哦192.6Linux和和Windows的系统调用的系统调用2.6.1Linux系统调用系统调用Linux系统调用从功能上可分为如下系统调用从功能上可分为如下6类:类:(1)设备管理的系统调用设备管理的系统调用(2)文件系统操作的系统调用文件系统操作的系统调用(3)进程控制的系统调用进程控制
19、的系统调用(4)存储管理的系统调用存储管理的系统调用(5)管理用的的系统调用管理用的的系统调用(6)通信的系统调用通信的系统调用第第2 2章章 操作系统用户界面操作系统用户界面第19页,此课件共52页哦20例:文件复制。例:文件复制。#include#include#defineSIZE1024voidfilecopy(char*Infile,char*Outfile)charBufferSIZE;intIn_fh,Out_fh,Count;if(In_fh=open(Infile,O_RDONLY)=-1)printf(OpeningInfile);if(Out_fh=open(Outfil
20、e,(O_WRONLY|O_CREAT|O_TRUNC),(S_IRUSR|S_IWUSR)=-1)printf(OpeningOutfile);while(Count=read(In_fh,Buffer,sizeof(Buffer)0)if(write(Out_fh,Buffer,Count)!=Count)printf(Writingdata);if(Count=-1)printf(Readingdata);close(In_fh);close(Out_fh);第第2 2章章 操作系统用户界面操作系统用户界面第20页,此课件共52页哦21intopen(constchar*pathname
21、,intflags);intopen(constchar*pathname,intflags,mode_tmode);intclose(intfd);open函数有两个形式,其中函数有两个形式,其中pathname是要打开的文件名是要打开的文件名(包含路径名称,包含路径名称,缺省是认为在当前目录下缺省是认为在当前目录下)。flags可以取下面的一个值或者是几个值的组合。可以取下面的一个值或者是几个值的组合。O_RDONLY以只读的方式打开文件以只读的方式打开文件O_WRONLY以只写的方式打开文件以只写的方式打开文件O_RDWR以读写的方式打开文件以读写的方式打开文件O_APPEND以追加的方
22、式打开文件以追加的方式打开文件O_CREAT创建一个文件创建一个文件O_EXCL如果使用了如果使用了O_CREAT而且文件已经存在,就会发生一个错而且文件已经存在,就会发生一个错误误O_NONBLOCK以非阻塞的方式打开一个文件以非阻塞的方式打开一个文件O_TRUNC如果文件已经存在,则删除文件的内容如果文件已经存在,则删除文件的内容第第2 2章章 操作系统用户界面操作系统用户界面第21页,此课件共52页哦22在在fcntl.h中有定义:中有定义:#defineO_RDONLY00000000#defineO_WRONLY00000001#defineO_RDWR00000002#define
23、O_CREAT00000100#defineO_EXCL00000200#defineO_NOCTTY00000400#defineO_TRUNC00001000#defineO_APPEND00002000#defineO_NONBLOCK00004000NOCTTY(nocontrollingterminal)第第2 2章章 操作系统用户界面操作系统用户界面第22页,此课件共52页哦23前面三个标志只能使用任意的一个,如果使用了前面三个标志只能使用任意的一个,如果使用了O_CREAT标志,那么我们要使用标志,那么我们要使用open的第二种形式,还要指定的第二种形式,还要指定mode标志,用
24、来表示文件的访问权限。标志,用来表示文件的访问权限。mode可以是以下情况的组合:可以是以下情况的组合:S_IRUSR用户可以读用户可以读S_IWUSR用户可以写用户可以写S_IXUSR用户可以执行用户可以执行S_IRWXU用户可以读写执行用户可以读写执行S_IRGRP组可以读组可以读S_IWGRP组可以写组可以写S_IXGRP组可以执行组可以执行S_IRWXG组可以读写执行组可以读写执行S_IROTH其他人可以读其他人可以读S_IWOTH其他人可以写其他人可以写S_IXOTH其他人可以执行其他人可以执行S_IRWXO其他人可以读写执行其他人可以读写执行S_ISUID设置用户执行设置用户执行I
25、DS_ISGID设置组的执行设置组的执行ID第第2 2章章 操作系统用户界面操作系统用户界面第23页,此课件共52页哦24在在stat.h中有定义:中有定义:#defineS_IRWXU00700#defineS_IRUSR00400#defineS_IWUSR00200#defineS_IXUSR00100#defineS_IRWXG00070#defineS_IRGRP00040#defineS_IWGRP00020#defineS_IXGRP00010#defineS_IRWXO00007#defineS_IROTH00004#defineS_IWOTH00002#defineS_IXO
26、TH00001#defineS_ISUID0004000#defineS_ISGID0002000第第2 2章章 操作系统用户界面操作系统用户界面第24页,此课件共52页哦252.6.2Windows系统调用系统调用常用的常用的API(ApplicationProgrammingInterface)函数调用可分为如下函数调用可分为如下五类:五类:(1)窗口管理类窗口管理类(2)图形设备接口图形设备接口GDI(GraphicsDeviceInterface)类类(3)系统服务类系统服务类(4)国际特性类国际特性类(5)网络服务类网络服务类GDI32.DLL屏幕显示及打印功能的函数集屏幕显示及打印
27、功能的函数集USER32.DLL鼠标、键盘、通信端口、声音、时钟功能的函数集鼠标、键盘、通信端口、声音、时钟功能的函数集KERNEL32.DLL文件及内存管理文件及内存管理(核心部分核心部分)功能的函数集功能的函数集MPR.DLLWindows32网络接口库网络接口库MPRMultipleProvider Router第第2 2章章 操作系统用户界面操作系统用户界面第25页,此课件共52页哦26#include/入口函数入口函数intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,PSTRszCmdLine,intnCmdshow
28、)HANDLEhFile;LPTSTRlpBuffer=HelloWorld!;/创建文件创建文件hFile=CreateFile(C:File.txt,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);CloseHandle(hFile);TCHARszBuf128;DWORDdwRead;DWORDdwWritten;第第2 2章章 操作系统用户界面操作系统用户界面第26页,此课件共52页哦27/打开文件打开文件hFile=CreateFile(C:File.txt,GENERIC_READ|
29、GENERIC_WRITE,0,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);/向文件中写入一个字符串向文件中写入一个字符串WriteFile(hFile,lpBuffer,strlen(lpBuffer)+1,&dwRead,NULL);SetFilePointer(hFile,0,NULL,FILE_BEGIN);/从文件中读出一个字符串并将它显示在对话框中从文件中读出一个字符串并将它显示在对话框中if(ReadFile(hFile,szBuf,strlen(lpBuffer)+1,&dwWritten,NULL)MessageBox(NULL,
30、szBuf,EXAM,MB_OK);CloseHandle(hFile);return0;第第2 2章章 操作系统用户界面操作系统用户界面第27页,此课件共52页哦28WinMain函数接收函数接收4个参数,这些参数都是在系统调用个参数,这些参数都是在系统调用WinMain函数时,传递给应用程序的。函数时,传递给应用程序的。n第一个参数第一个参数hInstance表示该程序当前运行的实例的句柄,这是一个表示该程序当前运行的实例的句柄,这是一个数值。当程序在数值。当程序在Windows下运行时,它唯一标识运行中的实例(注意,下运行时,它唯一标识运行中的实例(注意,只有运行中的程序实例,才有实例句
31、柄)。一个应用程序可以运行多只有运行中的程序实例,才有实例句柄)。一个应用程序可以运行多个实例,每运行一个实例,系统都会给该实例分配一个句柄值,并通个实例,每运行一个实例,系统都会给该实例分配一个句柄值,并通过过hInstance参数传递给参数传递给WinMain函数。函数。n第二个参数第二个参数hPrevInstance表示当前实例的前一个实例的句柄。表示当前实例的前一个实例的句柄。通过查看通过查看MSDN我们可以知道,在我们可以知道,在Win32环境下,这个参数总是环境下,这个参数总是NULL,即在,即在Win32环境下,这个参数不再起作用。环境下,这个参数不再起作用。第第2 2章章 操作
32、系统用户界面操作系统用户界面第28页,此课件共52页哦29n第三个参数第三个参数lpCmdLine是一个以空终止的字符串,指定传递是一个以空终止的字符串,指定传递给应用程序的命令行参数。例如:在给应用程序的命令行参数。例如:在D盘下有一个盘下有一个sunxin.txt文文件,当我们用鼠标双击这个文件时将启动记事本程序件,当我们用鼠标双击这个文件时将启动记事本程序(notepad.exe),此时系统会将),此时系统会将D:sunxin.txt作为命令行参数传作为命令行参数传递给记事本程序的递给记事本程序的WinMain函数,记事本程序在得到这个文件函数,记事本程序在得到这个文件的全路径名后,就在
33、窗口中显示该文件的内容。要在的全路径名后,就在窗口中显示该文件的内容。要在VC+开发开发环境中向应用程序传递参数,可以单击菜单【环境中向应用程序传递参数,可以单击菜单【Project】【Settings】,选择】,选择“Debug”选项卡,在选项卡,在“Programarguments”编编辑框中输入你想传递给应用程序的参数。辑框中输入你想传递给应用程序的参数。n第四个参数第四个参数nCmdShow指定程序的窗口应该如何显示,例如指定程序的窗口应该如何显示,例如最大化、最小化、隐藏等。这个参数的值由该程序的调用者所最大化、最小化、隐藏等。这个参数的值由该程序的调用者所指定,应用程序通常不需要去
34、理会这个参数的值。指定,应用程序通常不需要去理会这个参数的值。第第2 2章章 操作系统用户界面操作系统用户界面第29页,此课件共52页哦30UNIX发展历史与特点发展历史与特点 UNIX概述概述Amulti-user,multitaskingOSATime-SharingSystemKernelandShell UNIX的两大流派:的两大流派:(1)UNIXSystemVRes4.0,记:,记:SVR4(2)UNIX4.4BSDBSDBerkeleySoftwareDistribution第第2 2章章 操作系统用户界面操作系统用户界面第30页,此课件共52页哦31 UNIX的移植产品或变种的
35、移植产品或变种如:如:SUN公司的公司的Solaris2.6,IBM公司的公司的AIX4.2,微机上的微机上的SCOUNIX,Xenix和和Linux等。等。UNIX标准化标准化(1)SVID标准标准国际国际UNIX组织和组织和AT&T公司于公司于85年宣布的年宣布的SystemVInterfaceDefinition,即,即SVID。该文件在系统调用、例行程序库和实用程序等方面该文件在系统调用、例行程序库和实用程序等方面描述了描述了UNIXSystemV。它给出了定义它给出了定义UNIXSystemV的基准,的基准,UNIXSystemV的所有提供者必须遵循这一基准。的所有提供者必须遵循这一
36、基准。(2)POSIX规范(规范(PortableOperatingSystemInterface)美国的美国的UNIX用户协会和美国的用户协会和美国的IEEE学会在学会在85年制订年制订的一个可移植的操作系统规范。的一个可移植的操作系统规范。它包括可移植操作系统的规范、命令语言它包括可移植操作系统的规范、命令语言Shell和其和其它工具、以及验证测试方法等。它工具、以及验证测试方法等。第第2 2章章 操作系统用户界面操作系统用户界面第31页,此课件共52页哦32UNIX系统的特点系统的特点(1)UNIX系统是一个可供多用户同时操作的会话式分时操作系统是一个可供多用户同时操作的会话式分时操作系
37、统。系统。(2)UNIX系统向用户提供了两种用户友好的界面或接口:系统向用户提供了两种用户友好的界面或接口:程序一级的界面程序一级的界面系统调用系统调用 操作一级的界面操作一级的界面命令命令(Shell)(3)UNIX系统具有一个可装卸的分层树型结构文件系统。系统具有一个可装卸的分层树型结构文件系统。(4)UNIX系统把所有的外部设备都当作文件,并分别赋予它系统把所有的外部设备都当作文件,并分别赋予它们对应的文件名。们对应的文件名。(5)UNIX系统核心程序的绝大部分源代码和系统上的支系统核心程序的绝大部分源代码和系统上的支持软件都用持软件都用C语言编写。且语言编写。且UNIX系统是一个开放式
38、系统。系统是一个开放式系统。第第2 2章章 操作系统用户界面操作系统用户界面第32页,此课件共52页哦33u如何在如何在Windows主机上练习主机上练习Unix命令命令 申请帐号申请帐号http:/www.cyberspace.orgInternet上的上的Unix主机主机(美国美国),提供免费帐号供使用。可以先去那里申请一个帐号,然后就可以,提供免费帐号供使用。可以先去那里申请一个帐号,然后就可以在那里练习在那里练习Unix命令。命令。连接连接成功申请帐号之后,可用下列方法连上主机:成功申请帐号之后,可用下列方法连上主机:(1)DOS在提示符下输入在提示符下输入telnetcyberspa
39、ce.org(2)Windows在在IE地址栏里地址栏里telnet:/cyberspace.org输入用户名和密码后,出现系统提示符:输入用户名和密码后,出现系统提示符:grex.cyberspace.org%第第2 2章章 操作系统用户界面操作系统用户界面第33页,此课件共52页哦34uUnix通过通过Shell实现系统与用户的交互,在实现系统与用户的交互,在Shell提示符下,用户提示符下,用户键入键入Unix命令。命令。UNIXSystemV的常用的常用Shell是是BourneShell(现在多为现在多为KornShell),缺省提示符是,缺省提示符是$。Bourneshell可以说
40、是第一个可以说是第一个UNIXshell,它是由,它是由AT&T贝尔实贝尔实验室的验室的StephenBourne所编写。所编写。Kornshell是是AT&T贝尔实验室的贝尔实验室的DavidKorn所开发,是所开发,是Bourneshell的增强版本,综合了的增强版本,综合了Bourneshell和和Cshell的特点和约定,的特点和约定,而而Kornshell则比则比Bourne和和Cshell执行得更快。执行得更快。UNIXBSD的常用的常用Shell是是CShell,缺省提示符是,缺省提示符是%。Cshell是由是由Berkeley的的BillJoy编写,是标准编写,是标准BSD(B
41、erkeleySystemDistribution)命令解释。命令解释。第第2 2章章 操作系统用户界面操作系统用户界面第34页,此课件共52页哦35UNIX系统结构系统结构第第2 2章章 操作系统用户界面操作系统用户界面用户程序用户程序硬件硬件内核内核Shell文档文档管理管理各种各种实用程序实用程序编译程序编译程序文件和文件和数据库数据库系统管理用系统管理用实用程序实用程序编辑编辑软件软件通信用通信用实用软件实用软件第35页,此课件共52页哦36UNIX的命令控制界面的命令控制界面UNIX通过通过Shell向用户提供的命令可分为以下两类:向用户提供的命令可分为以下两类:基本类基本类(1)系
42、统访问命令,例如系统访问命令,例如login登录;登录;logout退出。退出。(2)编辑和文件管理命令,编辑和文件管理命令,例如例如vi,emacs编辑文件;编辑文件;cp复制文件;复制文件;rm删除目录或文件;删除目录或文件;ls列出文件或目录名。列出文件或目录名。(3)编译、链接命令,例如编译、链接命令,例如ccC编译;编译;link链接。链接。(4)维护、管理维护、管理命令,例如命令,例如adduser增加用户;增加用户;chown改变文件或目录的所有权。改变文件或目录的所有权。(5)调试命令,调试命令,例如例如dbx程序调试器。程序调试器。(6)记帐、日期等的命令,例如记帐、日期等的
43、命令,例如date打印或设置系统日期和打印或设置系统日期和时间时间。(7)网络通信用命令,例如网络通信用命令,例如mailx电子邮件程序电子邮件程序(发送或接收发送或接收电子邮件电子邮件)。第第2 2章章 操作系统用户界面操作系统用户界面第36页,此课件共52页哦37 特殊类特殊类(1)后台命令后台命令“&”例如:例如:ccpgm.c&要求系统在空闲时编译程序要求系统在空闲时编译程序pgm.c。(2)通配符通配符“*”和和“?”*任意字符串,?任意字符串,?任意字符任意字符例如:例如:a*.c,a?.c(3)输入输出重定向输入输出重定向“”、“”、输出重定向。输出重定向。0标准输入标准输入(键
44、盘键盘),1标准输出标准输出(显示器显示器),2标准错误信息标准错误信息输出。输出。例如:例如:ab,ab,lsb(4)管道管道命令命令“|”例如:例如:ls|sort|prlsfile1,sortfile1file2,prfile2(5)滤波器功能滤波器功能grep查找字符串查找字符串(模式匹配模式匹配)。例如:。例如:grepabcfile1Sort排序。排序。tail输出文件的末尾部分输出文件的末尾部分(缺省为缺省为10行行)。第第2 2章章 操作系统用户界面操作系统用户界面第37页,此课件共52页哦38UNIX的编程界面的编程界面UNIX的系统调用可分为如下几类:的系统调用可分为如下几
45、类:1.有关设备管理的系统调用有关设备管理的系统调用ioctlI/O总控制函数总控制函数,read读文件读文件,write写文件写文件,open打开文件打开文件,close关闭文件。关闭文件。2.有关文件系统的系统调用有关文件系统的系统调用read读文件读文件,write写文件写文件,open打开文件打开文件,close关闭关闭文件,文件,creat创建新文件,创建新文件,unlink删除链接,删除链接,execl执行文件,执行文件,fcntl文件控制,文件控制,flock文件加文件加/解锁,解锁,stat取文件状态信息,取文件状态信息,mount安装文件系统。安装文件系统。第第2 2章章 操
46、作系统用户界面操作系统用户界面第38页,此课件共52页哦39文件系统的安装与拆卸文件系统的安装与拆卸:nmount安装文件系统安装文件系统格式:格式:#mountttypedevicemountpoint例:例:#mounttmsdos/dev/fd0/mnt#mounttvfat/dev/fd0/mntlumount拆卸文件系统拆卸文件系统格式:格式:#umountdevice例:例:#umount/dev/fd0#umount/mnt第第2 2章章 操作系统用户界面操作系统用户界面第39页,此课件共52页哦40例:合并文件例:合并文件main(argc,argv)intargc;char*
47、argv;intfd1,fd2,fd3,n;charbuf512,ch=n;fd1=open(argv1,0);/*打开打开argv1对应的文件,返回标识符对应的文件,返回标识符fd1*/fd2=open(argv2,0);/*打开打开argv2对应的文件,返回标识符对应的文件,返回标识符fd2*/fd3=creat(argv3,0664);/*创建创建argv3对应的文件,返回标识符对应的文件,返回标识符fd3*/while(n=read(fd1,buf,512)0)write(fd3,buf,n);write(fd3,&ch,1);while(n=read(fd2,buf,512)0)wr
48、ite(fd3,buf,n);close(fd1);close(fd2);close(fd3);第第2 2章章 操作系统用户界面操作系统用户界面第40页,此课件共52页哦41文件文件网络连接、网络连接、FIFO、管道、终端、文件、管道、终端、文件文件描述符文件描述符(fd)一个和打开的文件相关联的整数一个和打开的文件相关联的整数 fd=open(name,mode)name文件名文件名mode文件的存取权文件的存取权(0读,读,1写,写,2读写读写)fd=creat(name,mode)name文件名文件名mode文件的存取权文件的存取权xxxxxxxxxrwxrwxrwx(r读,读,w写,写
49、,x执行执行execute)文件主文件主Owner文件主同组用户文件主同组用户Group其他用户其他用户Others第第2 2章章 操作系统用户界面操作系统用户界面第41页,此课件共52页哦423.有关进程控制的系统调用有关进程控制的系统调用fork创建一个新进程,创建一个新进程,wait等待子进程终止,等待子进程终止,exit中止进程,中止进程,getpid获取进程标识号,获取进程标识号,getppid获取父进程标识号,获取父进程标识号,getpriority获获取调度优先级,取调度优先级,nice改变分时进程的优先级,改变分时进程的优先级,kill向进程或进程组发向进程或进程组发信号,信号
50、,signal允许进程处理可能发生的意外事件和中断,允许进程处理可能发生的意外事件和中断,pause挂起挂起进程等待信号,进程等待信号,pipe创建管道。创建管道。4.有关进程通信的系统调用有关进程通信的系统调用5.有关存储管理的系统调用有关存储管理的系统调用6.管理用系统调用管理用系统调用第第2 2章章 操作系统用户界面操作系统用户界面第42页,此课件共52页哦43例:创建进程例:创建进程main()inti;while(i=fork()=-1);/*若创建失败,则反复创建若创建失败,则反复创建*/printf(i=%dn,i);/*打印进程标识符打印进程标识符*/if(i)printf(I