西南交通大学操作系统实验一——观察Linux的行为

实验目的      

通过本实验,了解Linux系统的组织和行为,观察各种存储系统状态信息的内核变量;熟悉这些结构与信息。    

实验内容      

使用gcc编译并运行程序test1.c 新建工程,

使用codeblocks编程实现对meminfo/ loadavg/ interrupts/ filesystem的观测。

完成实验报告,报告里面需要记录实验详细过程,并对test1和自建工程里面观察到的内核信息(cpuinfo /version /stat /uptime/ meminfo /loadavg /interrupts /filesystem进行解读。


此文章仅提供实验内容2的代码:


#include <stdio.h>#include <string.h>#include <time.h>#include <stdlib.h>
void meminfo();void loadavg();void interrupts();void filesystems();
int main(int argc, char *argv[]) {
    meminfo();
    loadavg();
    interrupts();
    filesystems();
    return 0;
}
void meminfo() {
    FILE *fp = NULL;
    char string[1024];
    fp = fopen("/proc/meminfo", "r");
    if (fp == NULL) {
        printf("open /proc/meminfo failed\n");
        return;
    }
    while (fgets(string, sizeof(string), fp)) {
        printf("%s", string);
    }
    fclose(fp);
}
void loadavg() {
    FILE *fp = NULL;
    char string[1024];
    fp = fopen("/proc/loadavg", "r");
    if (fp == NULL) {
        printf("open /proc/loadavg failed\n");
        return;
    }
    while (fgets(string, sizeof(string), fp)) {
        printf("%s", string);
    }
    fclose(fp);
}
void interrupts() {
    FILE *fp = NULL;
    char string[1024];
    fp = fopen("/proc/interrupts", "r");
    if (fp == NULL) {
        printf("open /proc/interrupts failed\n");
        return;
    }
    while (fgets(string, sizeof(string), fp)) {
        printf("%s", string);
    }
    fclose(fp);
}
void filesystems() {
    FILE *fp = NULL;
    char string[1024];
    fp = fopen("/proc/filesystems", "r");
    if (fp == NULL) {
        printf("open /proc/filesystems failed\n");
        return;
    }
    while (fgets(string, sizeof(string), fp)) {
        printf("%s", string);
    }
}

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jellyfish Knight

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值