linux 根文件系统 文件系统有什么区别?

linux 根文件系统 文件系统有什么区别?,第1张

文件系统指胡老者的是除了内核以外你的其含猜它基本系统文件存放的地方,而文件系统指的是你的文件以何种方式存储,例如裤薯EXT3,FAT32,NTFS,CRAMFS,iso9660......

类似于 Windows下的C、D、E等各个盘,Linux系统也可以将磁盘、Flash等存储设备划分为若干个分区,在不同分区存放不同类别的文件。与Windows的C盘类似,Linux一样要在一个分区上存放系统启动所必需的文件,比如内核映象文件(在嵌入式系统中,内核一般单独存放在一个分区中)内核启动后运行的第一-个程序( init)给用户提供 *** 作界面的 shell程序、应用程序所依赖的库等。这些必需、基本的文件早氏合称为根文件系统,它们存放在一个分区中。Linux 系统启动后首先挂接这个分区,称为挂接( mount)根文件系统。其他分梁睁数区上所有目录、文件的集合,也称为文件系统。Linux 中并没有C、D、E等盘符的概念,它以树状结构管理所有目录、文件,其他分区挂接在某个目录上,这个目录被称为挂接点或安装点(mount point),然后就可以通过这个目录来访问这个分区上的文件了。比如根文件系统被挂接在根目录“I”上后,在根目录下就有根文件系统的各个目录、文件:/bin、/sbin、/mnt等再将其他分区挂接到/mnt目录上,/mnt目录下就有这个分区.的各个目录、文件。在一个分区上存储文件时,需要遵循一定的格式,这种格式称为文橡首件系统类型,比如fat16、fat32、ntfs、ext2、ext3、jffs2、yaffs 等。除这些拥有实实在在的存储分区的文件系统类型外,Linux还有几种虚拟的文件系统类型,比如proc、sysfs 等,它们的文件并不存储在实际的设备上,而是在访问它们时由内核临时生成。比如 proc文件系统下的uptime文件,读取它时可以得到两个时间值(用来表示系统启动后运行的秒数、空闲的秒数),每次读取时都由内核即刻生成,每次读取结果都不一样。“文件系统类型”常被简称为“文件系统”,比如“硬盘第二个分区上的文件系统是EXT2”指的就是文件系统类型。所以“文件系统”这个术语,有时候指的是分区上的文件集合,有时候指的是文件系统类型,需要根据语境分辨,在阅读各类文献时需要注意这点。

Linux之所以能在嵌人式系统领域取得如此辉煌的成绩,与其自身的优良特性是分不开的。与其他 *** 作系统相比,Linux具有以下一系列显著的特点。

1.模块化程度高

Linux的内核设计非常精巧,分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部分;其独特的模块机制可根据用户的需要,实时地将某些模块插入或从内核中移走,使得Linux系统内核可以裁剪得非常小巧,很适合于嵌入式系统的需要。

2.源码公开

由于Linux系统的开发从一开始就与GNU项目紧密地结合起来,所以它的大多数组成部分都直接来自GNU项目。任何人、任何组织只要遵守GPL条款,就可以自由使用Linux 源代码,为用户提供了最大限度的自由度。这纳历一点也正投嵌入式系统所好,因为嵌入式系统应用千差万别,设计者往往需要针对具体的应用对源码进行修改和优化,所以是否能获得源代码 对于嵌入式系统的开发是至关重要的。加之Linux的软件资源十分丰富,每种通用程序在Linux上几乎都可以找到,并且数量还在不断增加。这一切就使设计者在其基础之上进行二次开发变得非常容易。另外,由于Linux源代码公开,也使用户不用担心有“后闸”等安全隐患。

同时,源码开放给各教育机构提供极大的方便,从而也促进了Linux的学习、推广和应用。

3.广泛的硬件支持

Linux能支持x86、ARM、MIPS、ALPHA和PowerPC等多种体系结构的微处理器。目前已成功地移植到数十种硬件平台,几乎能运行在所有流行的处理器上。

由于世界范围内有众多开发者在为Linux的扩充贡献力量,所以Linux有着异常丰富的驱动程序资源,支持各种主流硬件设各和最新的硬件技术,甚至可在没有存储管理单元MMU 的处理器上运行,这些都进一步促进了Linux在嵌入式系统中的应用。

4.安全性及可靠性好

内核高效稳定。Linux内核的高效和稳定已在各个领域内得到了大量事实的验证。

Linux中大量网络管理、网络服务等方面的功能,可使用户很方便地建立高效稳定的防火墙、路由器、工作站、服务器等。为提高安全性,它还提供了大量的网络管理软件、网络分析软件和网络安全软件等。

5.具有优秀的开发工具

开发嵌入式系统的关键是需要有一套完善的开发和调试工具。传统的嵌入式开发调试工具是在线仿真洞备搜器(In Circuit Emulator,ICE),它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,从而使开发者能非常清楚地了解到程序在目标板上的工作状态,便于监视和调试程序。在线仿真器的价格非常高,而且只适合做非常底层的调试。如果使用的是嵌人式Linux,一旦软硬件能支滚让持正常的串口功能,即使不用在线仿真器,也可以很好地进行开发和调试工作,从而节省了一笔不小的开发费用。嵌入式Linux为开发者提供了一套完整的工具链(Tool Chain),能够很方便地实现从 *** 作系统到应用软件各个级别的调试。

6.有很好的网络支持利文件系统支持

Linux从诞生之日起就与Internet密不可分,支持各种标准的Internet网络协议,并且很容易移植到嵌入式系统当中。目前,Linux几乎支持所有主流的网络硬件、网络协议和文件系统,因此它是NFS的一个很好的平台。

另一方面,由于Linux有很好的文件系统支持(例如,它支持Ext2、FAT32、romfs等文件系统),是数据各份、同步和复制的良好平台,这些都为开发嵌入式系统应用打下了坚实的基础。

7.与UNIX完全兼容

目前,在Linux中所包含的工具和实用程序,可以完成UNIX的所有主要功能。

但由于Linux不是为实时而设计的,因而这就成了Linux在实时系统中应用的最大遗憾。不过,目前有众多的自由软件爱好者正在为此进行不懈的努力,也取得了诸多成果


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12164031.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存