摘要:
实验3 目录树的遍历实验报告一.实验目的:掌握与文件和目录树有关的系统调用和库函数。二.实验要求:1、编写程序myfind命令语法: myfind <pathname> [-comp <filename> | -name <str>…]命令语义:(1)myfind <pathname> 的功能:除了具有与程序4-7相同的功能外,还要输出在<pathname>目录子树之下,文件长度不大于4096字节的常规文件,在所有允许访问的普通文件中所占的百分比。程序不允许打印出任何路径名。(2)myfind <pathname> -co 阅读全文
摘要:
同步与异步write的效率比较实验二同步与异步write的效率比较一.实验内容:UNIX的文件I/O系统调用,及UNIX系统有关时间函数的使用二.实验原理: 1、程序的参数和输入实验要求程序必须指定输出的文件名,而该文件是否按同步方式打开,则是可以选择的。因此程序至少带一个、至多两个输入参数。程序默认从标准输入STDIN_FILENO读取输入文件,可以利用shell的输入定向功能选择具体的输入文件。2、系统调用times()的说明#include <sys/times.h>clock_t times(struct tms *buf);struct tms { cl... 阅读全文
摘要:
实现带参数的简单shell调用系统函数:int execve(const char *path, const char *argv[],const char *envp[]);函数说明:path:要执行的程序路径名,比如“/bin/ls”,“cd”,“/usr/bin/gcc”等等。argv:参数表,比如ls命令中可带的命令行参数-l,-a等。注意,argv的第一个元素必须是要执行的程序(命令)的路径名。envp:环境变量表,供要执行的命令使用。实参数用NULL或系统环境变量environ均可。注意,因为environ由系统提供,属于外部变量,所以说明时必须用“e... 阅读全文