第6章_Linux操作系统基础
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
> 文件移动:mv
>解压缩:unzip
> 文件删除:rm
▪改变文件或目录的访问权限命令
▪目录管理命令
>改变访问权限:chmod
> 创建目录:mkdir
>改变所属的组 :chgrp
> 删除空目录:rmdir
>更改拥有者和所属组: chown
> 改变工作目录:cd
▪与用户有关的命令
> 显示当前完整路径:pwd >设置和修改用户口令: passwd
▪ 虚拟文件系统与网络接口之间的关系:虚拟文件系统利用网络接口支持 网络文件系统(NFS),也利用内存管理支持RAMDISK设备。
▪ 内存管理与虚拟文件系统之间的关系:内存管理利用虚拟文件系统支持 交换,交换进程定期由调度程序调度,这也是内存管理依赖于进程调度的 唯一原因。当一个进程存取的内存映射被换出时,内存管理向文件系统发 出请求,同时,挂起当前正在运行的进程。
▪Linux磁盘管理命令 >检查文件系统的磁盘空间占用情况:df >统计目录(或文件)所占磁盘空间的大小: du >挂接设备: mount >卸载已经挂接的设备: umount
▪Linux其它命令 >显示一段文字 :echo >显示某年某月的日历 : cal >清除屏幕上的信息 : clear
20
6.4.2 vi编辑器的使用
在linux操作系统中有三种类型的设备:
▪字符设备 ▪块设备 ▪网络设备
14
6.3.1 设备文件
第6章 Linux操作系统基础
Linux将所有外部设备看成是一类特殊文件,称之为 “设备文件”。
对设备文件的识别使用设备类型、主设备号和次设备 号:
▪设备类型:字符设备或者块设备。
▪主设备号:按照设备使用的驱动程序不同而赋予设备 不同的主设备号。主设备号与驱动程序一一对应。
17
主要内容
第6章 Linux操作系统基础
1 Linux操作系统概述 2 Linux内核的结构
3 Linux设备管理
4 Linux的使用
18
6.4.1 Linux常用命令
第6章 Linux操作系统基础
▪在线帮助命令:man
▪备份与压缩命令
▪文件管理命令
>创建备份:tar
>文件拷贝: cp
>压缩和解压缩:gzip
第6章
Linux操作系统基础
主要内容
第6章 Linux操作系统基础
1 Linux操作系统概述 2 Linux内核的结构
3 Linux设备管理
4 Linux的使用
2
第6章 Linux操作系统基础
6.1.1 Linux操作系统的产生及发展
▪ 1990年,LinusTorvalds首次接触Minix; ▪ 1991年,LinusTorvalds开始在Minix上编写各种驱动程 序等操作系统内核组件; ▪ 1991年,LinusTorvalds公开了Linux内核; ▪ 1993年,Linux1.0版发行,Linux转向GPL版权协议; ▪ 1994年,Linux的第一个商业发行版Slackware问世; ▪ 1996年,美国国家标准技术局的计算机系统实验室确认 Linux版本1.2.13符合POSIX标准; ▪ 1999年,Linux的简体中文发行版相继问世; ▪ 2001年,Linux2.4版内核发布; ▪ 2003年,Linux2.6版内核发布。
> 列出当前目录内容:ls >用户之间切换: su
▪文本处理命令
▪系统管理命令
>按行排序:sort
>向所有登录用户发送信息: wall
>删除重复行 :uniq
>向某一个用户发送信: write
19
6.4.1 Linux常用命令
第6章 Linux操作系统基础
▪系统管理命令 >设定是否允许其他用户用write命令给自己发送信息: mesg >强制把内存中的数据写回硬盘: sync >关闭或重启Linux系统: shutdown >查看当前系统内存的使用情况: free
第6章 Linux操作系统基础
Linux 的 文 件 系 统 由 两 层 结 构 组 成 。 第 一 层 是 虚 拟 文 件 系 统 (VFS),第二层是各种不同的具体文件系统。
9
6.2.4 进程间通信
第6章 Linux操作系统基础
信号机制
信号是在软件层次上对中断机制的一种模拟 ,是进程间通 信机制中唯一的异步通信机制 。
24
❖ Makefile的编写格式
第6章 Linux操作系统基础
举例:工程包含3个C文件(main.c, mytool1.c, mytool2.c)和2个 头文件(mytool1.h, mytool2.h) ,需要写一个Makefile来告诉make 命令如何编译和链接这几个文件。
main:main.o mytool1.o mytool2.o <tab>gcc -o main main.o mytool1.o mytool2.o main.o:main.c mytool1.h mytool2.h <tab>gcc –c main.c mytool1.o:mytool1.c mytool1.h <tab>gcc –c mytool1.c mytool2.o:mytool2.c mytool2.h <tab>gcc –c mytool2.c clean: rm –rf *.o main
3
第6章 Linux操作系统基础
6.1.2 Linux操作系统的特点
▪自由开放软件 ▪真正的多任务多用户 ▪UNIX的完整实现 ▪完全符合POSIX标准 ▪良好的用户界面 ▪强大的网络功能 ▪良好的可移植性 ▪设备独立性
4
主要内容
第6章 Linux操作系统基础
1 Linux操作系统概述 2 Linux内核的结构
Linux采用的是单内核模式,Linux内核主要由五个 子系统组成:进程调度,内存管理,虚拟文件系统,网 络接口,进程间通信。
6
6.2.1 进程调度
第6章 Linux操作系统基础
进程调度控制进程对CPU的访问。采用适当的调度策略 使各进程能够合理的使用CPU。
进程的定义 一个进程是一个程序的一次执行过程。
7
6.2.2 内存管理
第6章 Linux操作系统基础
内存管理(MM)允许多个进程安全的共享主内存区域。Linux的内存 管理支持虚拟内存。Linux虚拟内存的实现需要6种机制的支持:地址映射 机制、内存分配回收机制、缓存和刷新机制、请求页机制、交换机制和内 存共享机制。
8
Байду номын сангаас
6.2.3 虚拟文件系统
3 Linux设备管理
4 Linux的使用
5
6.2 Linux内核的结构
第6章 Linux操作系统基础
操作系统内核的结构模式可分为两种: ▪整体式的单内核模式
单内核也叫集中式操作系统。以提高系统执行效率为设 计理念, 缺点是系统升级比较困难。 ▪层次式的微内核模式 微内核是指把操作系统结构中的内存管理、设备管理、文 件系统等高级服务功能尽可能地从内核中分离出来,变成 几个独立的非内核模块,而在内核中只保留少量最基本的 功能,使内核变得简洁可靠。
用 于 发 送 信 号 的 主 要 系 统 函 数 有 : kill()、raise()、 sigqueue()、alarm()、setitimer()以及abort()。
管道
管道是利用有公共祖先的进程之间的共享文件描述符进行 的一种通讯方式 。
命名管道 命名管道不同于管道之处在于它提供一个路径名与之关联, 以FIFO的文件形式存在于文件系统中。
11
第6章 Linux操作系统基础
6.2.6 各个子系统之间的依赖关系
▪进程调度与内存管理之间的关系:这两个子系统互相依赖。在多道程序 环境下,程序要运行必须为之创建进程,而创建进程的第一件事情,就是 将程序和数据装入内存。
▪ 进程间通信与内存管理的关系:进程间通信子系统要依赖内存管理支持 共享内存通信机制,这种机制允许两个进程除了拥有自己的私有空间,还 可以存取共同的内存区域。
▪次设备号:用来区分使用同一个驱动程序的不同设备 。
15
6.3.2 设备驱动
第6章 Linux操作系统基础
设备驱动程序是Linux内核与设备之间的接口。设备驱 动程序对应用程序屏蔽了硬件在实现上的细节,使得应用程 序可以像操作普通文件一样来操作设备。
Linux为所有的设备文件提供了统一的操作函数接口来管 理这些设备,方法是使用数据结构struct file_operations。 这个数据结构中包括许多操作函数的指针,如open()、 close()、read()、write()和ioctl()等。
12
主要内容
第6章 Linux操作系统基础
1 Linux操作系统概述 2 Linux内核的结构
3 Linux设备管理
4 Linux的使用
13
6.3 Linux设备管理
第6章 Linux操作系统基础
Linux设备管理的主要任务是控制设备完成输入输出操作,所 以又称输入输出(I/O)子系统。设备管理把各种设备硬件物 理特性的细节屏蔽起来,提供一个对各种不同设备进行统一 操作的接口。
相比,make命令的优点在于它只更新修改过的文件 。
makefile
makefile定义了一系列的规则来指定哪些文件需要先编 译,哪些文件需要后编译,哪些文件需要重新编译,甚至于 进行更复杂的功能操作。
makefile带来的好处就是“自动化编译”,一旦写好 makefile,只需要一个make命令,整个工程即可实现完全 自动编译,从而极大地提高了软件开发的效率。
16
6.3.3 控制方式
第6章 Linux操作系统基础
轮询方式
轮询方式又称查询等待方式。对于不支持中断方式的机 器只能采用这种方式来控制I/O过程,所以Linux中也配 备了轮询方式。轮询方式意味着需要经常读取设备的状 态,一直到设备状态表明请求已经完成为止。
中断方式
在硬件支持中断的情况下,驱动程序可以使用中断方式 控制I/O过程。当某个设备需要服务时就向CPU发出一个 中断信号,CPU接收到信号后根据中断请求号启动中断 服务例程。Linux内核需要将来自硬件设备的中断传递 到相应的设备驱动,这个过程由设备驱动向内核注册其 使用的中断来协助完成。
21
第6章 Linux操作系统基础
【最新影视资讯 http://www.xigua57.com/arttype/zixun.html 西瓜影视】本站提供最新电影,电视剧,综艺,动漫的资讯信息 ,一览无遗
22
第6章 Linux操作系统基础
❖ vi编辑器中三种工作模式的切换
▪通过键入i、o、a命令,vi编辑器将离开默认的命令模式, 进入编辑模式。在编辑模式下,键入的所有文本都不会被翻 译成命令,这时,所有键入的文本都会被保存到文件中。 ▪当完成了文本的输入后,按Esc键vi将回到命令模式下。 ▪当处于命令模式下时,通过键入“:”,将使光标处于屏 幕的最后一行,进入最后行模式。
消息队列
消息队列实际上就是一个消息的链表。每个消息队列都 有一个队列头,用结构struct msg_queue来描述。
目前主要有两种类型的消息队列:POSIX消息队列和系 统V消息队列。
10
6.2.5 网络接口
第6章 Linux操作系统基础
Linux的网络接口分为四部分:网络设备接口、网络接口核心、网 络协议族以及网络接口socket层。
23
第6章 Linux操作系统基础
6.4.3 make工具和gcc编译器
gcc
gcc是可以在多种平台上编译出可执行程序的超级编译器。
举例:gcc –c hello.c gcc -o hello.exe hello.c
make命令
make命令用于根据文件之间的依赖关系(在makefile 文件中定义)来自动维护目标文件,与手工编译和链接
TCP/IP协议栈四层模型
TCP/IP协议遵守一个四层的模型概念:网络接口层、互联层、传 输层和应用层。
Socket套接字
Socket接口是TCP/IP网络的API,定义了许多函数或例程,程序员可 以用它们来开发TCP/IP网络上的应用程序。套接字基本上有三种类型 ,分别是数据流套接字、数据报套接字和原始套接字。
Linux进程的状态 可运行状态 、等待状态 、暂停状态 、僵死状态
Linux下进程的结构 数据段、堆栈段和代码段
Linux进程的种类 交互进程、批处理进程、守护进程
Linux进程的创建 fork()函数
进程所有操作都要依赖进程控制块 task_struct结构,task_struct结构 是进程实体的核心,是进程存在的唯一标志。
第6章 Linux操作系统基础
vi编辑器是一个命令行编辑器,有三种基本的工作模式:
(1)命令模式 vi的默认模式,在命令模式下,可以键入 命令来删除、更改、移动文本、定位光标、搜索文本字符 串或退出vi编辑器。
(2)编辑模式 在编辑模式下,可以向文件中输入文本。
(3)最后行模式 当处于命令模式时,通过键入“:”, 将使光标处于屏幕的最后一行,这就称为最后行模式,这 时可以执行更先进的编辑命令。注意:所有的命令都是由 命令模式发起的,所以最后行模式也属于命令模式。