UNIX操作系统基础.ppt
Unix操作系统基础,电子科技大学 计算机学院 陆 庆 luqinguestc.edu.cn,引 言,一、课程的主要内容: .介绍UNIX操作系统的特点及其使用 .掌握UNIX操作系统的基本结构和应用 .通过实验熟悉UNIX系统的平台配置、系统设计、系统启动、命令操作、文件系统操作及Vi等编辑环境和工具的使用。,引 言,二、学习目的: . 通过对UNIX操作系统的学习,认识多用户、多任务、分时操作系统的使用 . 感性认识进程并发、资源共享、文件等操作系统基本概念和实现原理 .为学习操作系统原理打下基础,引 言,三、教学特点: 本课程注重理论与实践相结合,通过实验加深对理论知识的认识和理解。 通过对目前流行的一种UNIX系统(Linux/Aix)作为具体的实验平台,了解一般的Unix系统的特征及使用,达到举一反三的目的。,引 言,四、教学安排与要求:第一章 UNIX操作系统概述第二章 UNIX使用入门第三章 编辑程序vi第四章 UNIX文件系统第五章 UNIX通信第六章 shell的交互功能及进程管理,引言,五、使用教材及参考书: UNIX 初级教程(第三版) 美 Amir Afzal 著 向勇 何浩 李东生 等译 电子工业出版社,2001年4月出版,第一章 UNIX操作系统概述,发展历史1965年 由AT&T,MIT和GE联合开发Multics ( Multiplexed Information and Computing Service) 1969年 Ken Thompson 和 Dennis Ritchie在PDP7 上用汇编语言开发出UNIX1970年 在PDP-11系列机上(11/20,11/40,11/45) 用汇编开发出UNIX v.1。在此过程中, 机器的硬件逐渐复杂,UNIX所支持的特 征也不断丰富,增加了文字处理程序。,1975年 发表UNIX v.6 并广泛扩散到大学和科研 单位, 为后期发展奠定了良好的基础1978年 优化后发布UNIX v.7 - UNIX的第一个 商业版本 - 我国开始研究应用的最早版 本1981年 AT&T发布UNIX System III, 完全转向为 社会提供的商品软件1983年 AT&T发布UNIX System V, 系统功能已 趋于稳定和完善. 此后System V又有一系 列的公布号: 1.0/2.0/2.3/3.5/4.0/4.2 等, 现 在最后版本为 System V Release 4(SVRV),有代表性的其它版本,加州大学伯克利分校的BSD (Berkeley Software Distribution)版本, 主要用于工 程设计和科学计算Microsoft和SCO公司开发的SCO XENIX SCO UNIX 和 OpenServer等, 主要应用 在基于Inter x86体系结构的系统上开放源代码的Linux, UNIX的体系结构加 MS Windows形式的图形用户界面,主要 应用在基于Inter x86体系结构的系统上,二. UNIX系统特征,可移植性强 . UNIX操作系统大量代码为C语言编写 . C语言具有跨平台特性 2. 多用户、多任务的分时系统 . 人机间实时交互数据 . 多个用户可同时使用一台主机 . 每个用户可同时执行多个任务3. 软件复用 . 每个程序模块完成单一的功能 . 程序模块可按需任意组合 . 较高的系统和应用开发效率,与设备独立的输入/输出操作 . 打印机、终端视为文件 . 输入/输出操作与设备独立界面方便高效 . 内部: 系统调用丰富高效 . 外部: shell命令灵活方便可编程 . 应用: GUI 清晰直观功能强大安全机制完善 . 口令、权限、加密等措施完善 . 抗病毒结构 . 误操作的局限和自动恢复功能,多国语言支持 . 支持全世界现有的几十种主要语言网络和资源共享 . 内部: 多进程结构易于资源共享 . 外部: 支持多种网络协议系统工具和系统服务 .100多个系统工具(即命令),完成 各种功能 .系统服务用于系统管理和维护,三、Unix系统的组成,Unix系统的组成,内核:是Unix系统的核心部分,能与硬件直接交互,常驻内存。驻留(基本)模块:完成输入/输出、文件、设备、内存和处理器时钟的管理,常驻内存。系统工具:通常称为shell。是Unix操作系统的一部分,是用户与Unix交互的一种接口。常驻磁盘,在用户登录时即调入内存。,第二章 UNIX使用入门.预备知识,分时操作系统:支持多个用户同时使用一台计算机。组成:一台主机和多台终端构成。分时操作系统将CPU时间划分为多个时间片,每个用户一次只能运行一个时间片,时间片一到就让出处理机供其他用户程序使用。由于CPU速度很快,而时间片相对较短(为毫级),所以,每个用户在自己的终端上操作时感觉不到其他用户的存在,就象他在独占整个计算机系统一样。,网络操作系统:多台独立工作的计算机用通信线路连接起来,构成一个能共享资源的更大的信息系统。组成:多台独立的计算机。Client-Sever结构,一. UNIX的外部运行环境,主 机,终端1 终端2 终端n,网 络 TCP/IP,网络终端服务器,终 端,主机m 主机n,RS2322,RS2322,RS2322,RS2322,RS2322,RS2322,二. 用户登录和退出,1.登录:用户登录时,SHELL调入内存;UNIX启动完成,在终端显示login:输入用户名后,启动login程序来完成登录Login检查下一步要执行的程序名(即shell)出现系统提示符$. 登录的三个基本条件: 主机启动完毕 通讯端口打开 终端开电,登录的过程,UNIX是多用户操作系统。系统识别用户身份并允许用户使用的过程称为登录过程当UNIX系统完成登录准备时给出login:提示。Login: 用户名 password:,2. 修改口令$ passwdChanging password for student2Old password:New password:Re-enter new password:说明: 根据系统的安全级别用户口令一直 有效或定期修改 UNIX系统不会回显用户输入的口令 即从屏幕上看不到任何字符。,3. 退出系统$ exitRed Hat Linux Release 8.0login: _,可用logout退出可用Ctrl-d退出,表明: 1. 当前用户已成功退出, 善 后工作已完成 2. 本用户或其他用户可重 新登录进入系统,用户基本信息文件 /etc/passwdroot:x:0:3:super user:/:/sbin/shbin:x:2:2:Admin:/usr/bin:admin:x:101:1:admin:/home/admin:/usr/bin/cshoracle:x:102:101:dbms:/data/oracle:/usr/bin/kshtest:x:103:1:/home/test:/usr/bin/cshteacher:x:104:200:/home/teacher:/usr/bin/vshstudent1:x:105:300:/home/student1:/usr/bin/kshstudent2:x:105:300:/home/student2:/usr/bin/kshstudent3:x:107:300:/home/student3:/usr/bin/kshstudent4:x:108:300:/home/student4:/usr/bin/ksh,Login:,Login:,Login:,三. UNIX 的启动过程,Login:david password:,Login:,Login:,Login:david password:$,Login:,Login:,UNIX 的启动过程流程图,装入OS内核,硬件检查,安装rootfs,形成0号进程,产生子进程,对换进程swap,产生1号进程init,执行inittab,初始化各端口,getty,getty,登录,执行命令,退出,boot,父,子,基本命令的使用简单命令 基本规则: 在命令提示符后发出命令; 命令行输入完并开始执行的标志是回车换 行键; 命令执行完成的标志是出现新的命令 提示符$。例如:$ date (显示当前系统的日期和时间)Fri Sep 5 18:19:01 EDT 2003$ _,Who 命令(查看系统中所有已登录用户状况),Who命令可列出当前登录到系统的所有用户的登录名,终端号和登录时间。可用who命令检查系统状态,或某个用户是否正在使用系统,说明: .同一个登录名可以被同一个人或多人同时使 用多次 .终端号通常可以表明使用者的位置,但并不 肯定(对虚终端而言),$ who am i (我是谁)teacher tty02 Sep 05 08:25$ who H (显示各列信息标题)NAME LINE TIMEteacher tty02 Sep 05 08:25student1 tty26 Sep 05 10:27student1 tty15 Sep 05 10:38student5 ttyp09 Sep 05 10:10$ who q (显示简要用户列表和用户总数)teacher student1 student1 student5# users=4$_,2. 通用命令格式 $ 命令名 -命令选项 命令参数命令选项: 可以选择, 也可以不选. 如果选择, 则必 须是由减号开始的一个或多个字母组成. 任选项通常起功能开关的作用.命令参数: 可以有, 也可以没有; 可以有一个, 也可 以有多个. 参数主要用于指明命令的操 作对象, 通常为文件名(广义).方括号: 表明其中的内容可以缺省.,举例:,$mail -f newmail $mail - f newmail$who -u $who-u$mail f newmail$mail newmail -f$mail team01$team01 mail$who -u $-u who$who m u $who m-u$who mu $who m u$mail team01 team02 $mail team01team02,命令行更正和程序终止. 当命令行输入错误时, 在还未键入换行符时, 可用 BS(BackSpace)键或h键删除前面字符, 再键入正确的字符。推荐使用h键, 因该键的兼容性更好. 当要删除一整行时, 按u. 要强行终止当前正在运行的程序时, 可按C、Del 或Break键来完成。出现命令提示符$, 表明程序 已终止运行.,注意: 一个普通用户在一台终端上无论是进行登录系统、退 出系统、发出命令还是终止程序等操作,都不会影响 其他用户的正常操作。,常用命令:date 和 cal命令,查看当前时间 : $date 查看某一个月的月历 : $cal 月年查看某一年的各个月的月历: $cal 年,Date 命令,Date命令显示星期,月,日,时间(美国东部时间)和年。Unix使用24进制时间,Cal 命令,Cal命令显示指定年份的日历表。若同时指定年和月,只显示一个月的日历表。年和月都是命令参数。Cal命令的默认参数为当前月。,Cal 命令 说明,1. 年份参数必须写全。如:输入cal 1998,而不能输入 cal 98。2. 可使用数字表示月份(0112),而不能使用月份的名字。3. 不带参数的cal命令显示当前月份的日历表。4. 只有年份参数的cal显示指定年份的日历表,Cal 命令,Finger 命令,显示一个用户的详细信息。Finger命令。,clear, echo, banner命令,clear命令执行清屏动作: $clearecho命令将命令名后跟随的参数显示在屏幕 : $echo hello worldbanner命令将命令名后跟的ASCII字符串以大字的方式显示在屏幕上: $banner hello,wc命令,wc命令用于计算一个指定的文件中的行数,单词数及字符数命令的格式为:$wc -c-l-w filename命令选项:-c 计算字符的数目-l 计算行的数目-w 计算单词的数目举例:wc myfile,wc命令,wc命令用于计算一个指定的文件中的行数,单词数及字符数命令的格式为:$wc -c-l-w filename命令选项:-c 计算字符的数目-l 计算行的数目-w 计算单词的数目举例:wc myfile,Wc命令,计算mvfile文件的行数,单词数,字符数,并给予报告。,一些特殊键的用法,联机手册 联机手册命令man可向用户提供系统中各种命令、系统调用、库函数和重要系统文件的详细说明,包括名字、使用语法、功能描述、应用实例和相关参考文件等。例如: $ man who 对who命令的详细说明 $注: 教材中的learn和help命令为非标准配置命令.,shell的种类、提示符和退出命令Shell的基本功能: . 命令解释器 . 程序设计语言 每一个已登录进入系统的用户都有一个独立的Shell程序与其对应, 解释其键盘命令.Shell的常用种类: 1. Bourne shell - 程序名为 sh, 提示符为 $ 2. C shell - 程序名为 csh, 提示符为 % 3. Korn shell - 程序名为 ksh, 提示符为 $另一常用提示符: # - 超级用户(无论何种shell),Shell 的退出命令:exit 主要用于退出B_shelllogout 主要用于退出C_shelld 可用于退出各类shell. 因d常含有其它 功能含义, 故尽量不用或少用d来作退 出命令.,注: exit 和 logout 是正规退出系统的命令, 执行时 通常包含许多善后工作, 而d没有.,