实验四。。

该文描述了如何使用vim编辑C语言代码,通过统计程序运行前后缺页次数来分析操作系统缺页现象。同时,文章展示了动态内存分配与释放的过程,以及如何执行编译和运行程序。此外,还提到了监控系统资源使用情况的命令free和vmstat。
摘要由CSDN通过智能技术生成

一.实验四-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"
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值