文档详情

操作系统实验11Linuxproc文件系统.doc

发布:2017-08-18约3.5千字共10页下载文档
文本预览下载声明
《操作系统》实验报告 实验序号: 实验十一 实验项目名称:Linux proc文件系统 学  号 1207022103 姓  名 陈华荣 专业、班 1班 实验地点 实1-311 指导教师 李桂森 实验时间 2014-12-17 一、实验目的 通过本实验的学习,使学生掌握Linux 系统Web服务器的配置方法,搭建简单的动态数据网站。 二、实验内容 实验内容:实践Linux系统Web服务器的配置操作,并搭建简单的动态网站。 三、实验内容与步骤 1,查看/proc 目录,了解此目录下各个目录以及文件的含义;解释以下文件的含义: proc 文件系统可以被用于收集有用的关于系统和运行中的内核的信息。下面是一些重要的文件: * /proc/cpuinfo - CPU 的信息 (型号, 家族, 缓存大小等)   * /proc/meminfo - 物理内存、交换空间等的信息 * /proc/mounts - 已加载的文件系统的列表 * /proc/devices - 可用设备的列表 * /proc/filesystems - 被支持的文件系统 * /proc/modules - 已加载的模块 * /proc/version - 内核版本   * /proc/cmdline - 系统启动时输入的内核命令行参数 * /proc/XXX – XXX是指以数字编号的目录,有不少这样的目录,每一个目录表示一个进程(即线程组) * /proc/sys – 可以修改的系统信息 * /proc/swaps - 要获知swap空间的使用情况 * /proc/uptime - 获取系统的正常运行时间 * /proc/fs/nfsd/exports - 列出由NFS共享的文件系统 * /proc/kmsg – 该文件被作为内核日志信息源,它可以被作为一个系统信息调用的接口使用。 * /proc/kcore – 该文件提供了以内核文件格式形式访问系统物理内存,并且可以被gdb用于检查任意内核数据结构的当前状态。如果装了源码,那么可以通过查看/usr/src/linux/Documentation/filesystems/proc.txt文件来获取更多的信息 。 /proc/kcore文件是系统物理内存的映像 2,从proc文件系统获取信息 通过读取proc文件系统,获取系统各种信息,包括主机名、系统启动时间、版本号、所有进程信息等 主机名 系统启动时间:/proc/uptime 版本号:/proc/version #includestdio.h #includeunistd.h #includetime.h #includesys/types.h /*声明结构体*/ struct cpustatus { long total; float user; float nice; float system; float idle; }; struct netstatus { long total; float bytes; float packets; float errs; float drop; }; struct memstatus { unsigned int MemTotal; float MemFree; }; /*计算CPU利用率*/ void get_cpu_status(struct cpustatus *cpu_stat) { unsigned int total; float user; float nice; float system; float idle; char cpu[21]; char text[201]; FILE *fp; fp=fopen(/proc/stat,r); while(fgets(text,200,fp)) if(strstr(text,cpu)) sscanf(text,%s %f %f %f %f,cpu,user,nice,system,idle); fclose(fp); total=(user+nice+system+idle); user=((user+system)/total)*100; cpu_stat-total=total; cpu_stat-user=user; cpu_stat-nice=nice; cpu_stat-system=system; cpu_stat-idle=idle; return; } /*计算net利用率*/ void get_net_status(struct netstatus *net_dev) { unsigned i
显示全部
相似文档