linux复习.docx
《linux复习.docx》由会员分享,可在线阅读,更多相关《linux复习.docx(27页珍藏版)》请在冰豆网上搜索。
![linux复习.docx](https://file1.bdocx.com/fileroot1/2023-3/31/8566f1ca-ef16-4748-9a8f-1826e1e38d62/8566f1ca-ef16-4748-9a8f-1826e1e38d621.gif)
linux复习
第1章操作系统概述
1.计算机系统的层次结构
2.什么是操作系统?
操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
3.操作系统的作用
(1)操作系统作为用户与计算机硬件系统之间的接口
✧操作接口:
图形、命令行
✧编程接口
(2)操作系统作为计算机系统资源的管理者
(3)操作系统用作扩充机器
4.操作系统的发展过程
✧无操作系统的计算机系统
✧批处理系统
✧分时系统
✧实时系统
✧网络操作系统
5.操作系统的功能
(1)处理机管理:
进程管理包括进程控制、进程同步、进程通信和进程调度几个方面。
(2)存储器管理:
存储器管理应具有内存分配、内存保护及内存扩充等功能。
(3)设备管理:
设备管理具体应包含缓冲管理、设备分配和设备处理等方面。
(4)文件管理:
文件管理功能就是要解决外存上文件的组织和管理问题。
文件管理还要解决信息的共享、保密和保护等问题。
(5)用户接口:
命令接口、程序接口、图形接口。
第2章网络操作系统Linux简介
1.Linux的版本号又分为两部分:
内核(Kernel)版本和发行(Distribution)版本
2.Linux系统大致可分为3层:
内核:
即Linux操作系统的常驻内存部分;
Shell层:
亦即操作系统的系统程序部分;
应用层:
即用户程序部分。
第3章linux的安装与配置
1.Linux提供了两个引导装载程序:
GRUB和LILO
2.引导装载程序可以放在:
主引导记录(MBR)或②引导分区的第一个扇区
第4章linux使用基础
1.shell是一种命令行解释程序,负责用户和操作系统的沟通。
Shell有多种,常见的有bash,csh,ksh.。
2.$是一般用户的shell提示符,root用户的提示符是“#”
3.转换身份
转换成root
su命令
Su-命令
转换成普通用户:
su用户名
4.常用命令
显示或设置日期和时间date
Date–s“2001010112:
23:
14”
询问当前用户who
显示当前目录路径名pwd
改变路径cd
echo
who
5.Linux的文件通常分为普通文件、目录文件及特别文件3类。
6.为了对文件进行保护,Linux系统提供了文件存取控制方式。
把所有用户划分为3种身份,依次是文件主(user)、同组用户(group)、其他用户(other)。
每种用户对一个文件可拥有读(r)、写(w)和执行(x)的权利。
用字符形式表示上述文件方式,就是:
rwxr-xr—
文件权限也可以用二进制数表示
这9位的顺序是固定的(其中“-”表示对应用户不具备相应权限)
10.文件显示命令
catheadtailmoreless
文件显示命令
cat命令用来连接并显示文件
$catfile1file2>file3
显示文件列表
ls和dir
过滤命令:
grep
排序:
sort
11.文件的复制、移动和删除命令
(1)cp命令cp命令的功能是拷贝文件。
其语法格式为:
cpsource_filetarget_file
cpsource_file1source_file2…target
cp-Rsource_file1source_file2…target
cp-rsource_file1source_file2…target
(2)mv命令mv命令的功能是移动或者重新命名文件和目录。
其语法格式为
mvsource_filetarget_file
mvsource_file…target_directory
(3)rm命令rm命令的功能的是删除文件或目录。
其语法格式为
rmfile…
rm–r目录
13.查找命令find
14.文件和目录的路径名可用两种方式表示:
绝对路径名(又称全路径名)和相对路径名
当前路径./
上级路径..
15.目录的创建和删除
(1)mkdir命令
mkdir命令的功能是建立目录。
其语法格式为
mkdir[-ep][-mmode]dirname…
(2)rmdir命令
rmdir命令的功能是删除目录。
其语法格式为
rmdir[-p][-s]dirname…
16.改变存取权限
chmod命令的功能是改变文件或目录的存取权限。
其语法格式有以下两种。
①符号方式
chmod[-R][who][+|-|=][mode…]file…
②绝对方式
chmod[-R]modefile
18.Shell有两种变量:
环境变量和临时变量
在Shell过程中临时变量又分为两类:
用户定义的变量和位置参数。
$dir=/home/lcd/ff
$echo$dir
/home/lcd/ff
$echo$dir/f1
/home/lcd/ff/f1
$echo$dirABC
$echo${dir}ABC
/home/lcd/ffABC
$echodir
dir
$
19.引号的作用p67
21.管道线
在Linux系统中管道线是由竖杠(|)隔开的若干个命令组成的序列,
例如,ls–l$HOME|wc−l
第5章Linux系统管理
一.用户管理
Linux系统把用户分成两类,一类是普通用户,另一类是超级用户(SuperUser),也称特权用户
/etc/passwd文件记录所有用户
2.增加用户useradd或编辑passwd和shadow文件
-s指定shell
-c增加说明
-d指定主目录
–m主目录不存在时创建
-g指定组
-G指定所属主
-u设置id
-p口令
3.修改口令passwd
4.删除用户userdel
删除后,所拥有的文件不会被删除,除非带有-r选项
5.禁止登录把用户的登录shell修改为nologin
6.修改用usermod
二.组管理
1./etc/group文件记录所有组
2.增加组groupadd
3.修改组groupmod
4.删除用户groupdel
三.安装和卸载文件系统
1.安装文件系统
创建文件系统后,需要使用命令mount将该文件系统安装到主文件系统中。
执行mount命令需要超级用户权限。
mount命令的一般格式如下:
mount[选项参数]磁盘设备名安装点
磁盘设备名:
要安装的物理设备名。
安装点:
希望文件系统被安装到的目录树的位置。
例如,把光盘安装到目录/mycdrom。
#mount-r-tiso9660/dev/cdrom/mycdrom
2.卸载文件系统
当不再使用安装好的一个文件系统时,就可以把它卸载掉;或者是需要对某个文件系统进行检查时也需要卸载;
命令格式:
umount[选项参数][磁盘设备名|安装点]
如果光盘被安装在/mnt/cdrom目录上,也可以如下所示卸载:
umount/mnt/cdrom
四、文件类型
普通文件
目录文件
块设备文件
字符设备文件
套接字
有名管道
符号链接
五、文件属性
1.文件的用户和组
改变chown
六、使用RPM
1.安装安装RPM软件包最常用的命令格式是:
rpm–ivh软件包名
2.卸载软件包的卸载与软件包的安装一样简单,最常用的命令格式为:
#rpm-e软件名称
3.升级升级软件包和安装软件包的操作十分类似,不过需要使用-U选项,其最常用的命令格式为:
Rpm–Uvh软件包名
4.查询查询系统中安装的软件信息可以使用rpm-q命令来完成,该命令的常用格式为:
Rpm-q[查询选项][信息选项]软件名称
5.验证验证软件包是检查安装的文件和软件包中的原始文件信息是否一致,其中包括文件的尺寸、MD5校验码、文件权限、类型及所属的用户和组等。
常用的命令格式为:
Rpm-V[验证选项]软件包名
第6章linux网络应用
一、基本网络设置
1.主机名
主机名存放在/etc/sysconfig/network中
显示主机名:
hostname
设置主机名:
hostname主机名
2.IP地址和子网掩码
用setup工具
ifconfig命令
ifconfigeth0192.168.1.86netmask255.255.255.0up
/etc/sysconfig/network-scripts/ifcfg-eth0文件中有关网络的设置
3.网关存放在/etc/sysconfig/network中
4.域名解释
/etc/resolv.conf文件设置DNS服务器和不完全主机名的解释
/etc/host.conf决定搜索顺序
/etc/hosts可以静态设置主机名与IP地址的对应关
二、网络服务概述
1.ApacheHTTP服务器
ApacheHTTP服务器是一种具有稳定性高、速度快等特点的Web服务器软件。
2.Sendmail邮件服务器
Sendmail是Linux上著名的邮件传输程序。
3.Wu-ftp服务器
Wu-ftp是一种功能强大、适合于大吞吐量应用环境的FTP服务器。
4.vsftpd服务器
一种新的安全的FTP服务器
5.Samba服务器
SMB是服务器消息块(ServerMessageBlock)的缩写,SMB协议是一种在两台机器之间共享文件、打印机和接口的标准化协议。
Samba是在Linux系统上支持SMB协议的一组应用程序套件。
它不仅允许Linux与UNIX系统之间进行数据资源共享,也允许Linux与Windows系统之间共享数据资源。
6.Squid代理缓存服务器
Squid是运行于Linux系统上的代理服务器软件,它可以将远程Internet对象保存为本地的副本,当本地用户再次访问这些对象时,Squid可以直接快速地提供这些对象的本地副本,而不必再次占用带宽来访问远地服务器上的对象。
7.DHCP服务器
DHCP服务器能自动对DHCP客户机进行TCP/IP配置,如IP地址、网络掩码、DNS及网关等。
8.BindDNS服务器
BindDNS是TCP/IP的域名服务器软件,它提供主机名和IP地址之间的转换以及有关电子邮件的选路信息,可以提供主域名服务器、辅助域名服务器、缓存查询服务器和自动完成反向域名解析配置等功能。
9.MySQL数据库服务器
MySQL是一个真正的多用户、多线程SQL高速数据库服务器。
三、Linux/UNIX系统之间文件共享—NFS
1.NFS简介
网络文件系统(NetworkFileSystem,NFS)实际上是一种Linux/UNIX文件共享协议。
NFS是通过将NFS服务器的文件系统安装到客户机的文件系统上而得以实现的。
LINUX即既可以作为NFS客户也可以作为NFS服务器,也就是说它可以向其它机器输出文件系统,也可以安装其它机器输出的文件系统
2.使用NFS文件系统
安装远程文件系统与安装本地文件系统相同,都要使用mount命令,所不同的是,需要在文件系统路径名之前加上远程主机的名字。
mount命令格式如下:
mount[-ooption]hostname:
pathnamemountpoint
四、Linux/Windows系统之间文件共享—Samba
1.Samba的配置
修改Samba配置文件/etc/samba/smb.conf
用snbadduser增加用户。
2.启动和停止Samba服务器
使用以下命令来启动守护进程:
/sbin/servicesmbstart
使用以下命令来停止守护进程:
/sbin/servicesmbstop
5.连接Samba共享
要从MicrosoftWindows机器上连接LinuxSamba共享,可以使用“网上邻居”或图形化文件管理器。
也可用以下DOS命令:
netusedrive:
\\ipaddress\service/user:
username
6.客户工具smbclient
smbclient命令用来存取远程Samba服务器上的资源。
smbclient//192.168.0.58/jsp
7.挂载smb文件系统
mount–tsmbfs–0username=xxx//hostname/dir/mnt/smb
五、ApacheHTTP服务器
1.Apache服务器的配置 :
Apach服务器的主配置文件为httpd.conf,保存在/etc/httpd/conf/目录下
2.启动和停止Apache
启动Apache的命令如下:
/etc/rc.d/init.d/httpdstart或servicehttpdstart
停止Apache的命令如下:
/etc/rc.d/init.d/httpdstop或servicehttpdstop
六、FTP服务器
1.启动、停止和重新启动vsftpd服务
/etc/init.d/vsftpdstart或servicevsftpdstart
/etc/init.d/vsftpdstop或servicevsftpdstop
2.vsftpd的配置
配置文件/etc/vsftpd/vsftpd.conf
第7章进程管理
一、进程的定义
进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
(1978年国操作系统会议)
二、进程的基本状态
(1)就绪状态:
当进程已分配到除处理机以外的所有必要的资源后,只要再获得处理机便可立即执行,这时进程的状态称为就绪状态。
(2)执行状态:
执行状态是指进程已获得处理机、其程序正在执行的状态。
(3)阻塞状态:
正在执行的进程因发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,这种暂停状态被称为阻塞状态
三、进程的结构
(1)进程控制块(PCB)
(2)程序段
(3)数据段
四、在进程控制块中,主要包括下述4方面的信息。
(1)进程描述信息
进程标识符。
每个进程都有惟一的进程标识符,用以识别不同的进程。
用户名或用户标识号。
每个进程都隶属于某个用户,有利于资源共享与保护。
家族关系。
标识进程之间的家族关系。
(2)处理机状态信息
通用寄存器、指令计数器、程序状态字(PSW)、用户栈指针等
3)进程调度信息
进程状态。
指明进程的当前状态,以作为进程调度和进程对换时的依据。
进程优先级。
用于描述进程使用处理机的优先级别的一个整数,优先级别高的进程先获得处理机。
进程调度所需的其他信息。
如进程已等待CPU的时间总和、进程已执行的时间总和等。
事件。
指进程被阻塞的原因。
(4)进程控制信息
程序和数据的地址。
指出该进程的程序和数据所在的内存或外存地址,以便再调度到该进程执行时,能从中找到其程序和数据。
进程同步和通信机制。
指实现进程同步和进程通信时所必须的机制,如消息队列指针、信号量等。
这些数据应全部或部分地存放在PCB中。
资源清单。
它是一张列出了除CPU之外的进程所需的全部资源和已经分配给该进程的资源清单。
链接指针。
它给出了本进程(PCB)所在队列的下一个进程的PCB首地址。
五、操作系统内核
为了防止操作系统及关键数据(如PCB等)受到用户程序有意无意的破坏,通常将处理机的执行状态分成系统态和用户态两种。
(1)系统态。
它具有较高特权,能执行一切指令,访问所有寄存器和存储区。
(2)用户态。
这是具有较低特权的执行状态,只能执行规定的指令,访问指定的寄存器和存储区。
进程的创建
进程可由系统模块创建,也可以由其它程序创建。
进程间形成一种树状结构
六、原语:
一般把系统态下执行的具有接待室功能的程序段叫原语。
原语具有原子性,在进行原语操作时不允许被其它程序中断
七、进程互斥
1.互斥的概念
所谓进程互斥是指当有若干进程都要使用某一共享资源时,任何时刻最多允许一个进程使用,其他要使用该资源的进程必须等待,直到占用该资源者释放了该资源为止。
2.临界资源
临界资源:
操作系统中将一次只允许一个进程访问的资源称为临界资源,许多物理设备都属于临界资源,例如打印机等,另外,有些软件资源,如变量,表格,队列等也属于临界资源。
对临界资源应保证各进程互斥的访问,如果顺序不对,可能产出错误。
3.临界区(CriticalSection)
把进程中访问临界资源的那段程序代码段称为临界区。
为实现对临界资源的互斥访问,应保证诸进程互斥地进入各自的临界区。
必须在临界区前面增加一段用于进行上述检查的代码,我们把这段代码段称为进入区(EntrySection);相应地,在临界区后面也要加上一段称为退出区(ExitSection)的代码,用于将临界区正被访问的标志恢复为未被访问的标志。
八、进程同步
1.同步的概念
把异步环境下的一组并发进程因直接制约,使得各进程按一定的速度执行的过程称为进程间的同步。
具有同步关系的一组并发进程称为合作进程,合作进程间互相发送的信号称为消息或事件。
典型的例子是消贯者和生产者的问题
2.同步与互斥的关系
进程的同步与进程的互斥都涉及到并发进程共享资源的问题,进程的互斥实际上是进程同步的一种特殊情况。
有时也把进程的互斥与进程的同步统称为进程的同步。
3.同步机制应遵循的准则
(1)空闲让进。
没有进程在临界区时,如有进程要求进入,应让其进入。
(2)忙则等待。
有进程在临界区时,如有进程要求进入,则不应让其进入,以保证对临界区的互斥访问。
(3)让权等待。
对于等待进行临界区的进程,如果不满足条件,则应放弃对CPU的使用,以避免“忙等”。
(4)有限等待。
对于要使用临界区的进程,应在有限的时间内得到访问的机会,不要被“饿死”。
九、信号量机制
信号量1965年由荷兰Dijkstra提出,可以用来实现进程的同步和互斥。
信号量有整数型、记录型和信号量集三种。
1.记录型信号量
structsemaphore
{
intvalue;
PCB*L;
}S;
P原语操作的主要动作是:
(1)S.value减1;
(2)若S.value减1后仍大于或等于零,则进程继续执行;
(3)若S.value减1后小于零,则该进程被阻塞,进入与该信号量相对应的等待队列L中,然后转进程调度。
P原语操作的功能框图
V原语操作的主要动作是:
(1)S.value加1;
(2)若S.value加1后结果大于零,进程继续执行;
(3)若S.value加1后结果小于或等于零,则从该信号量的等待队列L中唤醒一个等待进程,然后再返回原进程继续执行或转进程调度。
V原语操作的功能框图
十一、进程调度的方式
进程的调度分为高级、中级、低级三种,用户提交作业的调度属于高级调度。
进程调度通常有以下两种方式。
(1)非剥夺方式。
也叫非抢占方式,一但把处理机分配给进程,只有等待进程运行完成或由于等待某一事件发生进程被阻塞。
否则让其一直运行下去。
(2)剥夺方式。
也叫抢占方式,根据某种原则剥夺正在执行进程的处理机。
十二、进程调度算法
1.先来先服务调度算法FCFS
在进程调度中,采用FCFS算法时,进程调度程序从就绪进程队列中,选择一个最先进入队列的进程,把处理机分配给它,让它进入执行状态。
2.短进程优先调度算法
短进程优先(SPF)调度算法,是指对执行时间短的进程优先调度的算法。
SPF是从就绪队列中选出一个估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或因等待某事件发生而放弃处理机时,再重新调度。
3.高优先级优先调度算法
考虑到系统中的紧迫进程能得到优先处理,引入了高优先级优先(HPF)调度算法,处理机总是分配给就绪进程队列中优先级最高的进程。
4.时间片轮转法
时间片轮转法(RR)的基本思想是将CPU的处理时间分成固定大小的时间片。
如果一个进程在被调度选中之后用完了系统规定的时间片,但未完成要求的任务,则它自行释放自己所占有的CPU,而排到就绪队列的末尾,等待下一次调度。
同时,进程调度程序又去调度当前就绪队列中的第一个进程
十三、产生死锁的必要条件
(1)互斥条件
(2)请求和保持条件
(3)不剥夺条件
(4)环路等待条件
十四、处理死锁的方法
(1)预防死锁
(2)避免死锁
(3)检测和解除死锁
十五、预防死锁
1.打破“请求和保持”条件
2.打破“不剥夺”条件
3.打破“环路等待”条件
十六、系统状态的安全性
(1)安全状态
所谓安全状态,是指系统能按某种进程顺序(如P1,P2,…,Pn)来为每个进程Pi分配其所需资源,直至满足每个进程的对资源的最大需求,使每个进程都可以顺利完成。
称P1,P2,…,Pn序列为安全序列。
只要系统始终处于安全状态,则系统就可完全避免死锁状态的出现。
P147表7.1
(2)不安全状态
所谓不安全状态,指某个时刻系统中不存在任何一个安全序列,能使所有的进程都顺利完成,这时称系统处于不安全状态。
P147表7.2
十七、线程
线程与进程的比较
(1)拥有资源
进程是拥有资源的基本单位,线程不拥有资源,而是使用其所属进程的资源。
(2)调度
线程是系统调度的基本单位。
(3)并发性
引入线程后,不但程序之间可以并发执行,同一进程内的多个线程也可以并发执行。
(4)系统开销
创建、撤消进程,进程间的切换要消耗较多的系统资源,创建、撤消线程,线程间的切换要消耗较少的系统资源。
第8章作业调度
一、作业管理概述
1.作业、作业步和作业步任务
作业是指用户提交给计算机进行加工的一个任务,它是由用户程序、数据以及某种形式的控制信息所组成的。
通常,一个作业又可分为若干个顺序处理的作业步。
其中的每个作业步又可进一步细分为若干个作业步任务。
2作业的状态及其转换
二、作业调度
1.先来先服务(FCFS)调度算法
这是一种最简单的作业调度算法。
先来先服务算法是在作业进入系统后,由作业建立程序按作业进入系统的先后次序,将作业插入后备队列。
2.最短作业优先(SJF)调度算法
作业的长短是指作业运行时间的估计值。
最短作业优先算法的依据是作业的长短,是从后备队列中选择其估计运行时间最短,且系统的可分配资源能满足其要求的作业,使之投入运行。
3.响应比高者优先(HRN)调度算法
在该算法中对响应比的定义如下:
响应比=(作业等待时间+作业要求的运行时间)/作业要求的运行时间
第9章存储器管理
一、存储器管理中的基本概念
1.进程地址空间
每一个进程都有自己的独立的空间。
为了编程的方便,地址从0开始编号。
地址空间中的每个地址单元编号称为逻辑地址。
2.存储空间
所谓存储空间是指内存中存储数据的物理单元的集合。
这些物理单元的编号称为物理地址或绝对地址。
3.地址映射
由于一个作业装入到与其地址空间不一致的存储空间所引起的,把作业地址空间中使用的逻辑地址变换成内存中物理地址的过程称为地址映射。
二、存储器管理的功能
(1)内存分配
内存的分配
内存的共享
(2)地址映射
主要包括内存映射机制、静态和动态地址重定位方法。