当前位置:文档之家› Linux环境C程序设计

Linux环境C程序设计

2016Linux程序设计复习题

一、填空题 1、在Linux 系统中,以文件方式访问设备。 2、Linux 内核引导时,从文件/etc/fstab 中读取要加载的文件系统。 3、Linux 文件系统中每个文件用i 节点来标识。 4、全部磁盘块由四个部分组成,分别为引导块、专用块、i 节点表块和数据存储块。 5、链接分为:硬链接和符号链接。 6、超级块包含了i 节点表和空闲块表等重要的文件系统信息。 7、某文件的权限为:drw-r--r-- ,用数值形式表示该权限,则该八进制数为:644 ,该文件属性是目录。 8、前台起动的进程使用Ctrl+C 终止。 9、静态路由设定后,若网络拓扑结构发生变化,需由系统管理员修改路由的设置。 10、网络管理的重要任务是:控制和监控。 11、安装Linux 系统对硬盘分区时,必须有两种分区类型:文件系统分区和交换分区。 12、编写的Shell 程序运行前必须赋予该脚本文件执行权限。 13、系统管理的任务之一是能够在分布式环境中实现对程序和数据的安全 保护、备份、恢复和更新。 14、系统交换分区是作为系统虚拟存储器的一块区域。 15、内核分为进程管理系统、内存管理系统、I/O 管理系统和文件管理系统等四个子系统。 16、内核配置是系统管理员在改变系统配置硬件时要进行的重要操作。 17、在安装Linux 系统中,使用netconfig 程序对网络进行配置,该安装程序会一步步提示用 户输入主机名、域名、域名服务器、IP 地址、网关地址和子网掩码等必要信息。 18、唯一标识每一个用户的是用户ID 和用户名。 19、RIP 协议是最为普遍的一种内部协议,一般称为动态路由选择协议。 20、在Linux 系统中所有内容都被表示为文件,组织文件的各种方法称为文件系统。 21、DHCP可以实现动态IP 地址分配。 22、系统网络管理员的管理对象是服务器、用户和服务器的进程以及系统的各种资源。 23、网络管理通常由监测、传输和管理三部分组成,其中管理部分是整个网络管理的 中心。 24、当想删除本系统用不上的设备驱动程序时必须编译内核,当内核不支持系统上的 设备驱动程序时,必须对内核升级。 25、Ping 命令可以测试网络中本机系统是否能到达一台远程主机,所以常常用于测试网络 的连通性。 26、vi 编辑器具有三种工作模式:命令模式、底行模式和输入模式。 27、可以用ls –al 命令来观察文件的权限,每个文件的权限都用10 位表示,并分为四段, 其中第一段占 1 位,表示文件类型,第二段占 3 位,表示文件所有者对该文件的权限。 28、进程与程序的区别在于其动态性,动态的产生和终止,从产生到终止进程可以具有的基 本状态为:运行态、就绪态和等待态(阻塞态)。 29、DNS实际上是分布在internet 上的主机信息的数据库,其作用是实现IP地址和主

Linux程序设计报告

Linux程序设计课程设计 Linux程序设计课程组 长春工业大学 2017-12-24

课程设计任务书

目录 第1章设计要求 (1) 2.1设计目的 (1) 2.2设计要求 (1) 第2章测试数据设计 (2) 第3章算法实现 (3) 第4章算法结果 (19) 第5章结果可视化 (21) 第6章性能分析 (21) 参考文献 (22) 心得 (22)

第1章设计要求 2.1设计目的 理解临界区和进程互斥的概念,掌握用信号量和PV操作实现进程互斥的方法。 2.2设计要求 在linux环境下编写应用程序,该程序运行时能创建N个线程,其中既有读者线程又有写者线程,它们按照事先设计好的测试数据进行读写操作。 读者/写者问题描述如下: 有一个被许多进程共享的数据区,这个数据区可以是一个文件,或者主存的一块空间,甚至可以是一组处理器寄存器。有一些只读取这个数据区的线程(reader)和一些只往数据区中写数据的线程(writer)。以下假设共享数据区是文件。这些读者和写者对数据区的操作必须满足以下条件:读—读允许;读—写互斥;写—写互斥。这些条件具体来说就是: (1)任意多的读线程可以同时读这个文件; (2)一次只允许一个写线程往文件中写; (3)如果一个写线程正在往文件中写,禁止任何读线程或写线程访问文件; (4)写线程执行写操作前,应让已有的写者或读者全部退出。这说明当有读者在读文件时不允许写者写文件。 对于读者-写者问题,有三种解决方法: 1、读者优先 除了上述四个规则外,还增加读者优先的规定,当有读者在读文件时,对随后到达的读者和写者,要首先满足读者,阻塞写者。这说明只要有一个读者活跃,那么随后而来的读者都将被允许访问文件,从而导致写者长时间等待,甚至有可能出现写者被饿死的情况。 2、写者优先 除了上述四个规则外,还增加写者优先的规定,即当有读者和写者同时等待时,首先满足写者。当一个写者声明想写文件时,不允许新的读者再访问文件。 3、无优先 除了上述四个规则外,不再规定读写的优先权,谁先等待谁就先使用文件。

中南大学linux程序设计环境实验四(DOC)

实验4 Linux 高级程序设计 1、实验目的 (1) 了解Linux操作系统下应用程序开发流程 (2) 掌握gun工具链的使用 (3) 了解Linux高级编程技巧(例如IPC机制、系统调用等) 2、实验内容 (1) 编写一个简单的C语言程序,编写Makefile文件。了解编译过程,并用gdb进行调试。 (2) 编写一段程序,适用系统调用fork( )创建两个新的子进程,此程序运行使系统中有三个活动进程存在。控制让一个进程在屏幕上显示一个字符:父进程显示“a”,子进程分别显示字符“b”和字符“c”。试观察屏幕上的显示结果,并对输出结果进行分析。在实验报告中写出说明和分析。 (3) 编写一段程序实现父进程创建一个子进程,通过系统调用使子进程和父进程执行不同的任务。(提示:利用system(), exec系列函数) 试思考,怎样实现进程间的同步? (4) 编写一段C程序完成:父进程创建一个子进程,父进程对子进程设置一个报警信号,然后父进程等待子进程的结束,如果此时报警信号先到,就终止子进程。 3、实验要求 (1) 写出源程序,并编译运行 (2) 详细记录程序调试及运行结果 4、实验思路及过程 (1)

makefile文件: main.c文件:

1.c文件: 2.c文件: -o写成-c,函数库导入不正确:

(2)

出现acb的结果:p1=fork()会创建一个新的进程,父进程遇到p2=fork()创建又一个新的进程,此时,父进程运行完毕输出a,p2=fork()创建的子进程运行完毕输出c,最后p1=fork()创建的子进程运行完毕输出b; 出现abc的结果:p1=fork()会创建一个新的进程,父进程遇到p2=fork()创建又一个新的进程,此时,父进程运行完毕输出a,p1=fork()创建的子进程运行完毕输出b,最后p2=fork()创建的子进程运行完毕输出c;

浙江大学Linux程序设计实验报告

Linux程序设计实验报告1 ——操作系统基本命令使用 一、实验目的 1.通过对Emacs、vi、vim、gedit文本编辑器的使用,掌握在Linux环境下文本文件的编辑方法; 2.通过对常用命令mkdir、cp、cd、ls、mv、chmod、rm等文件命令的操作,掌握Linux操作系统中文件命令的用法。 二、实验任务与要求 1.emacs的使用,要求能新建、编辑、保存一个文本文件 2.vi或vim的使用,要求能新建、编辑、保存一个文本文件 3.gedit的使用,要求能新建、编辑、保存一个文本文件 4.掌握mkdir、cd命令的操作,要求能建立目录、进入与退出目录 5.掌握cp、ls、mv、chmod、rm命令的操作,要求能拷贝文件、新建文件、查看文件、文件重命名、删除文件等操作。 三、实验工具与准备 计算机PC机,Linux Redhat Fedora Core6操作系统 四、实验步骤与操作指导 任务1.学习emacs的使用,要求能新建、编辑、保存一个文本文件 (1)启动emacs (2)输入以下C程序 (3)保存文件为kk.c (4)用emacs打开文件kk.c (5)修改程序 (6)另存为文件aa.txt并退出。 任务2.vi或vim的使用,要求能新建、编辑、保存一个文本文件 (1)点击”应用程序”→ “附件”→“终端”,打开终端,在终端输入命令: [root@localhost root]#vi kk.c 按i键,进入插入状态。 (2)输入以下C程序 #include int main( ) {

printf(“Hello world!\n”); return 0; } 此时可以用Backspace、→、←、↑、↓键编辑文本。 (3)保存文件为kk.c 按Esc键,进入最后行状态,在最后行状态输入:wq保存文件,退出vi。 (4)用vi打开文件kk.c,输入命令: [root@localhost root]#vi kk.c (5)修改程序为: #include int main( ) { printf(" Hello world!\n"); printf("*****************\n"); return 0; } (6)按Esc键,进入最后行状态,在最后行状态输入:wq aa.txt保存文件,如图1所示,另存为文件aa.txt并退出vi。。 图1 程序编辑环境 任务3.gedit的使用,要求能新建、编辑、保存一个文本文件 (1)启动gedit,点击”应用程序”→ “附件”→“文本编辑器”,打开文本编辑器,如图所示。

《Linux编程环境》样题及参考答案

《Linux编程环境》期末考试样题 一.(共20分,每小题2分)给出完成下列各项功能所需要命令。陈述利用了该命令的哪个功能或选项。 1.如何得知命令netstat众多选项中哪个选项可以打印出IP路由表? 答:使用man命令,man命令可以在线查阅命令的使用手册,使用命令man netstat查出netstat命令的使用手册,看看哪个选项和什么命令格式用来打印出ip的路由表。 2.删除文件名为-f的文件。 答:使用rm命令,由于命令会默认以减号开始的命令行参数为命令处理的选项而不是处理对象,所以需要使用特殊的选项--以显式的方式说明选项的结束。命令为rm -- -i 3.在你完成上机作业过程中,使用什么命令将源程序文件mylist.c编译、 链接生成可执行文件?可执行文件是什么名字?如何运行? 答:使用gcc命令或者make,实现编译和链接 gcc mylist.c –o mylist 或者:make mylist 生成的可执行文件名按照惯例为mylist,一般情况下当前环境变量 PATH不包括当前目录,所以,运行这个可执行程序应当加上当前路径,命令为:./mylist 4.去掉文件list.txt中的所有空行(所谓空行指:行内不含有任何除空格之 外的字符),存为新文件list-new.txt。 答:使用grep命令可以用正则表达式对文本文件过滤,-v选项用于筛选掉能匹配指定正则表达式的行,描述一个空行的正则表达式为^ *$,即:从行首开始(^),有零个到多个空格( *),然后是行尾($),命令为: grep –v ’^ *$’ list.txt > list-new.txt 5.检索目录src以及其子孙目录中的所有文件名后缀为.c和.h文件,查找 哪些文件中含有字符串TPDU,并列出在这文件中的行号。 答:使用find命令和grep命令。find命令可以在指定的目录树中查找满足某个条件的文件或目录,并对查找到的满足条件的对象执行一个动作。指定查找条件为“文件名后缀为.c和.h”,动作为“查找哪些文件中含有字符串TPDU,并列出在这文件中的行号”,分别是find的 -name和-exec选项。完整的命令为: find src –name ”*.[ch]”–exec grep –n TPDU {} /dev/null \;

Linux程序设计考试例题

例题1程序A生成1个文件,其大小为1000字节,其内容为小写字母abcd...z的循环。试编写该程序。 文件名t 1.c #include #include int main(){char x; int i; int fd=open("aa",O_CREAT|O_TRUNC|O_WRONLY,0666); if(fd<0){printf("open file error!\r\n");exit (0);}; for(i=0;i<1000;i++){x='a'+(i%26); write(fd,&x,1);}close(fd);}例题2读出一个文件a.txt的倒数第2个字节和倒数第1个字节,显示在屏幕上。并且显示出当前时间。 文件名t 2.c #include #include #include int main(){char x[2]; int fd=open("a.txt",O_RDONLY); if(fd<0){printf("open file error!\r\n");exit

lseek(fd,-3,SEEK_END); read(fd,x,2); printf("倒数第二和第一字节为%c%c\r\n",x[0],x[1]); close(fd); time_t t; time(&t); printf("当前时间: %s",asctime(localtime(&t)));}例题3产生一个进程树父进程有3个子进程,这三个子进程分别有2个子进程。每个进程退出前打印自己的进程id号 文件名t 3.c #include #include int main(){int ret,i; for(i=0;i<3;i++){ret=fork(); if(ret==0)break;}if(ret==0) for(i=0;i<2;i++){ret=fork(); if(ret==0)break;}sleep (10); printf("thread %d is exiting now \r\n",getpid());}测试方法: 在另一窗口

北邮《Linux编程环境》期末考试样题及参考答案

《Linux编程环境》期末考试样题及参考答案 一. 给出完成下列各项功能所需要的UNIX系统命令。要求:给出实现这一功能的完整命令;不能给出完整命令可以仅给出所需要的命令名称。必须陈述利用了这个命令的哪个功能或选项。每题2分,共24分。 1.删除文件为-i的文件。 答:使用rm命令,由于命令会默认以减号开始的命令行参数为命令处理的选项而不是处理对象,所以需要使用特殊的选项--以 显式的方式说明选项的结束。命令为rm -- -i 2.命令netstat有很多选项,如何得知使用哪个选项可以打印出ip 的路由表? 答:使用man命令,man命令可以在线查阅命令的使用手册,使用命令man netstat查出netstat命令的使用手册,看看哪个选 项和什么命令格式用来打印出ip的路由表。 3.删除当前目录下的子目录tmp及该目录下属的所有文件和子孙目 录。 答:使用rm命令,rm命令有个选项可以递归地删除一个子目录,命令为 rm –r tmp 4.在你完成上机作业过程中,使用什么命令将源程序文件myrm.c 编译、链接生成可执行文件?可执行文件是什么名字?如何运行? 答:使用gcc命令或者make,实现编译和链接 gcc myrm.c –o myrm 或者:make myram 生成的可执行文件名按照惯例为myrm,一般情况下当前环境变量PATH不包括当前目录,所以,运行这个可执行程序应当加上 当前路径,命令为: ./myrm命令有个选项可以递归地删除一个子目录,命令为 ./myrm –r tmp 5.检索目录src以及其子孙目录中的所有文件名后缀为.c和.h文件, 查找哪些文件中含有字符串TPDU,并列出在这文件中的行号。 答:使用find命令和grep命令。find命令可以在指定的目录树 中查找满足某个条件的文件或目录,并对查找到的满足条件的对

Linux软件开发环境搭建

Linux开发软件环境搭建 1.打开VMWare虚拟机,加入Ubuntu系统,密码是12456 2.在ubuntu中输入ifconfig,查看IP。使用putty登录 以下步骤可以在ubuntu10.1以上系统执行: 3.VMWare安装vmware tools工具,在ubuntu桌面上可以看到该工具,双击打开 (切换到超级权限sudo su命令) 4.拷贝安装包到桌面并进行解压 5. 6.在解压文件下执行./vmware-install.pl 7.重启设备。(注意只有在ubuntu10.1版本以上才能用vmware tool) 3.使用flashfxp上传linux源码到服务器。 4.进入工作目录cd / cd work 5.解压源码tar xjf linux-2.6,进入到文件件。(-xvf可以看到进度) 6.执行打补丁patch -p1 < ../linux-3.4.2_100ask.patch 4.3寸屏的开发板省略7/8步: 7.在linux2.6/arch/arm/deconfig中可以看到配置文件 8.回到根目录linux2.6中,执行make s3c2410_defconfig,进行编译配置。(会在根目录生成.config文件) 4.3寸屏执行以下步: 9.把4.3寸LCD的源码覆盖原来的3.5寸源码 mv ../4.3寸LCD_mach-smdk2440.c arch/arm/mach-s3c2440/mach-smdk2440.c 10.在linux-2.6的根目录中已经放置了配置文件。cp config_ok .config 11.执行make uImage 12.把生成的文件拷贝到电脑,进行下载linux-2.6.22.6/arch/arm/boot/uImage 注意:执行了第九步之前,如果执行过make uimage,需要先执行make clean,然后在进行make uimage.

Linux程序设计实验报告总结计划.docx

实验报告 课程名称:Linux程序设计 学院:信息科学与工程学院 专业:13计算机班级:2013-1姓名:学号: 2016年6月28日 山东科技大学教务处制 实验报告

组别姓名同组实验者 实验项目名称实验一熟悉linux命令实验日期教师评语第 12 周周四9,10 节 实验成绩指导教师廉文娟 1.登录和退出 Linux 系统 用户登录系统时为了使系统能够识别自己必须输入用户名和密码经系统验证无后 方能进入系统。用户登录分两步进行,第一步输入用户的登录名,系统根据该登录 名来识别用户,第二步输入用户的口令,该口令是用户自己选择的一个字符串对其 他用户是保密的,是在登录时系统用来辨别真假用户的关键字。 必须输入用户的账号,分为 1)root ——系统管理员账号,该账号可以进行任意操作。2)普通用户——拥有一定的权限 2.其他命令 三、实验内容 常用操作命令。 1、在 Linux 系统中打开终端,利用快捷键ctrl+alt+T,打开,结果如下: 2、退出: 不论是 root 用户还是普通用户,需要退出系统,在 shell 提示符下,键入 exit 命令 即可。 3、关机与重启: Linux 中提供了命令 shutdown,可以安全地关机或重启系统,该命令只能是超级用 户可以使用,命令格式: shutdown [ 选项 ][ 时间 ][ 警告信息 ] 其中警告信息是向其他用户发布的信息,时间指定关机或是重启的时间,选项的意 义如下: -h关机,关机前关闭相关进程,执行fsck 命令(文件系统的一致性检查) -r系统重新启动 -f快速关机,系统关机前不执行 fsck命令 -n快速关机,系统关机前不执行 init命令 -k不关机,只是将警告信息向其他用户发布 -c终止执行正在运行的 shutdown 命令 举例: 1.系统立即关机shutdown–h now 2.两分钟后重启系统,发布信息 System will be down in 2 minutes!给其他终端用户。 Shutdown – r +2“System will be down in 2 minutes!” 除了可以使用 shutdown 命令来关机和重启系统外, Linux 还有专门用于关机和重启系统的命令 poweroff 和 reboot ,reboot 用于重启系统(相当于 shutdown –r now),

《Linux编程环境》期末考试样题及参考答案

《UNIX编程环境》期末考试样题及参考答案 一. 给出完成下列各项功能所需要的UNIX系统命令。要求:给出实现这一功能的完整命令;不能给出完整命令可以仅给出所需要的命令名称。必须陈述利用了这个命令的哪个功能或选项。每题2分,共24分。 1.删除文件为-i的文件。 答:使用rm命令,由于命令会默认以减号开始的命令行参数为命令处理的选项而不是处理对象,所以需要使用特殊的选项--以 显式的方式说明选项的结束。命令为rm -- -i 2.命令netstat有很多选项,如何得知使用哪个选项可以打印出ip 的路由表? 答:使用man命令,man命令可以在线查阅命令的使用手册,使用命令man netstat查出netstat命令的使用手册,看看哪个选 项和什么命令格式用来打印出ip的路由表。 3.删除当前目录下的子目录tmp及该目录下属的所有文件和子孙目 录。 答:使用rm命令,rm命令有个选项可以递归地删除一个子目录,命令为 rm –r tmp 4.在你完成上机作业过程中,使用什么命令将源程序文件myrm.c 编译、链接生成可执行文件?可执行文件是什么名字?如何运行? 答:使用gcc命令或者make,实现编译和链接 gcc myrm.c –o myrm 或者:make myram 生成的可执行文件名按照惯例为myrm,一般情况下当前环境变量PATH不包括当前目录,所以,运行这个可执行程序应当加上 当前路径,命令为: ./myrm命令有个选项可以递归地删除一个子目录,命令为 ./myrm –r tmp 5.检索目录src以及其子孙目录中的所有文件名后缀为.c和.h文件, 查找哪些文件中含有字符串TPDU,并列出在这文件中的行号。 答:使用find命令和grep命令。find命令可以在指定的目录树 中查找满足某个条件的文件或目录,并对查找到的满足条件的对

实验一 LINUX编程环境经典.doc

第一章 Linux 基础(2学时) 实验一 LINUX编程环境 实验目的 1.熟悉Linux下C语言程序设计的基本步骤 2.掌握gcc编译器的各种参数的使用方法 3.掌握gcc编译器创建函数库的方法 4.掌握gdb调试程序的方法 5.掌握多文件编译中的makefile的用法 实验内容 1.编辑以下程序,按要求编译运行。 #include int main(void) { double counter; double result; double temp; for (counter = 0; counter < 4000.0 * 4000.0 * 4000.0 / 20.0 + 2030;counter += (5 - 3 +2 + 1 ) / 4) { temp=counter/1239; result=counter; } printf("运算结果是:%lf\n", result); } 实验步骤和要求: (1)分别利用gcc的预处理,编译,汇编,链接命令生成example.i,example.s,example.o文件,分别用ls命令显示,要求有相应的命令和截图;

(2)分别使用不同的优化选项O0~O3,进行编译生成可执行程序m0~m3,然后使用time命令统计程序的运行,如time. /m0,比较运行时间。要求有运行截图和必要的分析。

分析:首先我们要知道-O0表示没有优化,-O1为缺省值,-O3优化级别最高,通过运行结果我们可以看出-O0相比其他能够提高可执行文件的执行效率,但是,编译、连接的速度就相应地要慢一些。 - O1~ O3:比- O0 的优化级别更高,能更好的优化编译、连接。但整个编译、连接过程会更长。 2.编写如下程序hello.h,hello.c,main.c,将源程序 hello.h: void hello(const char *name); hello.c #include void hello(const char *name) { printf(“hello %s”,name); } main.c #include“hello.h” int main() { hello(“everyone”); return 0; } 实验步骤和要求(要求每一步都要有运行截图): (1)分别编辑以上三个源程序;

Linux程序设计报告

昆明理工大学信息工程与自动化学院学生上机报告 (2012 —2013 学年第二学期) 年级、专业、班计科 102 学号姓名成绩 实验项目名称Linux程序设计上机报告指导教师欧阳鑫 教师评语 该同学是否了解相关理论: A.了解□ B.基本了解□ C.不了解□该同学的动手能力: A.强□ B.中等□ C.差□ 该同学的上机是否达到要求:A.达到□ B.基本达到□ C.未达到□上机实验报告是否规范: A.规范□ B.基本规范□ C.不规范□上机实验过程是否详细记录: A.详细□ B.一般□ C.没有□ 注:5个A 为优4个A为良3个A 为及格其余为不及格。 教师签名: 年月日 目录 上机实验一:虚拟机及Linux安装……………………………………………….2页

上机实验二:Linux下Shell程序开发……………….…………………………14页上机实验三:Linux下多进程多线程程序开发…………………………………20页 上机一:虚拟机及Linux安装 一、上机目的 1、安装虚拟机 2、在虚拟机上安装Red Hat Enterprise Linux 5 二、相关技术阐述 根据四的步骤一步一步安装实现,其中在安装虚拟机过程中用到下面代码: (1)su (2)chmod +w /etc/inittab (3)vi /etc/inittab (4)reboot 三、所用软件系统 VMware Workstation 、Red Hat Enterprise Linux 5 四、源代码或上机步骤 1、虚拟机(VMware Workstation)安装过程

(1) 单击VMware-workstation-full-9.0.2-1031769_https://www.doczj.com/doc/4a2172249.html,.exe可执 行文件,进入安装: (2)进入一下界面: (3)选择安装目录 (4)点击下一步 (5)点击下一步

Linux程序设计知识点整理

Prerequisite 一、Linux 命令 1、文件操作 列出目录内容: ls, dir, vdir 创建特殊文件: mkdir, mknod, mkfifo 文件操作: cp, mv, rm 修改文件属性: chmod, chown, chgrp, touch 查找文件: locate, find 字符串匹配: grep(egrep) 其它: pwd, cd, ar, file, grep, tar, more, less, head, tail, cat 2、进程操作 ps, kill, jobs, fg, bg, nice 3、其它 who, whoami, passwd, su, uname, … man 二、Linux工具 编辑工具:vi, emacs 编译、链接:gcc(GNU C Compiler -> GNU Compiler Collection) 调试:gdb make命令 版本控制工具:CVS等 三、编程语言 1、High-level Language:C/C++, Java, Fortran… 2、ELF binary format:Excutable and Linkable Format(工具接口标准委员会(TIS)选择了正在发展中的ELF体系上不同操作系统之间可移植的二进制文件格式) 四、GCC使用 -E: 只对源程序进行预处理(调用cpp预处理器) -S: 只对源程序进行预处理、编译 -c: 执行预处理、编译、汇编而不链接 -o output_file: 指定输出文件名 -g: 产生调试工具必需的符号信息 -O/On: 在程序编译、链接过程中进行优化处理

Linux程序设计

Linux程序设计课程简介和教学大纲格式 课程代码:21188100 课程名称:Linux程序设计 学分: 2.0 周学时总48学时(短学期) 面向对象:计算机科学与技术、软件工程数字媒体专业,三年级学生 预修课程要求:程序设计类课程 一、课程介绍(100-150字) (一)中文简介 本课程主要介绍Linux操作系统的安装、使用和管理。包括Linux的文件和文件系统结构,进程概念和管理,文件安全和共享,I/O重定向和管道,以及各种实用软件的使用,shell 程序设计,Linux系统程序设计。 (二)英文简介 This course introduces the Linux operating system installation、use and administration. Include Files and File System Structure,Process concept and administration ,File Security and File Sharing, I/O Redirection and Piping ,And the use of a variety of utility software , shell Programming, Introductory Linux system Programming. 二、教学目标 (一) 学习目标 本课程的目的是使学生熟悉Linux系统环境,通过本课程的学习能够使用、管理和维护Linux系统,掌握shell程序设计和Linux系统程序设计基本方法。本课程为学习“操作系统原理”和“操作系统分析及实验”课打下基础。 (二)可测量结果 通过本课程的学习能达以下目标: 1.了解Linux操作系统,学习并领会自由软件(Free Software)的思想和文化; 2.掌握Linux操作系统的安装; 3.掌握linux的文件、进程概念,管道及I/O重定向; 4.掌握linux系统常用命令、实用程序的使用和管理,熟悉Linux下各种工具软件的使 用; 5.了解Linux环境下开发环境和桌面系统; 6.了解shell编程,掌握基本的shell程序设计; 7.Linux环境下的API编程以及Linux的系统调用。 三、课程要求 (一)授课方式与要求

linux程序设计复习题

一、填空题 1、在Linux系统中,以文件方式访问设备。 2、Linux内核引导时,从文件/etc/fstab 中读取要加载的文件系统。 3、Linux文件系统中每个文件用i节点来标识。 4、全部磁盘块由四个部分组成,分别为引导块、专用块、i节点表块和数据存储块。 5、链接分为:硬链接和符号链接。 6、超级块包含了i节点表和空闲块表等重要的文件系统信息。 7、某文件的权限为:drw-r--r--,用数值形式表示该权限,则该八进制数为:644 ,该文件属性是目录。 8、前台起动的进程使用Ctrl+C 终止。 9、静态路由设定后,若网络拓扑结构发生变化,需由系统管理员修改路由的设置。 10、网络管理的重要任务是:控制和监控。 11、安装Linux系统对硬盘分区时,必须有两种分区类型:文件系统分区和交换分区。 12、编写的Shell程序运行前必须赋予该脚本文件执行权限。 13、系统管理的任务之一是能够在分布式环境中实现对程序和数据的安全保护、备份、恢复和更新。 14、系统交换分区是作为系统虚拟存储器的一块区域。 15、内核分为进程管理系统、内存管理系统、I/O管理系统和文件管理系统等四个子系统。 16、内核配置是系统管理员在改变系统配置硬件时要进行的重要操作。 17、在安装Linux系统中,使用netconfig程序对网络进行配置,该安装程序会一步步提示用户输入主机名、域名、域名服务器、IP地址、网关地址和子网掩码等必要信息。 18、唯一标识每一个用户的是用户ID 和用户名。 19、RIP 协议是最为普遍的一种内部协议,一般称为动态路由选择协议。 20、在Linux系统中所有内容都被表示为文件,组织文件的各种方法称为文件系统。 21、DHCP可以实现动态IP 地址分配。 22、系统网络管理员的管理对象是服务器、用户和服务器的进程以及系统的各种资源。 23、网络管理通常由监测、传输和管理三部分组成,其中管理部分是整个网络管理的中心。 24、当想删除本系统用不上的设备驱动程序时必须编译内核,当内核不支持系统上的设备驱动程序时,必须对内核升级。 25、Ping命令可以测试网络中本机系统是否能到达一台远程主机,所以常常用于测试网络的连通性。 26、vi编辑器具有三种工作模式:命令模式、底行模式和输入模式。 27、可以用ls –al命令来观察文件的权限,每个文件的权限都用10位表示,并分为四段,其中第一段占 1 位,表示文件类型,第二段占3位,表示文件所有者对该文件的权限。 28、进程与程序的区别在于其动态性,动态的产生和终止,从产生到终止进程可以具有的基本状态为:运行态、就绪态和等待态(阻塞态)。 29、DNS实际上是分布在internet上的主机信息的数据库,其作用是实现IP地址和主

相关主题
文本预览
相关文档 最新文档