linux期末复习大纲

上传人:第*** 文档编号:32688675 上传时间:2018-02-12 格式:DOC 页数:10 大小:271KB
返回 下载 相关 举报
linux期末复习大纲_第1页
第1页 / 共10页
linux期末复习大纲_第2页
第2页 / 共10页
linux期末复习大纲_第3页
第3页 / 共10页
linux期末复习大纲_第4页
第4页 / 共10页
linux期末复习大纲_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《linux期末复习大纲》由会员分享,可在线阅读,更多相关《linux期末复习大纲(10页珍藏版)》请在金锄头文库上搜索。

1、1Linux 期末复习大纲纲要:Linux 的社区版本与商业版本的区别;Linux 的开发语言;Linux 的几种版本;Shell 的种类;Linux 常用命令:find;Linux 系统命令:关于文件、目录的操作命令:cp,mv文件类型、改变文件权限命令 chmod、改变文件所有者/ 组的命令 chown;Linux 文件:用户/用户组信息、密码存储文件;Vi 编辑器的 3 种模式;Vi 编辑器的常用命令:关于保存、退出的命令;输入模式下删除一个字符/一行的命令;gcc(C 语言编译器):编写 C/C+源程序,编译,连接;生成目标文件,生成可执行文件;gdb(C/C+程序调试器):设置断点,

2、执行下一句代码,查看变量的值;make 工具与 makefile 文件:参考 PPT 例题32 位机的页面大小是多少?(32 位机:地址线宽为 32 的主机)(分页机制)双击一个可执行程序退出该程序,之间经过哪些步骤?请画出其数据结构。 (进程的生命周期)一个程序分为哪几个区?一个进程分为哪几个区?为什么?Linux 的内存布局/内存结构是什么?()虚拟内存的数据结构?一个程序 task_struct 的结构。 (进程)mm_struct 有哪几个成员?分别什么作用。pgd 是什么?mmap 指向什么?虚拟地址怎么转为物理地址?(分页机制,映射)什么是写时复制?(提示:参考创建子进程过程)bu

3、ddy 算法(伙伴算法) 与 slab 算法的区别?程序,进程,线程之间的联系与区别?Linux 中的 0 号、1 号进程各有什么作用?如何在父进程里回收子进程?(wait()进程系统调用)深度休眠 与 浅度休眠 的区别?Lession1 Linux 操作系统概述Linux 的社区版本与商业版本的区别?社区版是志愿者开发和维护的版本;完全免费;对在生产环境中出现的问题和损失等不负责。2商业版是服务收费的版本。 Linux 的开发语言:C 语言+汇编语言。Linux 内核是由 C 语言和汇编语言编写的(以 C 语言为主) 。Linux 的几种版本:版本号:num1.num2.num3,其中 nu

4、m1 为主版本号,num2 为次版本号,num3 为修订版本号。Linux 的内核系列的版本:由版本号里的 num1.num2 构成。【例】稳定版 2.6.0 是 2.6 版内核系列。稳定版本:num2 为偶数。开发版:num2 为奇数。社区版本:debian,centos,fedora ,ubuntu,gentoo,arch 等商业版本:redhat,suse 等等Lession2 Linux 命令find:查找特定字符串的文件/ 目录find 的使用语法:find 目录列表 匹配标准查找文件条件:根据完整的文件名查找;根据部分文件名查找:查找完整的文件名为 httpd.conf 的文件fi

5、nd / -name httpd.conf print /在根目录(root 目录)下的所有文件、目录中查找find ./ -name httpd.conf print /在当前目录下的所有文件、目录中查找find ./ -name httpd.conf print /在父目录下的所有文件、目录中查找【打印结果】查找的文件的列表,显示文件路径。已知文件名,不知它存的目录:查找文件名含有 tmp 的,且以.out 结尾的所有文件find / *temp*.out print 通配符的使用:?:单个任意的字符。 *:若干个任意的字符。 :单个范围内的任意字符。文件类型-:常规文件d:目录(dire

6、ctory)b:块特殊设备(block)c:字符特殊设备(char )p:有名管道(pipe)s:信号灯(signal)m:共享存储器(memory )文件权限3文件权限:三个字符串(即所有者、同组者和其他人) ;每个字符串:三个字符(字符 r:表示对文件的读;字符 w:写;字符 x 执行权限) 。当用户没有相应的权限时,该权限的对应位置用短线“-”来表示。chmod:改变文件/目录的权限将文件 aa.txt/目录 aa 的权限设置为:拥有者可读可写可执行,同组者可读可执行,其他人仅可执行。文本模式:chmod u=rwx,g=rx,p=x aa.txtchmod u=rwx,g=rx,p=x

7、 aa八进制数字:chmod 751 aa.txt【注】7 表示 rwx(4+2+1),5 表示 rx(4+0+1),1 表示 x(0+0+1)。将文件 testfile 设置为所有的人都可读可写不可执行。文本模式:chmod a=rw testfile八进制数字:chmod 666 testfilechown:改变文件/目录的拥有者或组将文件 testfile 的拥有者改为 guestll (注:ll 命令等效于 ls -l)chmod guest testfile将文件 testfile 的所属组改为 usersllchmod :users testfile一次性将文件 testfile

8、的拥有者改为 guest,所属组改为 usersllchmod guest:users testfile改变目录 dir1 下所有文件以及 dir1 自身的拥有者为 guestchown -R guest dir1【注意】Linux 命令式区分大小写的。用户管理的重要文件用户信息:/etc/passwd用户密码:etc/shadow组信息:/etc/group组密码:/etc/gshadowLession3 vi 编辑器vi 编辑器的 3 种模式命令模式(默认模式):执行命令;从命令模式切换到输入模式:输入 a 或 A、o 或 O、i 或 I。【注】a:行首;A :行尾。o:下一行;O :上一

9、行。i :字符前; I:字符后。4输入模式:输入文本;末行模式:执行特定命定;【tip】以冒号开头的命令实际上是 ex 命令。保存、退出相关命令保存:w 后面接回车键保存并退出:wq 后面接回车键退出但不保存:q 后面接回车键强行退出:q!vi 编辑器的 3 种模式的切换(图)命令模式( 默认模式 )输入模式末行模式输 入 a / A , o / O , i / I按 E s c输 入 冒 号 :按 E s c【tip】输入模式不能直接到末行模式,必须先切换到命令模式。Vi 编辑器的常用命令:撤销,重复,删除,复制,粘贴。删除删除一个字符:xx:删除光标上的字符;X:删除光标前(即左边)的字符

10、。删除一个词或词的部分内容:dw删除整个单词:光标移至单词首字母,按 dw;删除单词的部分内容:需将光标放置到该词要保存部分的右边,输入 dw。 (删除光标上及光标以后的该单词的其他部分) 。删除一行:dd将光标放置到该行的任意处并输入 dd。删除多行:ndd ,例如,5dd【tip】注意区分 Linux 常用命令和 vi 编辑器的常用命令。Lession4 gcc 与 gdb,make 与 makefilegcc 编译过程(四个阶段):预处理阶段(Preprocessing):第一阶段,对源代码中的头文件、宏定义等进行处理,并进行词法、语法等分析。若无错误,则生成中间文件。编译阶段(Comp

11、ilation):第二阶段,根据中间文件生成 .s 后缀的汇编文件。汇编过程(Assembly):第三阶段,调用汇编语言 as 对中间文件进行汇编,生成 .o 后缀的目标文件。连接阶段(Linking ):第四阶段,当所有目标文件均生成以后,调用 ld 来完成连接工作,生成可执行程序。【编程】编写 C/C+源程序,并编译连接执行执行。vi HH.c5a/Ao/O/i/I#include int main()printf(hello world!);:wq方法 1:生成默认的可执行文件gcc HH.c /默认生成可执行程序 a.out./a.out /执行方法 2:生成自定义名的可执行文件gcc

12、 -o hello HH.c /生成可执行程序 hello./hello /执行【tip】生成可执行文件 a.out(默认):gcc 源文件生成目标文件:gcc -c 源文件生成可执行文件 hello:gcc -o hello 源文件【tip】./表示在当前目录下执行。gdb 概念gdb 是 GNU 的 C/C+和汇编语言程序的调试器,通过 gdb 我们可以控制程序的运行,查看程序的内部状态,动态改变程序的执行环境等等。【要求】设置断点break(b) 行号或函数名 :在某行或某函数开头设置断点;break . if .:设置条件断点;断点调试:执行下一行代码next(n)、step(s) :

13、单步执行,step 可进入函数内部;查看变量的值info(i) locals:查看当前栈帧局部变量的值;display 变量名:跟踪查看一个变量make 工具概念:make 是一个程序维护工具,根据一定的规则,按照程序的依赖关系先后去编译文件。makefile 文件作用:makefile 文件定义了一系列的规则,这些规则记录了文件间的依赖关系以及在此依赖关系的基础上所应执行的命令序列,根据这些依赖关系编译文件。make 的工作机制,简言之:读取 makefile 文件 根据 makefile 内容编译文件。6即,当“目标文件修改时间 晚于/迟于 依赖文件修改时间”时,目标文件无需重新编译。依赖

14、关系使用 make 的一个核心问题是确定好各文件间的依赖关系。对依赖关系的描述我们可以采用依赖关系图表示。【要求】依赖关系图makefile 文件【tip】Linux 的后台程序都有一个 makefile 文件makefile 书写规则: 续行符:“ ”命令必须以开头目标文件 f1.o 默认由 f1.c 和 f1.h 编译生成。Lession5 进程管理一个进程的 task_struct 的结构(即 PCB)7即:在进程的 task_struct 结构中包含一个 mm 域,该域是指向 mm_struct 结构的指针 mm。在进程的 mm_struct 结构中包含进程的可执行映像信息,进程的页目

15、录 指针 pgd,指向 vm_area_struct 结构的指针 mmap,每个 vm_area_struct 代表进程的一个虚拟地址区间。 一个程序分为哪几个区?一个进程分为哪几个区?为什么?答:程序组成:正文段(存放程序代码的数据) ,用户数据段(存放处理数据集合) ;进程组成:正文段、用户数据段和系统数据段(存放进程的控制信息,即进程控制块 PCB,PCB存放了进程运行的环境) ;即,代码段,数据段和进程控制块 PCB。原因:程序是一个普通的文件,是机器代码指令和数据集合,这些指令和数据集合存储在磁盘上的一个可执行映像(可执行文件内容)中。程序代表用户期望完成某工作的计划和步骤,具体实现

16、过程是由进程完成的,进程是程序的一次运行,它包含程序的全部内容,还包含一些额外的数据,即进程运行的环境相关的数据。8PCB(task_struct 任务结构体)mm_struct 有哪几个成员?分别什么作用。pgd 是什么?mmap 指向什么?答:count: 对 mm_struct 结构的引用计数变量。pgd:进程的页目录指针,指向进程的页目录基地址。mmap:指向 vm_area_struct(虚存区)数据结构的指针,形成一个单链表,其基址由小到大排列。写时复制(copyonwrite)技术写时复制技术可以推迟、甚至免除数据的拷贝;进程创建之初内核并不复制整个进程空间(task_struct) ,而是使父子进程以只读方式共享同一个拷贝;数据只有在需要写入时才会被复制,从而使各个进程拥有各自的拷贝。程序,进程,线程之间的联系与区

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 职业教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号