Linux高级编程笔试题答案
- 格式:docx
- 大小:750.96 KB
- 文档页数:36
linux笔试题及答案在本篇文章中,将为您呈现一系列Linux笔试题目以及它们的详细答案。
这些题目将涵盖Linux操作系统的不同方面,以便帮助您巩固对Linux的理解和应用。
让我们开始吧!1. 问题:什么是Linux操作系统?答案:Linux是一种开源操作系统,基于UNIX的设计原则。
它具有强大的稳定性、可靠性和安全性,广泛用于服务器和个人计算机等领域。
2. 问题:如何在Linux中检查当前路径?答案:使用命令`pwd`可以查看当前所在路径。
3. 问题:如何在Linux中创建一个目录?答案:使用命令`mkdir`,后跟目录名称,例如`mkdir mydirectory`可以创建名为`mydirectory`的目录。
4. 问题:如何列出一个目录中的所有文件和子目录?答案:使用命令`ls`,在命令后面跟上目标目录的路径,例如`ls mydirectory`可以列出`mydirectory`目录中的所有文件和子目录。
5. 问题:如何在Linux中复制文件?答案:使用命令`cp`,后跟要复制的文件路径和目标位置的路径,例如`cp myfile.txt mydirectory/`可以将名为`myfile.txt`的文件复制到`mydirectory`目录中。
6. 问题:如何在Linux中删除文件?答案:使用命令`rm`,后跟要删除的文件的路径,例如`rm myfile.txt`可以删除名为`myfile.txt`的文件。
7. 问题:如何在Linux中查找文件?答案:使用命令`find`,后跟要查找的目录路径和文件名,例如`find /path/to/directory -name myfile.txt`可以在`/path/to/directory`目录及其子目录中查找名为`myfile.txt`的文件。
8. 问题:如何在Linux中显示文件的内容?答案:使用命令`cat`,后跟要显示内容的文件路径,例如`cat myfile.txt`可以显示名为`myfile.txt`的文件的内容。
Linux考试练习题(附答案)一、选择1、下列()不属于Linux常用的shell:A、bashB、shC、ashD、bach2、在添加用户的时候可以使用()参数来指定用户的默认shell:A、-dB、-sC、-cD、-g3、更改用户密码使用()命令:A、useraddB、passwdC、groupaddD、finger4、使用rpm安装一个软件的正确命令是():A、rpm -eB、rpm -iC、rpm -vD、rpm -U5、观察系统当前进程的运行情况的命令是():A、freeB、dmesgC、topD、last6、下列()环境变量表示当前目录:A、PATHB、HOMEC、PWDD、SHELL7、删除用户的时候可以使用()参数,把用户的主目录也一起删除:A、-dB、-rC、-cD、-g8、添加用户组使用()命令:A、groupaddB、newgrpC、useraddD、userdel9、卸载一个rpm包的命令是():A、rpm -eB、rpm -iC、rpm -UD、rpm -v10、下面哪个命令可以显示文本文件的内容( ):A、moreB、lnC、manD、type11、下面哪个目录存放用户密码信息() :A、/bootB、/etcC、/varD、/dev12、下面哪个命令可以分页显示大文本文件( ):B、catC、moreD、type13、默认情况下管理员创建一个用户,就会在()目录下创建一个用户主目录:A、/usrB、/homeC、/rootD、/etc14、为了将当前目录下的归档文件myftp.tgz解压缩到/tmp目录下,我们可以使用:A. tar xvzf myftp.tgz -C /tmpB. tar xvzf myftp.tgz -R /tmpC. tar vzf myftp.tgz -X /tmpD. tar xvzf myftp.tgz /tmp15、为了保证系统的安全,现在的linux系统一般将/etc/passwd 密码文件加密后,保存为____ 文件。
Linux操作系统考试题库及答案一、单选题(每题2分,共20分)1. Linux系统中,哪个命令用于查看当前路径?A. pwdB. lsC. cdD. mkdir答案:A2. 在Linux中,如何查看当前登录用户信息?A. whoB. whoamiC. idD. users答案:A3. 以下哪个选项不是Linux文件系统的组成部分?A. 文件B. 目录C. 盘符D. 特殊文件答案:C4. Linux系统中,如何查看一个文件的内容而不编辑它?A. viB. catC. editD. touch答案:B5. 在Linux中,哪个命令用于改变文件权限?A. chmodB. chownC. chgrpD. chattr答案:A6. Linux系统中,如何查看系统运行时间和平均负载?A. uptimeB. topC. psD. free答案:A7. 在Linux中,如何查看磁盘使用情况?A. dfB. duC. lsD. pwd答案:A8. Linux系统中,哪个命令用于查找文件?A. findB. grepC. locateD. which答案:A9. 在Linux中,如何查看当前路径下所有文件和目录的详细信息?A. ls -lB. ls -aC. ls -RD. ls -d答案:A10. Linux系统中,如何创建一个名为“test”的目录?A. mkdir testB. make testC. create testD. new test答案:A二、多选题(每题3分,共15分)1. 在Linux中,哪些命令可以用来查看进程信息?(多选)A. psB. topC. killD. jobs答案:A, B2. 以下哪些选项是Linux系统中的文本编辑器?(多选)A. viB. nanoC. emacsD. gedit答案:A, B, C3. 在Linux中,哪些命令可以用来压缩文件?(多选)A. gzipB. tarC. zipD. bzip2答案:A, B, C, D4. 以下哪些选项是Linux系统中的网络配置工具?(多选)A. ifconfigB. ipC. netstatD. route答案:A, B, C, D5. 在Linux中,哪些命令可以用来管理服务?(多选)A. systemctlB. serviceC. chkconfigD. init答案:A, B, C三、判断题(每题2分,共10分)1. Linux系统中,使用“rm -rf”命令可以安全地删除文件和目录。
Linux考试试题100道(附答案)1、Linux系统中,用户文件描述符0 表示______。
A.标准输入设备文件描述符B.标准输出设备文件描述符B.管道文件描述符 D.标准错误输出设备文件描述符答案:A2、以长格式列目录时,若文件test的权限描述为:drwxrw-r–,则文件test的类型及文件主的权限是______。
A.目录文件、读写执行B.目录文件、读写C.普通文件、读写D.普通文件、读答案:A3、当字符串用单引号(’’)括起来时,SHELL将______。
A.解释引号内的特殊字符B.执行引号中的命令C.不解释引号内的特殊字符D.结束进程答案:C4、/etc/shadow文件中存放______。
A.用户账号基本信息B.用户口令的加密信息C.用户组信息D.文件系统信息答案:B5、若当前目录为/home,命令ls–l 将显示home 目录下的()。
A.所有文件B.所有隐含文件C.所有非隐含文件D.文件的具体信息答案:D6、为卸载一个软件包,应使用_____。
A.rpm -iB.rpm -eC.rpm -qD.rpm -V答案:B7、下面关于文件“/etc/sysconfig/network-scripts/ifcfg-eth0”的描述哪个是正确的?( )。
A.它是一个系统脚本文件B.它是可执行文件C.它存放本机的名字D.它指定本机eth0的IP地址答案:D8、如何快速切换到用户John的主目录下?( )A.cd @JohnB.cd #JohnC.cd &JohnD.cd ~John答案:D9、启动DNS服务的守护进程()A. httpd startB.httpd stopC. named startD. named stop答案:C10、Linux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上下移动来查看文件内容,应使用命令()A.cat B. more C. less D. menu答案:C11、在LINUX中,要查看文件内容,可使用()命令。
linux 试题及答案第一部分:选择题1. Linux 是一种()操作系统。
a) 开源b) 闭源c) 商业d) 私有答案:a) 开源2. 在 Linux 中,用于显示当前所在路径的命令是()。
a) pwdb) lsc) cdd) cp答案:a) pwd3. 在 Linux 中,用于创建目录的命令是()。
a) mkdirb) touchc) rmd) mv答案:a) mkdir4. Linux 中,用于列出当前目录下的文件和文件夹的命令是()。
a) lsb) cdc) pwdd) rm答案:a) ls5. 在 Linux 中,用于复制文件的命令是()。
a) cpb) mvc) touchd) mkdir答案:a) cp第二部分:填空题1. Linux 操作系统的核心部分被称为()。
答案:内核2. Linux 中,用于修改文件或目录的权限的命令是()。
答案:chmod3. 在 Linux 中,用于压缩文件的命令是()。
答案:tar4. Linux 是基于()开发的操作系统。
答案:UNIX5. Linux 中,默认的超级用户账户是()。
答案:root第三部分:简答题1. 什么是 Linux 操作系统?答:Linux 是一种开源操作系统,它基于 UNIX 操作系统开发而成。
Linux 以其稳定性、可定制性和安全性而闻名,并广泛运用于服务器和嵌入式设备等领域。
2. 如何在 Linux 中创建一个新用户?答:可以使用 `useradd` 命令来创建一个新用户,例如 `useradd -m newuser`。
其中,`-m` 参数表示同时创建用户的主目录。
3. 如何修改文件的访问权限?答:可以使用 `chmod` 命令来修改文件的访问权限。
例如,要将文件的所有者权限设置为可读可写可执行,可以使用 `chmod u+rwx filename` 命令。
4. 如何在 Linux 中安装软件包?答:可以使用包管理器,如 `apt` (用于 Debian 系统)或 `yum` (用于 Red Hat 系统),来安装软件包。
LINUX(UBUNTU)大作业Linux第一次作业一、选择题1、下列哪种说法是错误的( C ) 。
A.操作系统是裸机之上的第一层软件B.操作系统控制和管理全部的计算机资源C.Microsoft Office 是操作系统的一种D.操作系统应为用户提供便捷的操作界面2、以下说法中正确的是(C )。
A.Windows 8是单用户单任务操作系统B.MS-DOS是多用户多任务操作系统C.Linux是多用户多任务操作系统D.Unix是单用户多任务操作系统3、下列哪种说法是错误的( C ) 。
A.操作系统可用于控制和管理计算机系统资源B.操作系统可用于对各类任务进行调度C.操作系统可用于完成源代码编译D.操作系统应为用户提供便捷的操作界面4、Linux中系统超级管理员的帐户是(B )。
A.adminB.rootC.administratorD.superuser5、Linux系统是一个(D )的操作系统。
A.单用户、单任务B.单用户、多任务C.多用户、单任务D.多用户、多任务6、Linux是一个功能强大的操作系统,同时它是一个(C )。
A、商业软件B、共享软件C、自由软件D、专利软件7、自由软件的含义是(B )。
A.用户不需要付费B.软件可以自由修改和发布C.只有软件作者才能向用户收费D.软件发行商不能向用户收费8. 超级用户登录后的操作提示符是( B ) 。
A、$B、#C、&D、@9、在某终端显示信息为:[user@localhost ~]$,其中“~”表示(D )。
A.当前目录B.名为~的主机C.系统根目录/D.用户user的家目录10、关于Linux内核版本的说法,以下错误的是(C )。
A.表示为主版本号.次版本号.修正号B.1.2.3表示稳定的发行版C.1.3.3表示稳定的发行版D.2.2.5表示对内核2.2的第5次修正二、简答题1、请简述Linux操作系统有什么优点?答:Linux的主要优点包括:•提供了先进的网络支持:内置TCP/IP协议;•真正意义上的多任务、多用户作系统;•与UNIX系统在源代码级兼容,符合IEEE POSIX标准;•支持数十种文件系统格式;•开放源代码,用户可以自己对系统进行改进;•采用先进的内存管理机制,更加有效地利用物理内存。
Linux考试试题及答案一、选择题1、在/etc/fstab文件中指定的文件系统加载参数中,那个参数一般用于CD-ROM等移动设备(D )A.defau ItsB.swC.rw 和roD.noauto2、Linux文件权限一共10位长度,分成四段,第三段表示的内容是(C)A.文件类型B.文件所有者的权限C.文件所有者所在组的权限D.其他用户的权限3、在使用mkdir命令创建新的目录时,在其父目录不存在时先创建父目录的选项是(D)A.-mB.-dC.-fD.-p4、一台主机要实现通过局域网与另一个局域网通信,需要做的工作是(C)A.配置域名服务器B.定义一条本机指向所在网络的路由C.定义一条本机指向所在网络网关的路由D.定义一条本机指向目标网络网关的路由5、下列提法中,不属于ifconfig命令作用范围的是(D)A.配置本地回环地址B.配置网卡的IP地址C.激活网络适配器D.加载网卡到内核中6、下列关于链接描述,错误的是(B)A.硬链接就是让链接文件的i节点号指向被链接文件的i节点B.硬链接和符号连接都是产生一个新的i节点C.链接分为硬链接和符号链接D.硬连接不能链接目录文件7、下列文件中,包含了主机DNS配置信息的文件是(C )A./etc/host. confB./etc/hostsC./etc/resolv. confD./etc/networks8、那个命令可以从文本文件的每一行中截取指定内容的数据(D)A.cpB.ddC.fmtD.cut9、L inux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上下移动来查看文件内容,应使用(C)命令。
A.catB.moreC.lessD.menu10、对名为fido的文件用chmod 551 fido进行了修改,则它的许可权是(D)A.-rwxr—xr—xB.-rwxr-一r一一C.-r——r——r——D.-r—xr—x—x11 >文件exerl的访问权限为rw~r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列命令正确的是(A)A.chmod a+x g+w exerlB.chmod 765 exerlC.chmod o+x exerlD.chmod g+w exerl12、有关归档和压缩命令,下面描述正确的是(C)A.用uncompress命令解压缩由compress命令生成的后缀为.zip的压缩文件B.unzip命令和gzip命令可以解压缩相同类型的文件C.tar归档且压缩的文件可以由gzip命令解压缩D.tar命令归档后的文件也是一种压缩文件13、下列那一项不是进程和程序的区别(B)A.程序是一组有序的静态指令,进程是一次程序的执行过程B.程序只能在前台运行,而进程可以在前台或后台运行C.程序可以长期保存,进程是暂时的D.程序没有状态,而进程是有状态的14、下列关于/etc/fstab文件描述,正确的是(D)A.fstab文件只能描述属于linux的文件系统B.CD_ROM和软盘必须是自动加载的C.fstab文件中描述的文件系统不能被卸载D.启动时按fstab文件描述内容加载文件系统15、如果想配置一台匿名ftp服务器,应修改那个文件(C)A./etc/gatewayB./etc/ftpserversC./etc/ftpusersD./etc/inetd. conf16、关于进程调度命令,那一项是不正确的(B)A.当日晚11点执行clear命令,使用at命令:at 23: 00 today clearB.每年1月1日早上6点执行date命令,使用at命令:at 6am Jan 1 dateC.每日晚11点执行date命令,crontab文件中应为:0 23 * dateD.每小时执行一次clear命令,crontab文件中应为:0 */1 * clear17、可以完成主机名与IP地址的正向解析和反向解析任务的命令是(A)A.nslookupB.arpC.ifconfigD.dnslook18、将光盘/dev/hdc卸载的命令是(C)A.umount/dev/hdcB.unmount/dev/hdcC.umount/mnt/cdrom /dev/hdcD.unmount/mnt/cdrom /dev/hdc19、用ftp进行文件传输时,有两种模式(C)E.Word 和binaryF.txt 和Word DocumentG.ASCII 和binaryH.ASCII 和Rich Text Format20、crontab文件由六个域组成,每个域之间用空格分割,其排列如下⑻I.MIN HOUR DAY MONTH YEAR COMMANDJ.MIN HOUR DAY MONTH DAYOFWEEK COMMANDMAND HOUR DAY MONTH DAYOFWEEKMAND YEAR MONTH DAY HOUR MIN二、填空题1.在Linux系统中,以文件方式访问设备。
、填空题1.建立用户账号的命令是__useradd2.修改账号密码的命令是—passwd o3.更改用户密码过期信息的命令是—chage4.创建一个新组的命令是groupadd。
5.用于在不注销的情况下切换到系统中的另一个用户的命令是 ___ s u __________6.显示系统中进程信息的命令是ps -aux7.以树状方式表现进程的父子关系的命令是pstree8.显示当前系统正在执行的进程的相关信息的命令是top。
9.显示或者设置当前系统的主机名的命令是hostname?10.Linux 系统中使用最多的文件系统是ext3/4 o11.列出磁盘分区信息的命令是df。
12.将设备挂载到挂载点处的命令是—mount。
13.检查文件系统的磁盘空间占用情况的命令是du14.统计目录(或文件)所占磁盘空间大小的命令是—du。
15.为文件建立在其他路径中的访问方法(链接)的命令是—ln,链接有两种:软链接 ______ 和—链接。
改变文件或目录的读写和执行权限的命令是—chmod。
17.指定在创建文件或目录时预设权限掩码的命令是umask18.改变文件或目录所有权的命令是—chown。
19.ACL可以为某个文件单独设置该文件具体的某用户或组的权限。
需要掌握的命令也只有三个:getfacl_、_setfacl_> _chacl_?20.gzip命令的功能是_____ 压缩文件。
21.使用tar命令时,应该记住的两个选项组合是:_-cvf_和_-xvf,他们的功能分别是:—打包目录(文件)成一个文档 _和—释放打包的文档__________ O22.Shell有四种变量:用户白定义变量、环境变量、内部变量和位置变量。
23.在定义变量时,变量名前不应加符号$在引用变量的内容时则应在变量名前加该符号。
24.将当前目录下的文件man.config压缩为man.config.bz2的命令是bzip2 - z man.config25.将/home/stu目录下所有的.gz压缩文件解压缩,包括子目录,命令是gunzip - r/home/stu26.将当前目录下的bin目录和hello、hello.c文件打包并压缩为binzxj.tar.gz 文件的命令是tar — czvf binzxj.tar.gz bin hello hello.c 27.将/home/ixdba 目录做归档压缩,压缩后生成ixdba.tar.bz2文件,并将此文件保存到/home目录下,实现此任务的tar命令格式tar -cjvf /home/ ixdba.tar.bz2/home/ixdba28.启动进程有手动启动和调度启动两种方法,其中调度启动常用的命令为at、batch和crontab。
Linu*认证笔试基此题〔答案见最后〕(以下均为单项选择题)1.cron 后台常驻程序 (daemon) 用于:A. 负责文件在网络中的共享B. 管理打印子系统C. 跟踪管理系统信息和错误D. 管理系统日常任务的调度2.在大多数Linu*发行版本中,以下哪个属于块设备 (block devices) ?A. 串行口B. 硬盘C. 虚拟终端D. 打印机3.下面哪个Linu*命令可以一次显示一页内容?A. pauseB. catC. moreD. grep4.怎样了解您在当前目录下还有多大空间?A. Use dfB. Use du /C. Use du .D. Use df .5.怎样更改一个文件的权限设置?A. attribB. chmodC. changeD. file6.假设您需要找出 /etc/my.conf 文件属于哪个包 (package) ,您可以执行:A. rpm -q /etc/my.confB. rpm -requires /etc/my.confC. rpm -qf /etc/my.confD. rpm -q | grep /etc/my.conf7.假设当前系统是在 level 3 运行,怎样不重启系统就可转换到 level 5 运行?A. Set level = 5B. telinit 5C. run 5D. ALT-F7-58.那个命令用于改变 IDE 硬盘的设置?A. hdparamB. ideconfigC. hdparmD. hddparm9.下面哪个命令可以列出定义在以后特定时间运行一次的所有任务?B. cronC. batchD. at10.下面命令的作用是:set PS1="[\u\w\t]\\$" ; e*port PS1A. 改变错误信息提示B. 改变命令提示符C. 改变一些终端参数D. 改变辅助命令提示符11.作为一个管理员,你希望在每一个新用户的目录下放一个文件 .bashrc ,则你应该在哪个目录下放这个文件,以便于新用户创立主目录时自动将这个文件复制到自己的目录下。
linux面试笔试题Linux面试笔试题(共2000字)一、选择题(每题2分,共30分)1. Linux是一种开源的操作系统,它最早由谁发起的?A. Linus TorvaldsB. Bill GatesC. Steve JobsD. Richard Stallman2. Linux的文件系统是?A. FAT32B. NTFSC. EXT4D. HFS+3. 在终端中,输入命令“ls -l”,可以显示什么信息?A. 当前目录下的文件列表,详细信息B. 当前目录下的文件列表,包括隐藏文件C. 当前目录下的文件列表,只显示文件名D. 当前目录下的文件列表,按文件大小排序4. 在Linux中,如何查看当前的IP地址?A. ifconfigB. ipconfigC. pingD. route -n5. Linux中,哪个命令用于创建目录?A. mkdirB. touchC. cpD. rm6. 下列哪个命令可以查看系统的负载情况?A. uptimeB. topC. psD. netstat7. 在Linux中,如何在终端中编辑文件?A. vimB. catC. grepD. sed8. Linux中,哪个命令用于压缩文件?A. tarB. zipC. gzipD. unzip9. 在Linux中,如何使用通配符查找文件?A. findB. locateC. grepD. ls10. 在Linux中,如何修改文件的权限?A. chownB. chmodC. chgrpD. lsattr11. Linux中的环境变量配置文件是?A. /etc/profileB. /etc/environmentC. ~/.bash_profileD. ~/.bashrc12. 在Linux中,如何将文件复制到远程服务器上?A. scpB. sshC. ftpD. sftp13. 在Linux中,如何列出当前登录的用户?A. whoB. psC. wD. finger14. Linux中,哪个命令可以用于安装软件包?A. apt-getB. yumC. aptD. pacman15. Linux中,哪个命令可以用于查看当前系统的进程?A. psB. topC. killD. pstree二、填空题(每题2分,共20分)1. Linux中,将文件从一个目录复制到另一个目录可以使用命令 _______。
Linux操作系统考试题库及答案一、单项选择题1. Linux操作系统的创始人是()。
A. Bill GatesB. Linus TorvaldsC. Steve JobsD. Richard Stallman答案:B2. 在Linux系统中,查看当前路径的命令是()。
A. pwdB. lsC. cdD. mkdir答案:A3. 在Linux系统中,以下哪个命令用于查看文件内容?()A. catB. grepC. findD. touch答案:A4. 在Linux系统中,以下哪个命令用于创建目录?()A. touchB. mkdirC. rmdirD. rm答案:B5. 在Linux系统中,以下哪个命令用于删除文件?()A. mkdirB. rmdirC. rmD. touch答案:C6. 在Linux系统中,以下哪个命令用于查找文件?()A. grepB. findC. catD. ls答案:B7. 在Linux系统中,以下哪个命令用于查看当前登录用户?()A. whoB. userC. usersD. whoami答案:A8. 在Linux系统中,以下哪个命令用于查看系统运行时间和平均负载?()A. uptimeB. topC. psD. free答案:A9. 在Linux系统中,以下哪个命令用于查看磁盘空间使用情况?()A. dfB. duC. lsD. pwd答案:A10. 在Linux系统中,以下哪个命令用于查看网络配置?()A. ifconfigB. netstatC. routeD. all of the above答案:D二、多项选择题1. 在Linux系统中,以下哪些命令用于文本编辑?()A. viB. nanoC. emacsD. gedit答案:ABC2. 在Linux系统中,以下哪些命令用于文件权限管理?()A. chmodB. chownC. chgrpD. ls答案:ABC3. 在Linux系统中,以下哪些命令用于进程管理?()A. psB. topC. killD. free答案:ABC4. 在Linux系统中,以下哪些命令用于网络管理?()A. ifconfigB. netstatC. pingD. route答案:ABCD5. 在Linux系统中,以下哪些命令用于磁盘管理?()A. dfB. duC. fdiskD. mount答案:ABCD三、判断题1. Linux是一个开源的操作系统。
高级编程笔试题答案一、选择题1.在网络字节序中,所谓”小端"(little endian)说法正确的是( B )A。
高字节数据存放在低地址处,低字节数据存放在高地址处B. 低字节位数据存放在内存低地址处,高字节位数据存放在内存高地址处C。
和编译器相关D. 上述答案都不正确2.C语言中,系统自动打开的文件是( D )A。
二进制文件 B.随机文件C。
非缓冲文件 D.设备文件3.TCP使用( B )进行流量控制.A。
3次握手法 B. 窗口控制机制C。
自动重发机制D。
端口机制4.TCP/IP层IP协议的服务是( C )A。
可靠服务 B. 有确认的服务C. 无连接数据报D. 以上都不对5.对于一个没有设置任何套接口选项的阻塞套接口,调用recv接收对方的数据,对方发送数据前突然断电,下列哪种情况将会发生( A )A. recv永远不会返回B。
recv立刻返回—1C. recv立刻返回0D. recv在等待很长一段时间后返回-16.下列哪些关于套接口选项函数的说法是正确的( C )A。
SO_DONTLINGER选项是让TCP套接口不对数据进行缓存,调用send函数后立刻将数据发送出去;B。
调用SO_RCVBUF和SO_SNDBUF调整TCP窗口的大小;C。
SO_REUSEADDR选项允许套接口绑定在一个已经在使用的地址上;D。
SO_MAX_MSG_SIZE选项获取每次调用TCP套接口send时,所能发送的最大字节数;二、问答题1.fork和vfork的区别?vfork用于创建一个新进程,而该进程的目的是exec一个新程序。
vfork与fork一样都创建一个子进程,但他并不把父进程地址空间完全复制到子进程中,因为子进程通常都会调用exec或(_exit),于是也就不会访问该地址空间.vfork与fork的另一个区别是vfork保证子进程先运行,在它调用exec或_exit 之后父进程才可能被调度运行。
linux系统编程试卷(答案)凌阳教育嵌入式培训系统编程部分测试试题注:考试为闭卷,程序题需上机操作运行出结果,考试时间为120分钟一:选择题(本题共4小题,每题3分共12分)1)下列不是Linux系统进程类型的是( D )A 交互进程B 批处理进程C 守护进程D 就绪进程(进程状态)2)以下对信号的理解不正确的是( B )A 信号是一种异步通信方式B 信号只用在用户空间进程通信,不能和内核空间交互C 信号是可以被屏蔽的D 信号是通过软中断实现的3)进程有三种状态( C )A 准备态、执行态和退出态B 精确态、模糊态和随机态C 运行态、就绪态和等待态D 手工态、自动态和自由态4)不是进程和程序的区别( B)A 程序是一组有序的静态指令,进程是一次程序的执行过程B 程序只能在前台运行,而进程可以在前台或后台运行C 程序可以长期保存,进程是暂时的D 程序没有状态,而进程是有状态的二:填空题(本题共6小题,2)、3)两题每空四分,其余每空一分。
共23分)1) 列举八种常见的进程间通信方式无名管道、有名管道、消息队列、信号量、共享内存、信号、套接字网络上两个主机的进程间通信方式为套接字2) 命名管道比无名管道的优势提供了一个可以访问的路径名,实现没亲缘关系的进程间通信3) 消息队列比命名管道和无名管道的优势可以按类型实现消息的随机查询,没必要先进先出4) 按照逻辑结构不同进行数据库划分,Sqlite 数据库属于哪一类关系型数据库5) 在C语言中操作sqlite数据库,常用的2中方式是sqlite_exec(回调)、sqlite_gettable(非回调)6) 列举四种进程调度算法先来先调度(FCFS)、短进程优先调度(SPF)、高优先级调度(HPF)、时间片轮转调度三:问答题(本题共7题,每题5分,共35分)1) 什么是系统调用?系统调用是通过什么方式陷入内核态的?请写出你对系统调用的理解。
什么是文件I/O和标准I/O库?文件I/O和标准I/O库的区别?系统调用是指操作系统提供给用户程序调用的一组特殊接口,用户程序可以通过这组接口获得操作系统内核提供的服务。
linux试题及答案csdn1. 什么是Linux操作系统?答案:Linux是一种开源的类Unix操作系统,它是基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。
Linux内核由Linus Torvalds在1991年首次发布。
2. Linux系统中的文件权限是如何表示的?答案:Linux系统中的文件权限通常由三组数字表示,每组数字代表不同的用户权限。
第一组代表所有者权限,第二组代表组权限,第三组代表其他用户权限。
每组数字由三位构成,分别代表读(4)、写(2)、执行(1)权限,数字相加即为该组权限。
3. 如何在Linux系统中查看当前登录用户?答案:在Linux系统中,可以使用`who`命令来查看当前登录的用户信息。
例如,输入`who`命令后,系统会列出当前登录的所有用户及其登录信息。
4. 解释Linux中的硬链接和软链接。
答案:硬链接是直接指向文件数据的链接,它与原文件共享相同的数据块,删除原文件不会影响硬链接。
软链接(符号链接)类似于Windows中的快捷方式,它是一个指向原文件的指针,删除原文件会导致软链接失效。
5. 在Linux中,如何查找名为“example.txt”的文件?答案:在Linux中,可以使用`find`命令来查找文件。
例如,输入`find / -name example.txt`命令,系统会从根目录开始搜索名为“example.txt”的文件。
6. 解释Linux中的chroot命令及其用途。
答案:chroot命令用于改变当前进程及其子进程的根目录。
通过chroot命令,可以将进程的根目录改变为指定的目录,这通常用于限制程序的运行环境,提高系统安全性。
7. 在Linux中,如何查看当前系统的内核版本?答案:在Linux中,可以使用`uname -r`命令来查看当前系统的内核版本。
该命令会输出当前运行的内核版本号。
8. 解释Linux中的管道命令。
答案:管道命令(|)允许将一个命令的输出作为另一个命令的输入。
大学linux考试试题及答案一、选择题(每题2分,共20分)1. Linux系统中,以下哪个命令用于查看当前目录下的文件和文件夹?A. lsB. pwdC. cdD. mkdir答案:A2. 在Linux中,以下哪个命令用于查看当前系统的运行时间和平均负载?A. uptimeB. topC. whoD. ps答案:A3. 在Linux系统中,以下哪个文件系统格式是默认的?A. FAT32B. NTFSC. ext4D. HFS+答案:C4. 在Linux中,以下哪个命令用于查看当前登录用户的信息?A. whoB. whoamiC. usersD. w答案:D5. 在Linux系统中,以下哪个命令用于查找文件?A. findB. grepC. locateD. search答案:A6. 在Linux中,以下哪个命令用于查看文件内容?A. catB. lessC. moreD. tail答案:A7. 在Linux系统中,以下哪个命令用于解压tar.gz文件?A. tar -xzvfB. tar -czvfC. gzip -dD. gunzip答案:A8. 在Linux中,以下哪个命令用于创建一个软链接?A. ln -sB. ln -hC. ln -fD. ln -i答案:A9. 在Linux系统中,以下哪个命令用于查看当前路径?A. lsB. pwdC. cdD. path答案:B10. 在Linux中,以下哪个命令用于查看当前系统的磁盘使用情况?A. dfB. duC. diskusageD. diskinfo答案:A二、填空题(每题2分,共20分)1. Linux系统中,使用________命令可以切换到用户的主目录。
答案:cd ~2. 在Linux中,使用________命令可以查看当前路径的绝对路径。
答案:pwd3. 在Linux系统中,使用________命令可以查看当前系统的版本信息。
答案:uname -a4. 在Linux中,使用________命令可以查看当前系统的内核版本。
L I N U X系统及其编程考试试题及答案(共11页)-本页仅作为预览文档封面,使用时请删除本页-《Linux系统及其编程》模拟练习参考答案一、单项选择题1.Linux的根分区的文件系统类型是C。
A. FAT16 C. ext3 D. NTFS2.安装好Linux操作系统后,系统默认的超级用户(系统管理员)账号是C。
A. administrator D. boot3.Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件,一般应将其放在C目录中。
A. /binB. /etcC. /devD. /lib4.Linux有三个查看文件的命令,若希望在查看文件内容过程中,可以用光标上下移动来查看文件内容,应使用C命令。
A. cat C. less D. menu 5.可以为文件或目录重命名的命令是C。
A. mkdirB. rmdirC. mvD. rm6.已知某用户stud1,其用户目录为/home/stud1。
如果当前目录为/home,进入目录/home/stud1/test的命令是:C。
A. cd testB. cd /stud1/testC. cd stud1/test home7.Linux文件权限一共10位长度,分成四段,第三段表示的内容是C。
A.文件类型B.文件所有者的权限C.文件所有者所在组的权限D.其他用户的权限8.将Windows C:盘(hda1)安装在Linux文件系统的/winsys目录下,命令是B。
A. mount –t vfat dev/hda1 /winsysB. mount –t vfat /dev/hda1 /winsysC. mount –t vfat /dev/hda1 winsysD. mount –t vfat dev/hda1 winsys9.一般情况下,系统启动过程自动加载的文件系统信息是存放在文件D中A. /usr/sbin/cfdiskB. /sbin/fdiskC. /etc/mtabD. /etc/fstab10.系统中有用户user1和user2,同属于users组。
高级编程笔试题答案一、选择题1.在网络字节序中,所谓”小端”(little endian)说法正确的是( B )A. 高字节数据存放在低地址处,低字节数据存放在高地址处B. 低字节位数据存放在内存低地址处, 高字节位数据存放在内存高地址处C. 和编译器相关D. 上述答案都不正确2.C语言中,系统自动打开的文件是( D )A.二进制文件B.随机文件C.非缓冲文件D.设备文件3.TCP使用( B )进行流量控制。
A. 3次握手法B. 窗口控制机制C. 自动重发机制D. 端口机制4.TCP/IP层IP协议的服务是( C )A. 可靠服务B. 有确认的服务C. 无连接数据报D. 以上都不对5.对于一个没有设置任何套接口选项的阻塞套接口,调用recv接收对方的数据,对方发送数据前突然断电,下列哪种情况将会发生( A )A. recv永远不会返回B. recv立刻返回-1C. recv立刻返回0D. recv在等待很长一段时间后返回-16.下列哪些关于套接口选项函数的说法是正确的( C )A. SO_DONTLINGER选项是让TCP套接口不对数据进行缓存,调用send函数后立刻将数据发送出去;B.调用SO_RCVBUF和SO_SNDBUF调整TCP窗口的大小;C. SO_REUSEADDR选项允许套接口绑定在一个已经在使用的地址上;D. SO_MAX_MSG_SIZE选项获取每次调用TCP套接口send时,所能发送的最大字节数;二、问答题1.fork和vfork的区别?vfork用于创建一个新进程,而该进程的目的是exec一个新程序。
vfork与fork一样都创建一个子进程,但他并不把父进程地址空间完全复制到子进程中,因为子进程通常都会调用exec或(_exit),于是也就不会访问该地址空间。
vfork与fork的另一个区别是vfork保证子进程先运行,在它调用exec或_exit之后父进程才可能被调度运行。
vfork使用如下例:#include <unistd.h>#include <stdio.h>#include <stdlib.h>#include <sys/types.h>int globvar=6;/*external variable in initialized data */intmain(void){int var; /* automatic variable on the stack */pid_t pid;var = 88;printf("before vfork\n"); /* we don’t flush stdio */if ((pid = vfork()) < 0){perror("vfork error");}else if(pid == 0){ /* child */globvar++; /* modify parent’s variables */var++;_exit(0); /* child terminates */}/* parent continues here */printf("pid = %ld, glob = %d, var = %d\n", (long)getpid(), globvar,var);exit(0);}2.excel协议族有哪些,举例函数原型?extern char **environ;int execl(const char *path, const char *arg, ...);int execlp(const char *file, const char *arg, ...);int execle(const char *path, const char *arg, ..., char * const envp[]);int execv(const char *path, char *const argv[]);int execvp(const char *file, char *const argv[]);int execvpe(const char *file, char *const argv[], char *const envp[]);3.创建线程、进程的函数是什么?fork、vfork、pthread_create4.线程间临界资源怎么保护?条件变量的使用?互斥锁、信号量条件变量是线程中的东西,就是等待某一条件的发生,和信号一样。
具体的用法可参见百度百科文章:/view/4025952.htm?fr=aladdin5.编译有线程的文件要加什么参数?-lpthread6.线程与进程的区别?线程是指进程内的一个执行单元,也是进程内的可调度实体。
与进程的区别:a)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;b)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源;c)线程是处理器调度的基本单位,但进程不是;d)二者均可并发执行。
7.多进程和多线程的区别,分别在什么情景下用?根据实际情况来判断,哪个更加合适就是哪个好1)需要频繁创建销毁的优先用线程原因请看上面的对比。
这种原则最常见的应用就是Web服务器了,来一个连接建立一个线程,断了就销毁线程,要是用进程,创建和销毁的代价是很难承受的2)需要进行大量计算的优先使用线程所谓大量计算,当然就是要耗费很多CPU,切换频繁了,这种情况下线程是最合适的。
这种原则最常见的是图像处理、算法处理。
3)强相关的处理用线程,弱相关的处理用进程什么叫强相关、弱相关?理论上很难定义,给个简单的例子就明白了。
一般的Server需要完成如下任务:消息收发、消息处理。
“消息收发”和“消息处理”就是弱相关的任务,而“消息处理”里面可能又分为“消息解码”、“业务处理”,这两个任务相对来说相关性就要强多了。
因此“消息收发”和“消息处理”可以分进程设计,“消息解码”、“业务处理”可以分线程设计。
当然这种划分方式不是一成不变的,也可以根据实际情况进行调整。
4)可能要扩展到多机分布的用进程,多核分布的用线程原因请看上面对比。
5)都满足需求的情况下,用你最熟悉、最拿手的方式至于“数据共享、同步”、“编程、调试”、“可靠性”这几个维度的所谓的“复杂、简单”应该怎么取舍,我只能说:没有明确的选择方法。
但我可以告诉你一个选择原则:如果多进程和多线程都能够满足要求,那么选择你最熟悉、最拿手的那个。
需要提醒的是:虽然我给了这么多的选择原则,但实际应用中基本上都是“进程+线程”的结合方式,千万不要真的陷入一种非此即彼的误区。
8.说出线程和进程的定义,为什么用多线程不用多进程?线程和进程的定义可以参见PPT相关部分,用多线程而不使用多进程多半都是因为利用了线程比进程具有的优势,比如:数据共享简单、创建销毁速度快,占用的资源少等优点。
9.创建信号量函数原型?typedef void (*sighandler_t)(int);sighandler_t signal(int signum, sighandler_t handler);10.互斥的实现方法?互斥锁和信号量11.二进制信号量与互斥信号量的区别?有什么作用?1. 互斥量用于线程的互斥,信号量用于线程的同步。
这是互斥量和信号量的根本区别,也就是互斥和同步之间的区别。
互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。
但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。
在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。
少数情况是指可以允许多个访问者同时访问资源以上区别是主要想记住的。
note:信号量可以用来实现互斥量的功能2.互斥量值只能为0/1,信号量值可以为非负整数。
也就是说,一个互斥量只能用于一个资源的互斥访问,它不能实现多个资源的多线程互斥问题。
信号量可以实现多个同类资源的多线程互斥和同步。
当信号量为单值信号量是,也可以完成一个资源的互斥访问。
3.互斥量的加锁和解锁必须由同一线程分别对应使用,信号量可以由一个线程释放,另一个线程得到。
4. 互斥锁应该加在线程内还是线程外?加锁机制是对资源的保护,如果两个线程对同一个资源有竞争,则需要在两个线程之外初始化锁,而在线程内去获取锁,对资源进行访问,然后释放锁。
12.产生死锁的必要条件是什么?解决死锁有几种方法?产生死锁的必要条件:a)互斥条件:进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占用。
b)请求和保持条件:当进程因请求资源而阻塞时,对已获得的资源保持不放。
c)不剥夺条件:进程已获得的资源在未使用完之前,不能剥夺,只能在使用完时由自己释放。
d)环路等待条件:在发生死锁时,必然存在一个进程--资源的环形链。
解决死锁的基本方法:a)预防死锁:资源一次性分配:(破坏请求和保持条件)可剥夺资源:即当某进程新的资源未满足时,释放已占有的资源(破坏不可剥夺条件)资源有序分配法:系统给每类资源赋予一个编号,每一个进程按编号递增的顺序请求资源,释放则相反(破坏环路等待条件)b)避免死锁:预防死锁的几种策略,会严重地损害系统性能。
因此在避免死锁时,要施加较弱的限制,从而获得较满意的系统性能。
由于在避免死锁的策略中,允许进程动态地申请资源。
因而,系统在进行资源分配之前预先计算资源分配的安全性。
若此次分配不会导致系统进入不安全状态,则将资源分配给进程;否则,进程等待。
其中最具有代表性的避免死锁算法是银行家算法。
c)检测死锁:首先为每个进程和每个资源指定一个唯一的号码;然后建立资源分配表和进程等待表d)解除死锁:当发现有进程死锁后,便应立即把它从死锁状态中解脱出来,常采用的方法有:剥夺资源:从其它进程剥夺足够数量的资源给死锁进程,以解除死锁状态;撤消进程:可以直接撤消死锁进程或撤消代价最小的进程,直至有足够的资源可用,死锁状态.消除为止;所谓代价是指优先级、运行代价、进程的重要性和价值等。
13.解释可重入?若一个程序或子程序可以“安全的被并行执行(Parallel computing)”,则称其为可重入(reentrant或re-entrant)的。
即当该子程序正在运行时,可以再次进入并执行它(并行执行时,个别的执行结果,都符合设计时的预期)。
若一个函数是可重入的,则该函数:不能含有静态(全局)非常量数据。
不能返回静态(全局)非常量数据的地址。
只能处理由调用者提供的数据。