实验目的
掌握
Linux
操作系统的使用方法;
了解
Linux
系统内核代码结构?/p>
掌握实例操作系统的实现方法?/p>
一?/p>
实验要求
1
?/p>
掌握
Linux
操作系统的使用方法,
包括键盘命令?/p>
系统调用?/p>
掌握?/p>
Linux
下的编程环境?/p>
?/p>
编一?/p>
C
程序,其内容为实现文件拷贝的功能?/p>
?/p>
编一?/p>
C
程序,其内容为分窗口同时显示三个并发进程的运行结
果。要求用?/p>
Linux
下的图形库?/p>
2
?/p>
掌握系统调用的实现过程,
通过编译内核方法?/p>
增加一个新的系统调用?
另编写一个应用程序,调用新增加的系统调用?/p>
实现的功能是:文件拷贝;
3
?/p>
掌握增加设备驱动程序的方法。通过模块方法,增加一个新的设备驱?
程序,其功能可以简单?/p>
实现字符设备的驱动;
4
?/p>
了解和掌?/p>
/proc
文件系统的特点和使用方法
?/p>
了解
/proc
文件的特点和使用方法
?/p>
监控系统状态,显示系统中若干部件使用情?/p>
?/p>
用图形界面实现系统监控状态?/p>
5
?/p>
设计并实现一个模拟的文件系统(选作?/p>
二?/p>
实验一
1
?/p>
编一?/p>
C
程序,其内容为实现文件拷贝的功能
要实现文件拷贝功能,主要用到的函数是
fopen
?/p>
fputc
?/p>
fgetc
?/p>
主要用到的头文件?/p>
#include <stdio.h>
#include <stdlib.h>
设计思路:由
scanf
函数获取
2
个文件名,根据其文件名和路径
分别打开?/p>
2
个文件,设置一个循环,从源文件复制
1
个字节到?/p>
的文件,直到源文件指针到文件尾,最后关?/p>
2
个文件?/p>
在可能出错的地方需要加上相应的报错代码,并输出错误信息?/p>
以方便调试?/p>
理清楚设计思路后,首先搭建
linux
下编程环境?/p>
安装
gcc
?/p>
sudo apt-get install build-essential
安装
codeblocks
?/p>
sudo apt-get install codeblocks
在集成开发环?/p>
Code::Blocks
IDE
下根据需求写出相应的源代?/p>
copy.c
,将程序编译并生?/p>
exe
可执行文件?/p>
然后手动创建一个测试文?/p>
test.txt
,运?/p>
copy.exe
文件,并输入