操作系统实验课件all
2018/9/16,成都信息工程学院,1,操作系统实验(Linux内核),主讲:柳岸 E-mail:liuancq163.com,2018/9/16,成都信息工程学院,2,课程体系,专业方向必修课 先修课程: 操作系统原理、C语言程序设计、UNIX系统等 2学分,2018/9/16,成都信息工程学院,3,课程安排,总学时: 32(学时)32(实验) 考试安排:? 成绩构成:?,4,行课时间,2018/9/16,成都信息工程学院,5,教材及参考书目,教材: 操作系统实验指导基于Linux内核 徐虹 何嘉 张钟澍 清华大学出版社 参考书目: 计算机操作系统 汤子瀛 西安电子科技大学出版社 Linux 操作系统结构分析 郭玉东 西安电子科技大学出版社 Linux 内核源代码情景分析 毛德操 胡希明 浙江大学出版社 UNIX环境高级编程 W.Richard Stevens 机械工业出版社(1版) 人民邮电出版社(2版) UNIX网络编程 W.Richard Stevens 清华大学出版社,2018/9/16,成都信息工程学院,6,课程主要内容,第一部分 Linux的介绍和使用 Linux的常用命令的使用 vi及简单shell程序设计gcc和gdb的使用 第二部分 操作系统实验 进程管理实验 存储管理实验 用户接口实验,2018/9/16,成都信息工程学院,7,模块编程实验 设备管理实验 文件系统实验 操作系统的构成实验,2018/9/16,成都信息工程学院,8,实验系统的构架,成都信息工程学院,9,第一章 Linux概述,2018/9/16,成都信息工程学院,10,本次课内容,UNIX简介 什么是Linux Linux的登录与退出,2018/9/16,成都信息工程学院,11,一、UNIX简介,2018/9/16,成都信息工程学院,12,1、Unix发展,最开始是由ATT Bell实验室的研究人员Ken Thompson和Dennis Ritchie首先进行的。,UNIX之父:里奇(Ritchie) 和汤普生( Thompson ),2018/9/16,成都信息工程学院,13,20世纪60年代到70年代完成了系统内核雏形(由研制Multics系统演变为UNIX,当时Multics是当时较为著名的一个分时交互式操作系统,建立在PDP-7机器上),2018/9/16,成都信息工程学院,14,20世纪80年代初,UNIX系统商业化 Bell实验室研制的UNIX System V 等 加州大学Berkeley分校研制的BSD3 (Berkeley Software Distribution)、BSD4等 最终形成两个主要分支: AT&T UNIX系统 V (SVRx) Berkeley UNIX (BSD) 其它的UNIX变种都是基于这两个版本的,2018/9/16,成都信息工程学院,15,2、UNIX系统类型,AT&T UNIX SVR3 和SVR4(命名标准化:System V Release X,简记为SVRx) Sun SunOS(Solaris) HP HP-UX Novell Unix Ware(早期版本) Santa Cruz Operation(SCO) OpenServer、 UinxWare,2018/9/16,成都信息工程学院,16,Microsoft XENIX(早期版本) IBM AIX FreeBSD Project FreeBSD Free Software Foundation GNULinux,2018/9/16,成都信息工程学院,17,二、什么是Linux,2018/9/16,成都信息工程学院,18,什么是Linux,Linux是一套可以免费使用和自由传播的类UNIX操作系统(GNU/GPL),Linux的缔造者:Linus Torvalds,2018/9/16,成都信息工程学院,19,UNIX能够发展壮大的关键(也是Linux的优点): 1973年用C语言重写 免费、开放源代码给大学教学与研究 良好的可移植性,2018/9/16,成都信息工程学院,20,Linux的版本号分为两类: 发行套件(Distribution)版本 内核版本(Kernel) 常见的Linux套件 Red Hat、Slackware、Debian、SuSE、OpenLinux、TurboLinux、Red Flag、Mandarke 等,2018/9/16,成都信息工程学院,21,与其它操作系统的区别 Linux是从一个比较成熟的操作系统发展而来的 Linux是一种开放的、免费的操作系统 为什么选择Red Hat Linux RedHat是世界上最大的开源公司 超过50%的Linux市场份额,2018/9/16,成都信息工程学院,22,三、Linux的登录与退出,2018/9/16,成都信息工程学院,23,系统的层次结构 shell工作环境 系统登录 系统关机操作,2018/9/16,成都信息工程学院,24,1、系统的层次结构,1)硬件层 2)系统内核层 3)shell及专用程序层 4)用户程序,用 户,2018/9/16,成都信息工程学院,25,2、shell工作环境,shell是用户和Linux操作系统之间的接口 shell是一个命令语言解释器,它为用户提供需要的服务,对用户的命令提供解释,并把系统运行的结果交给用户,提示用户继续操作 不同版本的Linux可以支持不同种类的shell,2018/9/16,成都信息工程学院,26,UNIX系统中缺省的是Bourne Shell,即sh Linux系统中缺省的是Bourne Again shell,即bash 命令提示符: 一般用户的提示符为“$” 超级用户的提示符为“#”,2018/9/16,成都信息工程学院,27,3、系统登录,用户若要使用Linux系统,必须向系统管理员申请建立一个帐号 Linux中的用户分为两类: 系统管理员root 具有系统的所有权限(缺省就有,也叫根用户、超级用户) 普通用户,2018/9/16,成都信息工程学院,28,当系统启动后,根据提示输入用户名和密码回车,如果正确就会出现shell提示符注意:在Linux里,输入的字符要区分大小写,2018/9/16,成都信息工程学院,29,退出shell: exit Ctrl + d (退出当前的Shell进程) logout (注销当前登录) 进入图形界面(启动X-window): startx,2018/9/16,成都信息工程学院,30,控制台切换快捷键 ALT+F1到F6 6个控制台之间的相互切换 ALT+F7 从控制台返回图形界面 CTRL+ALT+F1到F6 从图形界面回到控制台 CTRL+ALT+BackSpace 退出图形界面,2018/9/16,成都信息工程学院,31,4、系统关机操作,系统关闭与重启有以下命令: shutdown例1:shutdown -h now例2:shutdown +1 “System will shutdown after 1 minutes“ halt 例:halt -p reboot相当于: shutdown -r now,2018/9/16,成都信息工程学院,32,第二章 Linux的使用,2018/9/16,成都信息工程学院,33,上讲回顾,UNIX简介(SVRx与BSD分支) 什么是Linux 两类版本号 Linux的登录与退出 两类用户 shell工作环境、提示符 登录、关机命令 控制台切换组合键,2018/9/16,成都信息工程学院,34,本讲主要内容,Linux文件系统结构 Linux常用命令 1、简单命令使用与命令帮助,2018/9/16,成都信息工程学院,35,一、Linux文件系统结构,2018/9/16,成都信息工程学院,36,Linux支持多种文件系统,包括ext2、ext3、swap、msdos、vfat、ntfs、iso9660 不同的文件系统和磁盘设备可以通过命令“挂载”到Linux的目录树中,成为树中的一个目录分支,2018/9/16,成都信息工程学院,37,Linux目录结构图,2018/9/16,成都信息工程学院,38,/根文件系统,目录路径的起始点。 /bin这个目录是对UNIX系统习惯的沿袭,存放着使用者最经常使用的命令。如:ls、cp。 /sbins就是Super User的意思,存放的是一些系统管理员使用的系统管理程序。 /boot主要存放启动Linux时使用的文件,包括内核映像文件。,2018/9/16,成都信息工程学院,39,/dev存放与设备有关的文件(入口)。Linux中外部设备和文件是用同种方法访问的。如:cdrom、fd0等;/dev/hda 代表第一个物理IDE硬盘。 /etc存放所有系统管理需要的特定配置文件和子目录。,2018/9/16,成都信息工程学院,40,/home用户的主目录。如:用户帐号wang的默认主目录为/home/wang。 /root系统管理员用户主目录。 /lib存放系统最基本的动态链接共享库,其作用类似于windows里的.dll文件。几乎所有的应用程序都需要用到这些共享库。,2018/9/16,成都信息工程学院,41,/mnt用于默认的用户临时文件系统挂载。如:cdrom、floppy。 /proc是一个虚拟的文件系统目录,由核心在内存中产生,用于提供关于系统的信息,这些信息在内存,不在磁盘。如cpuinfo、meminfo、modules、version等信息。 /tmp用于存放临时文件。,2018/9/16,成都信息工程学院,42,/var存放着那些不断在扩充着的文件,为了保持/usr的相对稳定,那些经常被修改的目录可以放在这个目录下,比如一般的系统日志文件就在/var/log目录中。 /usr这是个最庞大的目录,我们要用到的很多应用程序和文件都存放在这个目录下。如:,2018/9/16,成都信息工程学院,43,/usr/X11R6 存放X-Windows的目录 /usr/bin 存放着许多应用程序 /usr/sbin 给超级用户使用的一些管理程序就放在这 /usr/include Linux下开发和编译应用程序需要的头文件,一般放在这里 /usr/lib 存放一些常用的动态链接共享库和静态档案库 /usr/local 这是提供给一般用户的/usr目录,在这安装软件最适合 /usr/src Linux开放的源代码,就存在这个目录,2018/9/16,成都信息工程学院,44,二、Linux常用命令,2018/9/16,成都信息工程学院,45,1、简单命令使用与命令帮助 pwd、cd、cat、ls、chmod、man 2、文件与目录常用操作命令 mkdir、cp、mv、ln、rm、find、more 3、其它一些命令 date、who、whoami、hostname、uname、which、type,常用的Linux命令,2018/9/16,成都信息工程学院,46,1、简单命令使用与命令帮助 pwd、cd、cat、ls、chmod、man,2018/9/16,成都信息工程学院,47,简单命令使用,命令格式:command -options arguments 执行命令和执行应用程序teacherserver teacher$vi 或teacherserver teacher$/bin/vi 多命令行和多行命令 teacherserver teacher$pwd;ls -l,