grub linux rootfs,rootfs文件系统(笔记)(草稿)

文件系统简介

文件系统就是个软件,帮用户来管理一些二进制的信息,管理外存上存储的这些二进制

各种文件在内存中都是以二进制的形式来存在的,如果没有文件系统,用户就需要自己去决定这些二进制的东西是什么,需要自己去和硬件打交道,有了文件系统,就省去了用户和硬件直接打交道的过程。

linux和windows以及嵌入式linux文件系统的区别?

在pc机上的linux的boot和根文件系统是一起的,不在一起,是挂载看到的,虽然是在根文件系统是能看到boot的,但是物理上是分开的。因为这个的boot是有文件系统的

而在嵌入式linux中,boot和根文件系统是分开的,在根文件下是看不到内核grub等东西的,1.是因为根文件系统没有去把boot做进来,2.因为嵌入式linux的boot中是没有文件系统用的。在嵌入式linux中是没有swap

优盘上的文件系统

挂载机制

基于内存的文件系统

可以把内存中的一块当成文件系统中的一部分

文件系统就分为:根文件系统和普通的文件系统。比如优盘就有自己的普通的文件系统,是fat32的文件系统

而根文件系统则不一定是fat32的。

还有一种nfs的网络文件系统

根文件系统为这些文件系统提供了一种框架

VFS

不基于硬件,作用是去识别各个设备上的文件系统,只存在于内存中的

执行的linux.rc这个可执行程序,进程号是1的程序就是这个。

pc机上的内核会通过bootpImage来识别硬盘上的文件系统

101208120444.jpg

用ext3的read读出来数据,在用ext2的write写进去,中间就是用VFS这个借口来,调用不同的文件系统的函数来去实现一个cp的命令。

常见的根文件系统有基于flash的jffs2、yaffs、yaffs2、cramfs、基于网络的nfs等

nfs比较特别

用df来查看自己的根文件系统挂载

看到的就是这样子

/dev/mapper/VolGroup00-LogVol00

14093368   9200464   4165456  69% /

/dev/sda1               101086     15783     80084  17% /boot

tmpfs                   257800         0    257800   0% /dev/shm

.host:/              122873120  51227228  71645892  42% /mnt/hgfs

sda1中挂载的就是boot

tmpfs就内存中的根文件系统

69%本来应该是sda1

显示的是挂载过来的

Linux根文件系统目录结构

/bin /sbin /dev /etc /lib /usr /var

/proc /tmp /home /root /mnt /sys

/bin /sbin

放的是命令,bin下是常用的

sbin是系统常用的命令

usr/bin 下是用户的命令

/dev 下是一些设备文件

比如 tty0 touchscreen sound usb 等

一般挂载devfs或udev

这些名字可以自己改,是在内核中去修改的,修改的自己认识就可以的,这些东西都是内核启动完成后放进去的,做文件系统的只是起个文件夹得名字就可以了,具体放什么,是在内核启动中去放的

/etc 系统启动中需要的各种配置文件

比如启动时自动挂载的文件系统,自动运行的脚本,包括root一般的初始密码为什么是6个1,boa服务器配置脚本等东西,这是linux做根文件系统特别重要的文件,一般启动不起来,都是以为这个文件夹中的东西没有配置好

/lib

存放应从程序所需要的共享库

如 ls,cp ifconfig等系统明亮以及自己交叉编译器所用的

/usr/bin

比如qt需要的库就会放到这里

/usr

一般存放用户需要的东西,比如用户自己安装的东西,总的来说就是不是根文件系统需要的东西会放在这里

/var

存放系统启动过程会自动保存的一些东西,这里放的一些,日志之类的东西,都是掉电丢失的

一般挂载ramfs

ramfs就是把内存中的一块拿出来当做文件系统

tmpfs也是用来基于ramfs的文件系统

/tmp

一般是些临时文件的程序需要的目录

上面的这两个都是占的内存的

/proc

dev 是用来放设备节点

而这里是用来放 存放记录了当前存在多少模块,还有中断的使用情况,使用次数,包括当前系统的字符设备

里面存放的那些数字表示的是进程,里面就存放了这些进程所需要的一些东西,实际去做的时候做成空的,去挂载,一般都是需要去写脚本自动挂载,若不挂载一般系统会出各种奇怪的错误

/root

root的家

/home

其他用户的家目录

/mnt

临时文件系统挂载的目录

/sys

和proc类似,每加载一个驱动,就会记录这个驱动申请了哪些硬件资源等等,dev中只是存放了设备的名字,而这里面则是具体的东西

/rc(pc 机上的linux没,在开发板上才有)

是启动起来的第一个进程

(重要 :根文件系统的构建)

需要了解嵌入linux的启动过程

"noinitrd  root=/dev/mtdblock/1  init=/linuxrc  console=ttyS0";

root:   指定了根文件系统在FLASH分区中的位置

console:指定了内核启动后首选的控制台

init:   指定了linux内核启动完毕后调用的第一个用户态程序,即进程号为1的进程。

root=/dev/mtdblock/1  表示从这里去找根文件系统 ,看内核中去怎么写,内核中是2就是2

init=/linuxrc 启动以后的第一个用户态的进程

console=ttyS0 启动信息打印到那里去 ,这个是串口

linuxrc那里来的?linuxrc就是init进程,内核只启动这一个程序,其他的根文件系统都是由这个进程来启动的,内核是工作在内核态的,只要启动用户态的这个linuxrc这个进程,就表示内核启动的工作的结束(有系统调用的时候内核还是会工作的)。

其他的用户进程都是属于这个进程子进程,因为都是这个进程的子进程

会读取inittab的配置文件,来按照这个脚本来执行

linuxrc的执行过程

(结合ppt来看)

(后续补充……)

inittab是在etc文件下的

inittab文件的格式

(补图)

第一个id是表示使用的控制台,啥也不写,表示和内核是一样的,可以和内核不一样,一般是默认不写

第二个runlevels是 对嵌入式是没有意义,对于pc机的linux有意思,从0到5,5代表图形界面,表示开机的时候是进图形界面,3是表示字符界面 ,0是启动不起来了,1是单用户模式,类似于安全模式,2是多用户

可以在/etc/inittab 中看到

第三action个是 表示程序是怎么去执行的(补图)

respawn 启动的进程是不允许退出的 在嵌入式linux中的bash就是不允许退出的 会不断的重启

第四个process是要执行的程序的名字(需要路径)

init进程只能控制这8个进程

console c 5 1  (c是字符 5 是主设备号 1是从设备号)

比如 5 表示是串口,1就是具体com1或者别的com口

什么是设备节点?

就是dev下的一个名字

字符设备

最多可以有0到254,共255个(类)设备,是空的就可以去申请

块设备

网络设备

所有的驱动都是工作在内核态的

内核启动linuxrc就把工作权利交给根文件系统了

在profile中写

alies vi = ‘vim’ 这样以后vi就相当于vim了

嵌入式领域中的命令基本上都是从busybox连接过来的

可以在bin下执行ll -h来看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/529332.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 如何查看属性,linux 下查看系统属性

linux 下查看系统属性(2009-06-28 19:01:34)标签:linux杂谈分类:OSlinux下查看系统属性1、查看cpu信息查看所有cpu信息:cat /proc/cpuinfo查看cpu类型: grep "model name" /proc/cpuinfo2、查看内存信息:查看…

gnu linux中 使用,在Linux上使用GNU sed的方法

grep 命令grep 在文件(或命令输出)中搜索指定正则表达式,并且在标准输出中输出匹配的行。样例显示文件 /etc/passwd 中用户 gacanepa 的信息,忽略大小写。#grep-i gacanepa /etc/passwd显示 /etc 文件夹下所有 rc 开头并跟随任意数字的内容。#ls-l /etc …

android 自动 键盘,关于Android中的软键盘

InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示。当我们点击输入框时,系统对活动主窗口进行调整,从而为输入法腾出相应的空间&#xff0c…

Android渠道包自动发布市场,Android Gradle实现打包指定渠道后自动上传到fir

fir分三个主要步骤1.获取fir上传凭证2.上传APKAPP logo图标3.获取最新的下载地址供别人下载注:python使用的是requests网络请求库1.获取fir上传凭证image.png代码如下:# 第一步:获取fir上传凭证print("get fir upload certificate"…

android 基类fragment,Android DialogFragment 基类的定制

鸿洋博客介绍:DialogFragment的基本使用好处:1:使用DialogFragment来管理对话框,当旋转屏幕和按下后退键时可以更好的管理其声明周期,它和Fragment有着基本一致的生命周期2.DialogFragment也允许开发者把Dialog作为内嵌…

升级鸿蒙系统无法选择应用,申请鸿蒙系统有一个应用选择怎么选择呢

[分享交流]申请鸿蒙系统有一个应用选择怎么选择呢34364电梯直达huafen774590890新学乍练发表于 2020-12-18 22:19:17来自:HUAWEI Mate 30 Pro 5G最新回复 2020-12-19 09:31:55要怎么选择大家知道吗?想着你的狼自成一派发表于 2020-12-18 22:22:29来自&am…

html5中的css特性,浅谈HTML5 CSS3的新交互特性

本文标题的这副图片,是用phosotshop制作的。但是,在搜索引擎中你却无法搜索到它,搜索引擎还没有强大到能够识别图片里面的文字。并且由于图片的体积不算太小,可能网速慢的网友在浏览的时候不得不耐心的等待图片的刷新。那么&#…

计算机专业知识多选题证监会,2019年国家公务员考试中国证监会(计算机类)专业科目考试大纲...

2019年国家公务员考试中国证监会(计算机类)专业科目考试大纲由国家公务员考试网公告解读栏目由提供,更多关于2019国家公务员考试大纲,计算机类国考考试大纲,证监会国考考试大,国家公务员考试公告解读的内容,请关注国家公务员考试网/广东公务员考试网&…

计算机和网络老是断开,电脑插上网线还是显示断开连接怎么办

在网络故障处理中遇到过千奇百怪的问题,这里就说一个比较怪异的问题。一个网线插口,有的电脑插上网线可以正常上网,而有的电脑插上就显示断开连接。试了好多办法,换了网线,换了插口,换了路由器,…

计算机网络的资源共享功能包,计算机网络的资源共享功能包括

资源共享是现代计算机网络的最主要的作用,它包括软件共享、硬件共享及数据共享。在网络中,多台计算机或同一计算机中的多个用户,同时使用硬件和软件资源。通常多用户同时需要的资源总是超过系统实际物理资源的数量,但采用逻辑(或虚…

计算机学院嘉年华标题,“芯动盛夏 AI创南航” 计算机学院举办第八届计算机嘉年华...

当前,我们正迎来一个科技主导的全智能时代,为激发大家学习探索人工智能的兴趣,切身感受AI科技的魅力所在,计算机科学与技术学院/人工智能学院于6月20日在体育馆广场举办了“芯动盛夏 AI创南航”第八届计算机嘉年华活动。活动中&am…

爱尔兰都柏林圣三一大学计算机排名,2021年爱尔兰都柏林圣三一大学世界及专业排名 不愧是最古老的学府!...

它是参照牛津和剑桥大学模式兴建的欧索世界顶级研究型大学,其商学院也是欧洲培养企业家最多的商学院之一,这所名校就是爱尔兰都柏林圣三一大学,该校的科研实力雄厚,因此,每年都会吸引一大批的学子前往该校留学&#xf…

计算机系统的四种启动方式是,电脑启动方式有几种你知道吗?

关于电脑启动方式有几种,可能你会说,电脑启动不就是按电源按钮启动吗?实际上,电脑有三种启动方式,而且三种启动方式会对应不一样情况,虽然有些概念对现在的电脑略微有一点点落后,但是对于玩电脑…

安装杀毒软件是保障计算机安全,安装杀毒软件是保障计算机安全的唯一措施

摘要:脉搏8次/分,安装安全合的最适此时方式手术是,血压病人术时。软件综合征在最常见的青春前期表现临床是。障计糖病粘多目前据是确诊的依。...脉搏8次/分,安装安全合的最适此时方式手术是,血压病人术时。杀毒保算机施…

畅想未来计算机的绘画作品小学生,畅想未来儿童画绘画作品大全

畅想未来儿童画绘画作品大全导语:未来的科技在不断发展,未来的世界每天充满了新奇。下面是小编为您整理的儿童画,希望对您有所帮助。未来的世界是个先进的地方。我们的交通工具不再是飞机、轮船和汽车,而是宇宙飞船。家里的设备是…

计算机考在职研究生有必要吗,读在职研究生有必要辞掉工作吗?

很多在职场打拼多年的人员,为了以后能有更好的发展,决定读读在职研究生有必要辞掉工作吗?读在职研究生有必要辞掉工作吗?对此,相关老师指出,读在职研究生没必要辞掉工作,在职人员可以边工作边学习,利用休…

计算机word图标不显示,word图标不显示怎么办 设置图标显示的具体方法

word是我们常用的办公软件,有时在使用时,图标会莫名其妙不显示,那么word图标不显示怎么办?下面小编带来设置显示word图标的方法,希望对大家有所帮助。设置显示word图标的方法:按键盘上的Windows徽标健R键&a…

检查各计算机所属工作组ip,如何在Win8.1/RT 8.1中添加语言或键盘

通过添加语言,你可以更改用于在 Windows、应用和 Web 中读取和写入的语言。添加语言若要更改你的 Windows 显示语言或者添加键盘以进行键入,首先要将一种语言添加到语言列表中。从屏幕右边缘向中间轻扫,点击“设置”,然后点击“更…

计算机机器人方向,计算机考研想学习智能机器人方向都有那几个学校呢..._考研_帮考网...

caowengqin新兵答主12-11TA获得超过868个赞智能科学与技术专业考研方向1:计算机技术计算机技术是(专业硕士)工程下的二级学科专业。计算机技术领域重点研究得是如何扩展计算机系统的功能和发挥计算机系统在各学科、各类工程、人类生活和工作中的作用。计算机技术是信…

css3 flex 省略号,flex 布局下 CSS 文本超出单行宽度后显示省略号

布局两栏布局,左边定宽,右边 flex-grow: 1,自动填满剩余空间。image.png{{book.name}}{{book.author}}给 book-info 设置width: 0如果不设置宽度, .book-info 可以被子节点无限撑开;因此 .name 总有足够的宽…