




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章一、简答题1关于Linux的版本有两种不同的称呼:一种是内核版本,一种是发行版本。2.简述Linux操作系统的特点3系统调用、库函数的区别和练习从用户角度观察,系统调用和库函数都以C函数形式出现,提供给用户一种功能实现的接口,需要用户输入指定的参数,调用结束得到指定的返回值。从实现者角度观察,库函数是在系统调用上层的函数,库函数一般指程序员可以使用的通用函数。系统调用由两部分组成:(1)核心函数:是实现系统调用功能的代码,作为操作系统的核心驻留在内存中,是一种共享代码。运行在核心态。(2)接口函数:是提供给应用程序的API,以库函数的形式存在于Linux的lib.a中,该库中存放了所有系统调用的接口函数的目标代码,用汇编语言书写。其主要功能是把系统调用号,入口参数地址传给相应的核心函数,并使用户态下运行的应用程序陷入核心态。4完成如下命令(1)新建用户tom 和用户组student#useradd tom#passwd tom#groupadd student(2)新建文件file#touch file(3)将文件file 改名为test,然后将test拷贝到/home#mv file test#cp test /home(4)将/home/test文件的拥有着修改为tom,将文件所属组该为student#chown tom:student /home/test第2章一、填空题1Vi的三中工作模式:插入模式、命令模式、末行模式。2Gcc生成可执行文件的四个步骤:预处理、编译、汇编、链接。3Makefile 用来描述程序或工程中各个文件之间的相互联系4make。命令用来及时makefile文件中的命令5库分为 静态库 和共享库 。二、简答题1静态库和共享库的区别(1)静态库的代码在编译时就已连接到开发人员开发的应用程序中。(2)共享库只是在程序开始运行时才载入,在编译时,只是简单地指定需要使用的库函数。(3)静态库文件以.a结尾,共享库文件以.so结尾。2Makefile 文件的显式规则是什么?目标文件:依赖文件列表更新目标文件使用的命令三、编程题1编写makefile:当前目录下有文件a1.c a2.c a3.c ,其中a1.c中带有main函数,其他文件为用户自定义函数供main函数调用,编写完成对这几个文件的编译工作生成可执行文件aCC=gccBIN=a$(BIN):a1.o a2.o a3.o $(CC) -o $(BIN) $a1.o:a1.c $(CC) -c a1.ca2.o:a2.c $(CC) -c a2.ca3.o:a3.c $(CC) -c a3.cclean: rm -f *.o $(BIN)2编写makefile:当前目录下有很多独立的程序文件:aa.c bb. C cc .c(即每个文件中都有main函数),分别要生成对应的我可执行文件aabbcc,为了方便用户操作,写一个makefile使得调用make命令会重新编译最新修改的程序文件CC=gccALL:aa bb ccaa:aa.c $(CC) -o aa aa.cbb:bb.c $(CC) -o bb bb.ccc:cc.c $(CC) -o cc cc.cclean: rm -f aa bb cc第3章一、选择题1下列那个命令不是现实多个环境变量的CAset Bexport Cpwd Denv2获取某个环境变量值使用函数AAgetenv Bputenv Csetenv Dunsetenv二、填空题1命令行参数是main。函数的参数2Main函数的参数若有两个参数则第一个参数代表命令行参数个数、第二个参数代表指向各命令行参数字符串的指针数组。3Linux 中日期时间的表示方法有:算术类型、结构体类型、字符串类型。4使用time函数获得的时间是算术类型、代表自1970年1月1日零时到当前时间的秒数。5把算数类型时间表示转换成结构体类型使用()函数localtime。6把算数类型时间表示转换成字符串类型使用()函数ctime。7Maketime函数把()类型时间表示转换成()类型时间表示 结构体、算术。8如果一个C程序的入口表示为main(int argc,char *argv),编译该程序后的可执行程序为a.out,那么在命令“./a.out f foo”后,main中的参数argv1指向的字符串是(“-f”)。三、编程题1如果一个用户输入一个参数,则打印“no args”,如果输入两个参数并且第二个命令行参数是-a,则打印“I will deal with -a”,如果是-l则打印“I will deal with -l”#include int main(int argc,char *argv)if(argc=1)printf(no argsn);else if(argc=2)if(strcmp(argv1,-a)=0)printf(I will deal with -an);if(strcmp(argv1,-l)=0)printf(I will deal with -ln);return 0;第4章一、选择题1文件系统保存在磁盘的BA.引导块 B.超级块 C.i节点块 D.数据块2Linux文件系统的根目录的i节点号为CA. 0 B. 1 C.2 D.33文件描述符的数据类型是BA. char B.int C.double D.float4设置文件偏移量的系统调用是CA. truncateB. syncC . lseekD.create5下面那个不是lseek第三个参数的取值CA.SEEK_SETB.SEEK_CURC.SEEK_NOWD.SEEK_END6Sync系统调用的功能是AA.刷新所有缓存到磁盘 B.刷新缓存中某个文件的所有信息到磁盘C.刷新缓存中某个文件的数据到磁盘D.刷新磁盘中某个文件的属性信息到磁盘7Fsync系统调用的功能是BA.刷新所有缓存到磁盘 B.刷新缓存中某个文件的所有信息到磁盘C.刷新缓存中某个文件的数据到磁盘D.刷新磁盘中某个文件的属性信息到磁盘8Fdata系统调用的功能是CA.刷新所有缓存到磁盘 B.刷新缓存中某个文件的所有信息到磁盘C.刷新缓存中某个文件的数据到磁盘D.刷新磁盘中某个文件的属性信息到磁盘二、填空题1Linux系统下表示标准输入、标准输出和标准错误输出的文件描述符(符号表示)分别为(STDIN_FILENO、STDOUT_FILENO 、STDERR_FILENO),它们的值分别为0、1、2。2数字635表示的权限使用字母的方式表示为 (rwwxr-x)、使用符号方式表示为(S_IRUSR | S_IWUSR | S_IWGRP | S_IXGRP | S_IROTH | S_IXOTH)。3系统调用open的功能是打开或创建文件。4 使用open打开文件时有三个标志必须要选择其一,这三个标志是O_RDONLY、O_WRONLY、O_RDWR。5文件偏移量代表下一次读或写的位置。6将文件偏移量市值为当前偏移处之前的4个字节的维护使用lseek(fd,(4),(SEEK_CUR)。7设置打开文件标志(O_TRUNC),可以截断文件为0,使用系统调用(truncate)可以截断文件或者加长文件。8如果umask设置为022,则创建一个新文件夹(数字表示)的权限为(644)、创建一个新目录的权限为(755)。9如果umask设置为024,则创建一个新文件夹(数字表示)的权限为(642)、创建一个新目录的权限为(753)。三、简答题1Linux文件类型主要有哪七类?常规文件、目录文件、字符设备文件、块设备文件、管道文件、链接文件、套接字文件2简述文件、i节点、文件名、目录之间的关系每个存在磁盘上的文件都由i节点和数据块两部分组成,i节点和文件一一对应,一个i节点可以对应多个文件名,文件名和i节点的对应关系叫做文件的硬链接,文件名和i节点的对应关系保存在目录文件中。3什么是文件描述符?(1)一个非负整数,内核以此来标识一个特定进程正在操作的文件。(2)012代表三个标准的文件描述符,分别为标准输入、标准输出、标准错误输出4使用符号方式表示rwxrwxrwx权限S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IWGRP|S_IXGRP|S_IROTH| S_IWOTH|S_IXOTH5写出open一下6种打开标志:只读、只写、读写、追加、文件不存在创建、截断为0O_RDONLY O_WRONLY O_RDWR O_APPEND O_CREAT O_TRUNC 6读程序,写出执行结果并解释得到该结果的原因main()int fd1,fd2;fd1=open(“/etc/passwd”,O_RDONLY);fd2=open(“/etc/passwd”,O_RDWR);printf(“fd1=%d,fd2=%dn”,fd1,fd2);close(fd1);close(fd2);结果:fd1=3 fd2=4原因:open返回的文件描述符为最小可用的非负整数,012是三个标准的文件描述符默认已经被占用,所以第一个open的返回值为3,第二个open返回的是4。五、编程题1向文件f1中写入“hello world!”,然后再将f1中的内容读出并显示在屏幕上。(注意必要的错误判断)#include #include #include int main()int fd;char buf113=hello world!;char buf212;int num;fd = open( f1,O_RDWR| O_CREAT | O_TRUNC, 0644);if(fd=-1) perror(f1 not open);exit(1);num=write(fd,buf1,sizeof(buf1)-1); if(num!=(sizeof(buf1)-1) printf(write less than wantn);lseek(fd,0,SEEK_SET);num=read(fd,buf2,12);if(num!=12)printf(read less than 12n);write(1,buf2,12);close(fd);2向文件f2中写入“aabbccddee”,然后将偏移量移到绝对值偏移为4的位置处,读6个字符,并将结果显示在屏幕上#include #include #include int main()int fd;char buf111=aabbccddee;char buf210;int num;fd = open( f2,O_RDWR| O_CREAT | O_TRUNC, 0644);if(fd=-1) perror(f2 not open);exit(1);num=write(fd,buf1,sizeof(buf1)-1); if(num!=(sizeof(buf1)-1)printf(write less than wantn);lseek(fd,4,SEEK_SET);num=read(fd,buf2,6);if(num!=6)printf(read less than 6n);write(1,buf2,6);close(fd);3向文件f3中写入“aabbccddeeffgghh”,然后将文件截短后的文件内容读出并显示在屏幕上#include #include #include int main()int fd;char buf117=aabbccddeeffgghh;char buf28;int num;fd = open( f3,O_RDWR| O_CREAT | O_TRUNC, 0644);if(fd=-1) perror(f3 not open);exit(1);num=write(fd,buf1,sizeof(buf1)-1); if(num!=(sizeof(buf1)-1)printf(write less than wantn);lseek(fd,0,SEEK_SET);ftruncate(fd,8);num=read(fd,buf2,8);if(num!=8)printf(read less than 8n);write(1,buf2,8);close(fd);4在程序中将umask改至044,创建文件f4#include #include #include int main()int fd;umask(044);creat(f4,S_IRUSR|S_IWUSR);5实现“cat文件名”显示文件内容#include main(int argc,char *argv) int fd; int num; char buf10; if(argc!=2) printf(miss filenamen); exit(1); fd=open(argv1,O_RDONLY); if(fd=-1) perror(error open); exit(1); while(num=read(fd,buf,10)!=0) write(1,buf,num); close(fd);6实现“cp 原文件 目标文件”#includ
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 污水处理厂设备更新项目社会稳定风险评估报告
- 国标化学知识点测试题及答案详解
- 2023二年级数学上册 三 表内乘法(二)1 67的乘法口诀第1课时 67的乘法口诀说课稿 西师大版
- 公路工程施工人员安全培训与管理方案
- 23.3.2.方差(说课稿)-2023-2024学年冀教版九年级上学期数学
- 殡葬服务合同
- 第二章 第三节 第1课时 河流湖泊众多(新教学设计)2023-2024学年八年级上册地理(商务星球版)
- 2023九年级语文上册 第一单元 1 沁园春 雪说课稿 新人教版
- 第三单元 欣赏的智慧学习项目三 感受音乐的铺垫与高潮(二) 教学设计 人教版(简谱)(2024)初中音乐七年级下册
- 第11课 元朝的统治(说课稿)2025-2026学年七年级历史下册同步说课稿(统编版)
- DIEP乳房重建术后的护理指南
- 艺术漆涂料施工合同协议
- 陈皮种植转让合同协议
- 预防青少年药物滥用-主题班会课件
- 世界语与英语的词汇对比分析论文
- 2025年度建筑公司分公司市场拓展合作合同
- 《林氏木业供应链管理现状、问题及优化建议》14000字(论文)
- 八年级英语组工作总结
- 《船用格栅》规范
- 《出师表》原文及英文对照版-20210722094410
- 2024-2025学年人教版八年级英语上册Unit 2 测试卷
评论
0/150
提交评论