|
|
发表于 2007-2-22 09:21:47
|
显示全部楼层
另类读核笔记 : 第九部分
# ###########################
# File systems
# 文件系统
# ###########################
# Linux内核把文件系统分为网络文件系统(比如NFS、SMB)和磁盘文件系统(比如常接触FAT、EXT2等)
#
CONFIG_QUOTA=y |启用Quota功能。属于磁盘空间管理,该功能限制每个用户可使用的磁盘空间
#
CONFIG_AUTOFS_FS=m |核心支持 automounter工具程式,在用户需求时自动挂载远程文件系统进行访问
CONFIG_AUTOFS4_FS=m |描述同上。属于V4新版本,兼容V3版本
#
# 剔开严谨的概念,平时接触‘文件系统’就是例如用户创建并写入一个文本文件,文件Size应该是系统指定文件‘Size单位’(如 1K )的倍数。文件系统设计注重高效,只在繁忙的读写环境(如服务机器)才能体现
#
# Linux提及的日志文件系统,主题是保护‘元数据’
CONFIG_REISERFS_FS=m |核心支持Reiser日志文件系统。该文件系统由Hans Reiser创建,有先进的日志(Journaling/logging)机制,支持海量磁盘和优秀的综合性能。最初设计只能在Intel结构体系上使用。总的来说它跟Ext2文件系统一样快。现实来说,RH系统没有支持root分区格式化成Reiser文件系统,只支持访问 现存的Reiser分区
#
CONFIG_REISERFS_PROC_INFO=y |支持/proc/fs/reiserfs文件记录Reiser文件系统特定的信息(如调试信息)
#
CONFIG_HFS_FS=m |支持Apple Macintosh文件系统。该功能模块能挂载Macintosh格式化的软盘和硬盘分区,并进行完整的读写操作
CONFIG_BFS_FS=m |支持BFS(Boot File System)文件系统。该文件系统属于SCO UnixWare系统下的‘引导文件系统’,通常在/stand分区被定义。‘引导文件系统’包含了系统引导期间所有可引导程序及它们所需的数据文件(如内核文件)
#
CONFIG_FAT_FS=m |启用文件分配表(FAT,File Allocation Table)文件系统的支持选项。该选项支持DOS文件系统及其扩展的FAT文件系统,微软用于DOS和Windows操作系统的文件系统。并且开启以下子选项
#
# 如上述 Microsoft DOS和面向用户的Windows操作系统使用的文件系统是FAT文件系统。而FAT名字后面的数字表示命名地址指针的空间大小。如FAT16、FAT32
#
CONFIG_MSDOS_FS=m |支持msdos文件系统。这功能很多时被VFAT选项兼容,应用例子:挂载 DOS软盘,使用mtools工具程式进行数据存取
CONFIG_UMSDOS_FS=m |支持umdos文件系统。undos文件系统不是一个真正的文件系统,而是FAT文件系统的变体。应用umdos文件系统,Linux操作系统无须格式化具有其他操作系统的磁盘,直接安装到DOS或Windows相同的分区上
#
CONFIG_VFAT_FS=m |启用vFAT文件系统,属于扩展FAT文件系统。你可以用这功能挂载并访问DOS分区和任意版本的FAT格式化分区。但不能把Linux根分区格式化成vFAT文件系统
#
CONFIG_CRAMFS=m |支持CramFs文件系统。CramFs适用于嵌入式系统的文件系统,是一个面向内存,只读的高压缩的文件系统。例子:使用mkcramfs命令把/usr目录下内容制作成image文件,cramfs 的压缩率一般都能达到接近50%
CONFIG_SWAPFS=y |swapfs是 用在核心上 管理磁盘上的交换空间的交换文件系统。是将磁盘的一部分作为临时内存来使用。用于存储内存映像的分区叫 swap 分区或swap 分区文件
CONFIG_TMPFS=y |支持 Virtual memory file system,即tmpfs临时文件系统。tmpfs是把所有文件保存在虚拟内存中的临时文件系统,而保存的文件是系统认为不必写入磁盘中去,如硬件的驱动程序。重新启动后,保存在tmpfs中的文件都会丢失
CONFIG_RAMFS=m |支持Ramfs,基于RAM内存的简单的文件系统。把所有文件放在RAM内存,读写速度高于磁盘进行存取操作。应用例子如 RamDisk
#
CONFIG_ISO9660_FS=y |支持ISO 9660 CD-ROM文件系统。CD-ROM上的文件系统一般被称为iso9660,即定义格式的标准名。每个操作系统都可以将iso9660翻译为操作系统的本土文件系统(带有某些限制)
CONFIG_ZISOFS=y |启用Transparent decompression extension功能。该功能提供给Linux使用的RockRidge延伸格式,可以将数据以压缩方式保存在光盘中,而存取数据时直接由光盘解压缩
CONFIG_JOLIET=y |启用Microsoft Joliet CD-ROM extensions功能。Joliet是Microsoft基于ISO 9660而开发的文件系统,它可以支持长文件名和Unicode编码
#
CONFIG_MINIX_FS=m |支持 Minix 文件系统。Minix是Linux 的第一个文件系统,现在应用在教学目的
#
CONFIG_JFS_FS=m |支持 JFS文件系统。是 IBM JFS日志式文件系统
CONFIG_JFS_DEBUG=y |启用针对JFS文件系统的调试功能
#
CONFIG_PROC_FS=y |支持/proc 虚拟的文件系统。该文件系统不占用任何外存设备(如磁盘)的空间,只存在内存中。它以文件系统的方式为访问系统内核数据的操作提供接口,用户可以使用程式调整内核参数,或获取系统的动态数据。/proc命名意味着系统没有在运行时,只是一个空目录
#
CONFIG_DEVPTS_FS=y |DevFS属于设备文件系统,它是用来把字符设备文件分配给内核中的设备驱动程序。这选项跟"CONFIG_UNIX98_PTYS"选项是捆绑关系,实现X桌面使用的(PTY)虚拟终端机,有时叫 X终端 。启用该功能选项让/dev/pts/目录下增加虚拟的文件系统。例子:在X桌面打开一个虚拟终端机,产生一个/dev/pts/0动作,再打开一个虚拟终端机,对应/dev/pts/1 动作
#
CONFIG_ROMFS_FS=m |支持ROM文件系统。在内存中创建,只读的文件系统。ROM文件系统设计应用在Linux系统引导时初始RAM磁盘映像(如initrd.img)用来连接内核模块
#
CONFIG_EXT2_FS=y |ext2文件系统在这个内核版本发行时 成为Linux上的标准文件系统。最早的扩展文件系统(Extended File System)被命名为ext,它的第二版本就被命为ext2
CONFIG_EXT3_FS=m |内核支持ext3日志式文件系统。扩展文件系统的第三版本
#
CONFIG_CMS_FS=m |支持 CMS文件系统。该文件系统是IBM大型机系统开发的CMS minidisk文件系统
#
CONFIG_UDF_FS=m |支持UDF文件系统,启用read-only模式。是一种DVD-ROM的文件系统,被称为统一磁盘格式(Universal Disk Format,UDF)
CONFIG_UDF_RW=y |启用UDF文件系统的write模式。内核不情愿提供这功能选项,主要完善内核形象规模。它需要相应的‘刻录’软硬件配置
#
CONFIG_SYSV_FS=m |支持System V/Xenix/V7/Coherent文件系统,属于Unix系统V文件系统。实现访问 SCO 、Xenix 和 Coherent 等操作系统,他们同属于商用的Unix系统
CONFIG_UFS_FS=m |支持UFS文件系统,启用read-only模式。UFS文件系统是通用文件系统,属于Unix系统的默认文件系统。用在许多BSD的操作系统上,包括SunOS,FreeBSD,NetBSD, OpenBSD 和 NeXTstep 等等
#
# 注:Linux内核支持文件系统的功能,普遍应用通过虚拟文件系统(Virtual File System)对支持的文件系统进行有目的 数据访问。如果是将磁盘分区格式化来安装 OS操作系统,这需要操作系统是否接受的问题。
#
# Network File Systems
# 网络文件系统
#
CONFIG_CODA_FS=m |支持Coda文件系统。Coda是先进的网络文件系统,类似NFS的client/server机制,并向移动的客户(如膝上电脑)提供断开操作,提供cache一致性,提供认证的安全模型、加密和访问控制。应用在 Linux的集群系统
#
# NFS网络文件系统是由SUN Microsystem公司开发,是一种在网络的不同主机共享文件的方法。普遍应用共享主目录,有点象‘网络邻居’。另外一种应用在类似的主机之间共享二进制文件。如采用client/server机制进行系统升级
CONFIG_NFS_FS=m |支持NFS文件系统
CONFIG_NFS_V3=y |启用NFS客户端配置NFS第三版本(NFSv3)的支持功能
# CONFIG_ROOT_NFS is not set
CONFIG_NFSD=m |核心支持让Linux主机封装成NFS服务器
CONFIG_NFSD_V3=y |NFS服务器启用支持 NFSv3 协议
CONFIG_SUNRPC=m |启用 RPC(Remote Procedure Call)远程过程调用 服务机制
CONFIG_LOCKD=m |核心允许协调lockd程式。lockd和statd同是客户端配置的两个守护进程
CONFIG_LOCKD_V4=y | 支持V4版本 lockd程式
# 注:NFS是实现类似Linux主机之间进行资源共享
#
CONFIG_SMB_FS=m |支持SMB文件系统。这支持功能意味着 Samba软件能使用微软公司的 SMB (Server Message Block) 通信协议实现Windows主机与Linux主机之间进行资源共享
#
# Linux系统用major和minor表示设备的两个重要的序号,第一个为主设备号(major number),用来表示设备使用的设备驱动程序在系统中的序号;第 二个为从设备号(minor number),设备驱动程序使用它来区分不同的设备和判断如何进行处理。mknod创建设备文件 也用这两个序号指定参数
# ---------
CONFIG_MORE_UNNAMED_MAJORS=y |内核允许 在未命名块设备附加主设备号(major)。在未命名块设备(major 0,属于系统动态分配)上增加 12、14、38 和 39 主设备号,这里应用在块设备安装文件系统映射到相应的驱动程式的情况,该功能实现挂载1279个虚拟文件系统
#
CONFIG_VXFS_FS=m |支持 FreeVxFS文件系统。该文件系统是SCO UnixWare的标准文件系统,也可使用在Sunsoft Solaris 、HP-UX 等操作系统中
#
CONFIG_NCP_FS=m |支持NCP文件系统。这里指NCP文件系统理解成NCP协议,NCP(NetWare Core Protocol) 协议是Novell NetWare网络操作系统运用在IPX网际协议上客户端与服务端进行会话的通信协议。Linux内核支持NCP的应用功能就象TCP/IP环境下类似NFS应用功能
#
# NCP应用中的功能设置,需要ncpmount程式配合
CONFIG_NCPFS_PACKET_SIGNING=y |NCP应用中启用‘包特征’(Packet signatures)功能,加强数据安全的保护
CONFIG_NCPFS_IOCTL_LOCKING=y |启用‘Proprietary file locking’功能,允许对远程NetWare volumes(Netware服务器的卷标)上的记录 锁定的功能
CONFIG_NCPFS_STRONG=y |启用 文件删除和重命名的操作特性 的开/关功能
CONFIG_NCPFS_NFS_NS=y |允许在NetWare服务器上使用NFS 名字空间(namespace),即挂载点
CONFIG_NCPFS_OS2_NS=y |允许在NetWare服务器上使用 LONG (OS/2) 名字空间(namespace)
CONFIG_NCPFS_SMALLDOS=y | LONG (OS/2)名字空间(namespace)接受小写字符的DOS文件名
CONFIG_NCPFS_NLS=y |支持使用本机语系
CONFIG_NCPFS_EXTRAS=y |启用 使用符号链接和设置权限位的功能
#
CONFIG_INTERMEZZO_FS=m |支持InterMezzo文件系统。该文件系统提供 使服务器上的文件夹集合镜像和自动同步恢复系统,断开连接下操作等特性。应用在镜像和备份服务器
#
# Partition Types
# 分区种类
# MBR和扩展分区都驻留分区表,分区表记录着每个分区信息,而信息中包括一项‘分区种类’,实现多操作系统安装在同一硬盘。例如GRUB双启动菜单启动系统,Grub程式怎样在急速旋转的磁盘中找到操作系统存放的地点
# Linux操作系统不关注分区种类信息,fdisk工具程式才会关注
#
CONFIG_PARTITION_ADVANCED=y |启用 分区种类的高级选项。允许访问一些特殊的分区种类的系统
CONFIG_OSF_PARTITION=y |支持 Alpha OSF 分区。实现 Alpha机器的磁盘分割区(有规划划分的分区)使用Linux
#
CONFIG_MAC_PARTITION=y |支持 Macintosh 分区映射表
CONFIG_BSD_DISKLABEL=y |支持FreeBSD分区表。FreeBSD有自己一套磁盘划分和管理分区的方案
CONFIG_MINIX_SUBPARTITION=y |支持 Minix subpartition分区种类。Minix OS分区规划:一整块磁盘分为4个子硬盘,子硬盘又可包含4个子分区
CONFIG_SOLARIS_X86_PARTITION=y |支持 Solaris (x86) 分区表格式
CONFIG_UNIXWARE_DISKLABEL=y |支持 UnixWare系统的VTOC表。VTOC表记录着slice(分区片)信息,‘片’是指定一组连续的块。Unix系统辨认磁盘只有4个主分区的概念,系统安装到其中一个主分区后,在主分区下设置分区片
CONFIG_SGI_PARTITION=y |支持SGI分区表格式。允许访问SGI机器
CONFIG_SUN_PARTITION=y |支持SunOS分区表格式
# 注: 以上有几个分区种类设置选项是需要核心启用支持UFS文件系统。UFS文件系统设置不止‘read-only’模式,还有‘write’模式。RH没有设置write模式怕你搞危险(dangerous)动作
CONFIG_MSDOS_PARTITION=y |支持msdos分区表
#
CONFIG_SMB_NLS=y |核心支持 Samba 应用时使用本机语系操作 字符转换。应用如:使用代码页文件作文件名称的字符转换
CONFIG_NLS=y |核心启用本机语系的功能。让在支持的文件系统下翻译地区语言
#
# Native Language Support [url=mk MSITStore:E:\xiaowei-study-kernel.CHM::/wei-study-kernel-12.html#Native Language]# ########[/url]
# 本机语系 支持
# 注:加入粗略理解 > 计算机只辨认二进制数,比如8位二进制数代表一个字符(如键盘上'A'),主板上集成元件嵌入成千上万的电气元件(看作灯泡,1和0两种变化)。系统采用字符编码表记录8个灯泡对应一个字符来方便操作
# codepage代码页与字符编码表理解上类似,codepage是方便系统处理多国语文字符的内部表格。如 系统只能辨认英文的字符数据,codepage代码页 就好像 字符翻译字典
#
# 在Linux下引入对Codepage的支持主要是为了访问不同的文件系统下的多语种文件名的问题
# 以下各国语言的代码页属于DOS代码页的内容,属于核心支持NLS(本机语系)的范围。是处理Microsoft FAT文件系统系列的文件名,但不包括文件内容
CONFIG_NLS_CODEPAGE_437=m |Codepage 437是能使用DOS代码页中美国和加拿大的英语字符集处理 Microsoft FAT文件系统系列的文件名,但不包括文件内容
CONFIG_NLS_CODEPAGE_737=m |Codepage 737属于希腊语的DOS代码页
CONFIG_NLS_CODEPAGE_775=m |Codepage 775属于波罗的海地区之语言的DOS代码页
CONFIG_NLS_CODEPAGE_850=m |Codepage 850属于欧洲大部分语种的的DOS代码页。包括英语,德语,西班牙语,意大利语
CONFIG_NLS_CODEPAGE_852=m |Codepage 852的DOS代码页。包括中东欧语种:阿尔巴尼亚语,克罗地亚语,捷克语,英语,芬兰语,匈牙利语,爱尔兰语,德语,波兰语,罗马利亚语,塞尔维亚语,斯洛伐克语,斯洛文尼亚语,索布诸语言(西斯拉夫诸语言和方言)
CONFIG_NLS_CODEPAGE_855=m |Codepage 855的DOS代码页。包括古代斯拉夫语的字母
CONFIG_NLS_CODEPAGE_857=m |Codepage 857属于土耳其语的DOS代码页
CONFIG_NLS_CODEPAGE_860=m |Codepage 860属于葡萄牙语的DOS代码页
CONFIG_NLS_CODEPAGE_861=m |Codepage 861属于冰岛语的DOS代码页
CONFIG_NLS_CODEPAGE_862=m |Codepage 862属于希伯来语的DOS代码页
CONFIG_NLS_CODEPAGE_863=m |Codepage 863属于加拿大语的DOS代码页
CONFIG_NLS_CODEPAGE_864=m |Codepage 864属于阿拉伯语的DOS代码页
CONFIG_NLS_CODEPAGE_865=m |Codepage 864的DOS代码页,包括北欧语种:挪威语,丹麦语
CONFIG_NLS_CODEPAGE_866=m |Codepage 866属于斯拉夫语/俄语的DOS代码页
CONFIG_NLS_CODEPAGE_869=m |Codepage 869属于古代/近代希腊语的DOS代码页
CONFIG_NLS_CODEPAGE_874=m |Codepage 874属于泰语的DOS代码页,兼容TIS-620
CONFIG_NLS_CODEPAGE_932=m |CP932支持使用日本语的映射字符集,包括Shift-JIS或EUC-JP的DOS代码页
CONFIG_NLS_CODEPAGE_936=m |CP936属于包含简体中文(GB2312)字符集的DOS代码页
CONFIG_NLS_CODEPAGE_949=m |CP949支持韩文字符集,是UHC的DOS代码页。UHC(UnifiedHangul)是韩文 EUC-KR 编码(KS C 5601-1992 编码,包括2350 韩文音节和 4888 个汉字a)的超集
CONFIG_NLS_CODEPAGE_950=m |CP950属于包含繁体中文(Big5)字符集的DOS代码页
CONFIG_NLS_CODEPAGE_1250=m |Codepage 1250支持使用Windows CP-1250字符集,包含中欧语种字符(Windows)
CONFIG_NLS_CODEPAGE_1251=m |Windows CP1251属于支持俄语、保加利亚语和白俄罗斯语的DOS代码页
# 代码页应用 如显示简体中文的文件名称的例子: mount -t vfat /dev/hda5 /mnt -o codepage=936,iocharset=cp936
#
# 以下是核心支持的字符集,属于核心支持NLS(本机语系)的范围之内,能适合 输入/输出 的字符集。字符编码集理解上好象‘新华字典’的部首检字表。而用户见到的是基于字符集的字体
# the International Organization for Standardization 译成 国际标准化组织,简称 ISO 。Linux系统上经常使用的字符集是ISO 8859系列的字符集.它包含了以下多语言的单字节编码字符集
#
CONFIG_NLS_ISO8859_1=m |ISO 8859-1(Latin 1,拉丁文 一)字符集。涵盖绝大多数的欧洲语言,包括 阿尔巴尼亚语、加泰隆语、丹麦语、荷兰语、英语、法罗语、芬兰语、法语、德语、Galician、爱尔兰语、冰岛语、意大利语、挪威语、葡萄牙语、西班牙语、瑞典语
CONFIG_NLS_ISO8859_2=m |ISO 8859-2(Latin 2,拉丁文 二)字符集。涵盖斯拉夫语系和中欧语系,包括 捷克语、德语、匈牙利语、波兰语、罗马尼亚语、Croatia人语种、斯洛伐克语、斯洛文尼亚语
CONFIG_NLS_ISO8859_3=m |ISO 8859-3(Latin 3,拉丁文 三)字符集。涵盖Galician、世界语、马耳他语、土耳其语
CONFIG_NLS_ISO8859_4=m |ISO 8859-4(Latin 4,拉丁文 四)字符集。属于‘Latin 7’的初型。包括 爱沙尼亚语、拉托维亚语、立陶宛语
CONFIG_NLS_ISO8859_5=m |ISO 8859-5 字符集,是斯拉夫语系的字符集。包括 保加利亚语、白俄罗斯语、马其顿语、俄语、塞尔维亚语、乌克兰语。注:计算机对俄语应用 比较喜欢使用 KOI8-R字符集
CONFIG_NLS_ISO8859_6=m |ISO 8859-6 字符集,是 阿拉伯语 字符集
CONFIG_NLS_ISO8859_7=m |ISO 8859-7 字符集,是 近代希腊语 字符集
CONFIG_NLS_ISO8859_8=m |ISO 8859-8 字符集,希伯来语 字符集。CP1255代码页也能应用 希伯来字符(Windows)
CONFIG_NLS_ISO8859_9=m |ISO 8859-9(Latin 5,拉丁文 五)字符集。Latin 5 字符集去掉了 Latin 1 字符集中不经常使用的一些冰岛语字符,认同有用的土耳其语字符取而代之
CONFIG_NLS_ISO8859_13=m |ISO 8859-13(Latin 7,拉丁文 七)字符集。支持近代波罗的海地区之语言,包括拉托维亚语和立陶宛语
CONFIG_NLS_ISO8859_14=m |ISO 8859-14(Latin 8,拉丁文 八)字符集。支持凯尔特语系,包括 威尔斯语,人岛语, 盖尔语
CONFIG_NLS_ISO8859_15=m |ISO 8859-14(Latin 9,拉丁文 九)字符集。属于 Latin 1字符集的更新版本,去掉一些不经常使用的字符,增加对爱莎尼亚语的支持,修正了法语和芬兰语部份,并增加 欧元字符
#
CONFIG_NLS_KOI8_R=m |KOI8-R 字符集。属于俄语的缺省设置的字符集
CONFIG_NLS_UTF8=m |UTF-8 字符集。基于Unicode/ISO9646 字符编码标准的通用字符集
CONFIG_NLS_KOI8_U=m |KOI8-U/RU 字符集。KOI8-U字符集适合乌克兰语,而KOI8-RU字符集适合白俄罗斯语
#
## |
|