一.实验四-1
1.输入"vim Test41.c’
2."i"键进去编辑,复制代码
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/time.h>
#include <sys/resource.h>
int main() {
int page_faults_start, page_faults_end, page_faults_count;
struct rusage usage_start, usage_end;
struct timeval time_start, time_end;
// 统计缺页次数的时间范围(单位:秒)
int time_range = 5;
// 获取程序开始运行时的缺页次数和系统资源使用情况
getrusage(RUSAGE_SELF, &usage_start);
page_faults_start = usage_start.ru_majflt+usage_start.ru_minflt;
gettimeofday(&time_start, NULL);
// 等待一段时间,期间执行一些操作
sleep(time_range);
// 获取程序运行一段时间后的缺页次数和系统资源使用情况
getrusage(RUSAGE_SELF, &usage_end);
page_faults_end = usage_start.ru_majflt+usage_start.ru_minflt;
gettimeofday(&time_end, NULL);
// 计算缺页次数差值
page_faults_count = page_faults_end - page_faults_start;
printf("从当前时刻开始,%d秒内操作系统发生的缺页次数为:%d\n", time_range, page_faults_count);
return 0;
}
3.“Esc”键,输入“:wq”回车
4.输入"gcc -o Test41 Test41.c"回车
5.输入“./Test41”回车
二.实验四-2
1.输入"vim Test42.c"
2."i"键进入编辑。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main() {
//申请内存
char *str = (char *)malloc(sizeof(char)*10);
strcpy(str, "tttttttttt\n");
//使用内存
memset(str,'@',6);
printf("%s",str);
//释放内存
free(str);
}
3.“Esc"键,输入“:wq”
4.输入"gcc -o Test41 Test42.c"回车
5.输入”./Test42"回车
二.实验四-3
分别输入"free"和"vmstat"