当前位置: 首页 > news >正文

青海网站建设公司大片ppt免费下载安装

青海网站建设公司,大片ppt免费下载安装,优秀高端网站建设公司,做网站能力介绍proc虚拟文件系统的工作原理 linux 内核是一个非常庞大、非常复杂的一个单独的程序,对于这样一个程序来说调试是非常复杂的。像kernel这样庞大的项目,给里面添加或者修改一个功能是非常麻烦的,因为添加一个功能可能会影响其他已经有的功能。…

proc虚拟文件系统的工作原理

  • linux 内核是一个非常庞大、非常复杂的一个单独的程序,对于这样一个程序来说调试是非常复杂的。
  • 像kernel这样庞大的项目,给里面添加或者修改一个功能是非常麻烦的,因为添加一个功能可能会影响其他已经有的功能。
  • 早期内核版本中尽管调试很麻烦,但是大佬们还可以凭借自己能力来驾驭,到了2.4左右的版本,这个难度已经非常大了。为了降低内核的调试和学习的难度,这个内核开发者们在内核添加了一些属性,专门用于调试内核,proc文件系统就是一个尝试。
  • proc文件系统的思路:在内核中构建一个虚拟文件系统/proc,内核运行时将内核一些关键数据结构以文件的方式呈现在/proc目录中的一些特定文件,这样相当于不可见的内核的数据结构以可视化方式呈现给内核开发者。
  • proc文件系统给开发者一种调试内核的方法:我们通过实时观察/proc/xxxx文件,来观看内核中数据结构的值,在我们添加一个新功能的前后来对比,就可以知道这个新功能产生的影响对不对。
  • proc目录下的文件大小都是0,因为这些文件本身并不存在硬盘之中,他也不是一个真实的文件,他只是一个接口,当我们去读取这个文件的时候,其实内核并不是去硬盘找这个文件,而是映射为内核内部一个数据结构被读取并格式化为字符串返回给我们。所以尽管我们看到的还是一个文件内容的字符串,和普通文件一样,但是实际上内容实时从内核数据结构中来的。

常见proc文件介绍

  • /proc/cmdline
  • /proc/cpuinfo
    例如使用 cat 查看 /pro/cpuinfo
    在这里插入图片描述

proc文件系统的使用

  • cat命令手动查看
    cat /proc/version 查看系统版本
    在这里插入图片描述
  • 程序访问文件IO 来查看结果
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include<stdlib.h>
#include<fcntl.h>
#include<stdio.h>
#include<string.h>
int main(int argc,char **argv){char buf[512];memset(buf,0,sizeof(buf));if(argc!=2){printf("usage: %s version|devices\n",argv[0]);return -1;}// strcmp 如果相等 返回值为 0if(!strcmp(argv[1],"-v")){// 读取proc/vesion;int fd  = open("/proc/version",O_RDONLY);if(fd < 0){perror("open /proc/version");}read(fd,buf,sizeof(buf));printf("结果是 %s",buf);}else if(!strcmp(argv[1],"-d")){//读取 proc/devices;int fd  = open("/proc/devices",O_RDONLY);if(fd < 0){perror("open /proc/devices");}read(fd,buf,sizeof(buf));printf("结果是 %s",buf);}return 0;
}

效果如图:
在这里插入图片描述

  • sys文件系统
    1.sys文件系统本质上和proc文件系统是一样的,都是虚拟文件系统,都在根目录下有一个目录 (一个是/proc 一个是 /sys),因此都不是硬盘中的文件,都是内核中的数据结构的可视化接口。
    2.不同的是/proc中的文件只能读,但是/sys中的文件可以读写,读/sys中的文件就是获取内核中的数据结构的值,而写入/sys的文件就是设置内核中的数据结构的元素的值。
    3.一开始现有/proc文件系统,人们希望这种技术来调试内核,实际做出来后很有用,所有很多内核开发者都去内核调用代码向/proc目录中写文件,而且刚开始的内核管理者,而且刚开始的时候内核管理者对proc目录的使用也没有什么经验也没有什么统一规划,后来导致的结果就是proc里边的内容又多又杂乱。后来觉得proc中的内容太多太乱缺乏统一规划,于是又添加了sys目录。
http://www.zhongyajixie.com/news/17611.html

相关文章:

  • 网站建设 风险杭州百度推广电话
  • wrb网站架构免费推广方式都有哪些
  • 插头 东莞网站建设百度点击软件找名风
  • wordpress ajax查询文章上海seo公司
  • 外贸独立站seo企业培训权威机构
  • 国产亚av手机在线观看seo快速推广窍门大公开
  • 泊头网站制作西安seo培训机构
  • 宝鸡百度seo优化网站怎么真实点击
  • .net网站开发怎么发布360网站关键词排名优化
  • 精美网站建设公司网站域名查询地址
  • 柳州做网站人员怎样在百度上发布免费广告
  • 新疆建设质监站网站常德网站设计
  • 网站外链软件资深seo顾问
  • 怎么用网站的二级目录做排名推广代理平台登录
  • 青海网站建设西宁网络科技公司小广告多的网站
  • 云南建设厅网站 安全员网站服务器一年的费用
  • 政府部门网站建设需求搜索引擎优化缩写
  • 网站开发设计思路文档百度一下首页登录入口
  • 以营销网建为北京seo排名外包
  • 找网站做真正免费的网站建站平台运营
  • 做app好还是响应式网站资源优化网站排名
  • 企业网站开发心得体会好搜搜索引擎
  • 商务贸易网站建设网站在线制作
  • 企业网站建设需要多少钱广州网站设计专注乐云seo
  • 全屏幕网站模板深圳网站建设公司
  • 用web做简单的电商网站百度一下百度搜索入口
  • 超全wordpress梧州网站seo
  • 版面布局网站的域名和所采用的版面布局形式海南百度推广电话
  • 如何做后台网站增删改如何优化网页
  • 郑州做网站优化运营商最简短的培训心得