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

青岛正规网站建设哪家便宜国外引擎搜索

青岛正规网站建设哪家便宜,国外引擎搜索,党风廉政建设网评网站,wordpress pagination一款操作系统要管理各种各样不同的硬件,因为硬件的不同所以它们使用的文件系统也不同。但是按道理来说,文件系统的不同对于用户来说可不是一件好事,操作不同的硬件就要使用不同的方法。 但是Linux有一切皆文件。 简单来说,Linux…

一款操作系统要管理各种各样不同的硬件,因为硬件的不同所以它们使用的文件系统也不同。但是按道理来说,文件系统的不同对于用户来说可不是一件好事,操作不同的硬件就要使用不同的方法。

但是Linux有一切皆文件。

简单来说,Linux把所有不同的文件系统都抽象成同一个"对象",用户使用这一个"对象"就可以对底层不同的文件系统进行操作。

所以Linux中的一切皆文件,从面向对象的角度来说就是多态。但是Linux是用C写的,所以说它是多态是不准确的(因为C不是一门面向对象的语言),但是作为Linux的使用者确实感受到了多态这一特性。

多态是什么?多态就是同一种操作方法放在不同的对象上,这些对象有不同的响应行为。即,使用统一的接口来处理不同的对象。

所以理解一切皆文件的本质就是搞清楚Linux对文件系统的管理是怎么做到"多态"的?

Linux管理的硬件可能有键盘、网卡、显示器、磁盘等等,这些硬件呢会有配套的驱动程序,这些驱动程序当中会有让硬件执行某个操作的方法。所以使用者想使用这些硬件的时候,实际上是在"向Linux求助",让Linux去调用这些硬件的驱动程序当中用户指定的操作方法。

因为硬件五花八门,所以驱动程序各不相同。所以Linux想出了一个办法:

你们这些硬件不是有驱动程序么?驱动程序不是有控制硬件行为的方法么?那我就把你们这些操作方法全都给汇聚起来,然后再添加一些东西,封装成一个struct_file结构体

至此Linux内核当中,就存在了一个汇聚所有文件系统的操作信息("汇聚"一词是不准确的,应该是抽象)。画一张图想必就明白了:

 

 这幅图描述了Linux管理文件系统的大概过程。

Linux在内核当中创建struct_file结构体,该结构体里面有众多字段,例如文件的类型、状态以及对应文件系统的操作方法的函数指针(如果没有则为空指针)等等字段。

那么用户在使用read()、write()等系统调用时,Linux会根据用户传入的信息去确认使用哪个struct_file,从而操作正确的硬件。

因为一切硬件、文件系统,在Linux当中都是struct_file结构体对象, 所以在Linux下一切皆文件。

因为Linux做出了抽象,那么这个抽象层有一个专属的名词,叫做VFS(虚拟文件系统),VFS使得用户可以直接使用read()、write()等系统调用而无需考虑具体的文件系统和实际的物理介质。

本篇文章只是对这些知识一个简单的理解,实际上Linux做的工作比这复杂的多得多。 

http://www.khdw.cn/news/19731.html

相关文章:

  • 在柬埔寨做网络销售推网站贴吧引流推广
  • 网站开发的性能测试如何写网络营销方案策划书
  • 广水市建设局网站东莞做网站公司电话
  • 企业官方网站怎么建设北京seo服务商
  • 新网站百度收录搜索引擎谷歌入口
  • 郑州网站制作招聘舆情信息在哪里找
  • wordpress 360急速模式打不开郑州seo技术顾问
  • 电子商务网站建设的常用开发方法武汉今日头条最新消息
  • 泉州网站建设兼职百度登录
  • 论坛的网站开发项目网站怎么制作
  • 1核1g服务器做网站最新域名解析
  • 宁海哪家做网站比较可靠网络广告策划流程有哪些?
  • 如何让百度快速收录网站怎么优化关键词排名
  • 家装公司网站建设方案免费b2b平台推广
  • 做零食的网站有哪些搜索引擎技术基础
  • 网站后台怎么上传网页模板网络服务器图片
  • 网络广告是什么意思徐州新站百度快照优化
  • 营销网络的建设是什么意思求职seo
  • 怎么备案网站空间厦门最好的seo公司
  • 手机网站meta在线磁力搜索神器
  • 做网站最便宜多少钱网络广告的类型有哪些
  • wordpress本地备份福建seo外包
  • 怎么知道网站是谁做的网络营销与推广
  • 大众点评怎么做团购网站企业网站管理系统怎么操作
  • 游戏网站开发有限公司万网注册域名
  • 网站制作平台能赚钱吗pc端百度
  • wordpress4.8 汉化移动网站推广如何优化
  • 模板网站有哪些在哪里下载惠州网络推广
  • 怎么做网站的思维导图百度网盘手机版
  • 计算机网络 网站开发与设计app优化方案