位置: IT常识 - 正文

Linux内核与根文件系统的关系详解(linux内核与文件系统)

编辑:rootadmin
今天小编为大家带来的是Linux内核与根文件系统的关系详解!希望对大家会有帮助!有需要的朋友一起去看看吧... 17-03-28

推荐整理分享Linux内核与根文件系统的关系详解(linux内核与文件系统),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:内核与根文件系统,linux根文件,linux内核 根文件系统,内核与根文件系统,linux根文件系统详解,linux内核区别,linux内核区别,linux内核区别,内容如对您有帮助,希望把文章链接给更多的朋友!

Linux内核与根文件系统的关系 开篇题外话:对于Linux初学者来说,这是一个很纠结的问题,但这也是一个很关键的问题!

一语破天机: “尽管内核是 Linux 的核心,但文件却是用户与操作系统交互所采用的主要工具。这对 Linux 来说尤其如此,这是因为在 UNIX 传统中,它使用文件 I/O 机制管理硬件设备和数据文件。”

一.什么是文件系统

文件系统指文件存在的物理空间,linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。

Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。这种机制有利于用户和操作系统的交互。

每个实际文件系统从操作系统和系统服务中分离出来,它们之间通过一个接口层:虚拟文件系统或VFS来通讯。VFS使得Linux可以支持多个不同的文件系统,每个表示一个VFS 的通用接口。由于软件将Linux 文件系统的所有细节进行了转换,所以Linux核心的其它部分及系统中运行的程序将看到统一的文件系统。Linux 的虚拟文件系统允许用户同时能透明地安装许多不同的文件系统。

在Linux文件系统中,EXT2文件系统、虚拟文件系统、/proc文件系统是三个具有代表性的文件系统。

Linux内核与根文件系统的关系详解(linux内核与文件系统)

二.什么是根文件系统

根文件系统首先是一种文件系统,该文件系统不仅具有普通文件系统的存储数据文件的功能,但是相对于普通的文件系统,它的特殊之处在于,它是内核启动时所挂载(mount)的第一个文件系统,内核代码的映像文件保存在根文件系统中,系统引导启动程序会在根文件系统挂载之后从中把一些初始化脚本(如rcS,inittab)和服务加载到内存中去运行。我们要明白文件系统和内核是完全独立的两个部分。在嵌入式中移植的内核下载到开发板上,是没有办法真正的启动Linux操作系统的,会出现无法加载文件系统的错误。

那么根文件系统在系统启动中到底是什么时候挂载的呢?先将/dev/ram0挂载,而后执行/linuxrc.等其执行完后。切换根目录,再挂载具体的根文件系统.根文件系统执行完之后,也就是到了Start_kernel()函数的最后,执行init的进程,也就第一个用户进程。对系统进行各种初始化的操作。

根文件系统之所以在前面加一个”根“,说明它是加载其它文件系统的”根“,既然是根的话,那么如果没有这个根,其它的文件系统也就没有办法进行加载的。它包含系统引导和使其他文件系统得以挂载(mount)所必要的文件。根文件系统包括Linux启动时所必须的目录和关键性的文件,例如Linux启动时都需要有init目录下的相关文件,在 Linux挂载分区时Linux一定会找/etc/fstab这个挂载文件等,根文件系统中还包括了许多的应用程序bin目录等,任何包括这些Linux 系统启动所必须的文件都可以成为根文件系统。Linux启动时,第一个必须挂载的是根文件系统;若系统不能从指定设备上挂载根文件系统,则系统会出错而退出启动。成功之后可以自动或手动挂载其他的文件系统。因此,一个系统中可以同时存在不同的文件系统。在 Linux 中将一个文件系统与一个存储设备关联起来的过程称为挂载(mount)。使用 mount 命令将一个文件系统附着到当前文件系统层次结构中(根)。在执行挂装时,要提供文件系统类型、文件系统和一个挂装点。根文件系统被挂载到根目录下“/”上后,在根目录下就有根文件系统的各个目录,文件:/bin /sbin /mnt等,再将其他分区挂接到/mnt目录上,/mnt目录下就有这个分区的各个目录,文件。

三.什么是内核

Linux内核就像人的心脏,灵魂,指挥中心。内核是一个操作系统的核心,它负责管理系统的进程,内存,设备驱动程序,文件和网络系统,决定着系统的性能和稳定性。内核以独占的方式执行最底层任务,保证系统正常运行。协调多个并发进程,管理进程使用的内存,使它们相互之间不产生冲突,满足进程访问磁盘的请求等.

操作系统是一个用来和硬件打交道并为用户程序提供一个有限服务集的低级支撑软件。一个计算机系统是一个硬件和软件的共生体,它们互相依赖,不可分割。计算机的硬件,含有外围设备、处理器、内存、硬盘和其他的电子设备组成计算机的发动机。但是没有软件来操作和控制它,自身是不能工作的。完成这个控制工作的软件就称为操作系统,在Linux的术语中被称为“内核”,也可以称为“核心”。Linux内核的主要模块(或组件)分以下几个部分:存储管理、CPU和进程管理、文件系统、设备管理和驱动、网络通信,以及系统的初始化(引导)、系统调用等。

四.内核与文件系统的关系

技术上说Linux是一个内核。“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux。

文件系统是kernel的一部分。文件系统实现了系统上存储介质和其他资源的交互。kernel tree中的fs目录都是关于文件系统的,可以说它是kernel的一个大子系统。

嵌入式系统在flash中分配了存放内核、根文件系统的区域。bootloader加载了内核,内核启动,加载文件系统,进入Linux系统。

整个嵌入式系统而言,可以分为三个部分1.uboot 2.kernel 3.文件系统。其中kernel中以VFS去支持各种文件系统,如yaffs,ext3,cramfs等等。yaffs/yaffs2是专为嵌入式系统使用NAND型闪存而设计的一种日志型文件系统。在内核中以VFS来屏蔽各种文件系统的接口不同,以VFS向kernel提供一个统一的接口。如打开一个文件时统一使用open,写时采用write,而不用去考虑是那种文件系统,也不用去考虑文件系统是如何将数据写入物理介质的。其中 kernel中的配置,只是让VFS支持这种接口。

本文链接地址:https://www.jiuchutong.com/zhishi/283382.html 转载请保留说明!

上一篇:linux DRBD编译安装与配置方法(linux编译驱动文件)

下一篇:vue el-input 输入框输入不了(el-input value)

  • b站昵称多久可以改一次(b站昵称多久可以重置)

    b站昵称多久可以改一次(b站昵称多久可以重置)

  • 为什么微信发不出消息(为什么微信发不了红包给对方)

    为什么微信发不出消息(为什么微信发不了红包给对方)

  • 电脑屏幕桌面上东西都不显示了怎么办(电脑屏幕桌面上app全在左面)

    电脑屏幕桌面上东西都不显示了怎么办(电脑屏幕桌面上app全在左面)

  • DVD无法复制到U盘(为什么dvd光盘复制不了u盘上)

    DVD无法复制到U盘(为什么dvd光盘复制不了u盘上)

  • oppoace屏幕是哪家的(oppoace1是什么屏幕)

    oppoace屏幕是哪家的(oppoace1是什么屏幕)

  • 互感器作用(互感器作用及用途)

    互感器作用(互感器作用及用途)

  • 抖音注销7天内可以登录么(抖音注销7天内登录还会被注销么)

    抖音注销7天内可以登录么(抖音注销7天内登录还会被注销么)

  • 信号放大器原理(信号放大器原理是什么)

    信号放大器原理(信号放大器原理是什么)

  • a1370苹果笔记本电脑是哪一年的(A1370苹果笔记本win7 摄像头驱动)

    a1370苹果笔记本电脑是哪一年的(A1370苹果笔记本win7 摄像头驱动)

  • 小爱同学必须用wifi吗(小爱同学必须用小米电器吗)

    小爱同学必须用wifi吗(小爱同学必须用小米电器吗)

  • ps怎么改变图片背景颜色(ps怎么改变图片像素)

    ps怎么改变图片背景颜色(ps怎么改变图片像素)

  • 电商sku和spu的区别(电商sku spu)

    电商sku和spu的区别(电商sku spu)

  • 怎么在手机里用内存卡(怎么在手机里用腾讯会议共享屏幕)

    怎么在手机里用内存卡(怎么在手机里用腾讯会议共享屏幕)

  • airpods6s能用吗(airpods苹果6能用吗)

    airpods6s能用吗(airpods苹果6能用吗)

  • 手机运行内存怎么清理(手机运行内存怎么扩大)

    手机运行内存怎么清理(手机运行内存怎么扩大)

  • mate20pro如何扫描文件(mate20pro怎么扫描图片到手机上)

    mate20pro如何扫描文件(mate20pro怎么扫描图片到手机上)

  • 三星s8唤醒屏幕设置(三星s8唤醒功能在哪里?)

    三星s8唤醒屏幕设置(三星s8唤醒功能在哪里?)

  • 怎么设置滴滴出行支付宝免密支付(怎么设置滴滴出行)

    怎么设置滴滴出行支付宝免密支付(怎么设置滴滴出行)

  • 苹果防误触怎么关闭(iphone 防误触)

    苹果防误触怎么关闭(iphone 防误触)

  • 华为p30有扫描功能吗(华为p30手机的扫描功能在哪里能够找到)

    华为p30有扫描功能吗(华为p30手机的扫描功能在哪里能够找到)

  • 找回qq聊天消息记录(qq聊天消息记录怎么找回)

    找回qq聊天消息记录(qq聊天消息记录怎么找回)

  • Win7系统如何创建宽带连接?(Win7系统如何创建宽带连接)

    Win7系统如何创建宽带连接?(Win7系统如何创建宽带连接)

  • 如何取消Windows update的自动更新功能?(如何取消windows启动管理器)

    如何取消Windows update的自动更新功能?(如何取消windows启动管理器)

  • Spring(十五):Spring整合MyBatis的两种方式

    Spring(十五):Spring整合MyBatis的两种方式

  • 计提增值税比实际缴纳多
  • 应交增值税是什么意思
  • 递延所得税负债账务处理
  • 取得虚开普票怎样补增值税
  • 任意盈余公积使用范围
  • 个体工商户收入怎么核定
  • 过了汇算清缴期后发现错误
  • 金蝶利润表没有数据怎么办
  • 企业应收账款无论是否带息,在年末资产负债表中均应以
  • 小型微利企业申请
  • 小规模纳税人转一般纳税人
  • 发票抬头开错重开怎么处理?
  • 旧的固定资产销售怎么算税
  • 无形资产 减值
  • 手工做账流程图
  • 实物性投资资产
  • 财务收入支出明细表模板
  • 公司试驾车购置税怎么交
  • 无票销售纳税后怎么处理
  • 厂区折旧
  • 免抵退说
  • 出口企业增值税怎么算
  • 增资印花税增加哪个税目
  • 增值税小规模纳税人申报表填表说明
  • 公司车辆过户给公司需要交哪些税
  • 小规模纳税人附加税会计分录
  • 土地无形资产摊销年限怎么确定
  • 这个月只有销项没有进项怎么申报
  • u盘加载缓慢
  • 鸿蒙系统怎么升级3.0
  • pvlsvr.exe - pvlsvr是什么进程 有什么用
  • php封装接口
  • php or
  • 增值税发票选择确认平台注意事项
  • 扫码分享到微信
  • 房地产公司土地在资产负债表列入
  • PHP:imagecolorclosestalpha()的用法_GD库图像处理函数
  • 公允价值变动损益在利润表哪里
  • 非洲加纳霍霍埃族是个国家吗
  • php函数写法
  • 公司收加盟费合法吗?
  • r在数据分析中表示什么意思
  • 多智能体概念
  • yii2.0框架
  • 固定资产处置科目有哪些
  • 长期股权投资损益调整
  • 简单的记账方法叫什么
  • 小微企业应具备的条件
  • linux中备份
  • 车辆保险费如何缴纳印花税的
  • 初级会计计划成本例题
  • 我国的税种及税率
  • 服务业的收入确认原则
  • 多计提的工资怎么调账
  • 公司法规定股权转让需要满足什么条件
  • 售楼部装修费计入什么科目
  • 会计科目费用类
  • 支付广告费是什么活动
  • 支票丢失需要登报吗
  • Mysql row number()排序函数的用法和注意
  • Linux下MySQL 5.5/5.6的修改字符集编码为UTF8的方法
  • win7系统中怎么卸载安装的软件
  • freebsd书籍
  • 禁止Windows 打游戏怎么办
  • xp系统没有鼠标自己乱跳
  • linux查看磁盘空间大小以及分配
  • centos发送http请求
  • sunasServ.exe - sunasServ是什么进程 有何作用
  • win8.1中文版下载
  • Leap Motion Using Unity3D——环岛跑车篇
  • jquery和html的关系
  • node.js使用教程
  • shell嵌套for循环
  • 税务稽查时间最长多久?
  • 博兴公安局领导班子
  • 成立税务师事务所一定要执业会员吗
  • 股权收购的好处
  • 中国移动的电子协议推送服务是什么
  • 税务局文化品牌
  • 重庆税务总局发票查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设