易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux操作系统内核启动参数详细解析

 
Linux操作系统内核启动参数详细解析
Linux内核在启动的时候,能接收某些命令行选项或启动时参数。当内核不能识别某些硬件进而不能设置硬件参数或者为了避免内核更改某些参数的值,可以通过这种方式手动将这些参数传递给内核。 
如果不使用启动管理器,比如直接从BIOS或者把内核文件用“cp zImage /dev/fd0”等方法直接从设备启动,就不能给内核传递参数或选项--这也许是我们使用引导管理器比如LILO的好处之一吧。 
Linux的内核参数是以空格分开的一个字符串列表,通常具有如下形式: 
name[=value_1][,value_2]...[,value_10] 
“name”是关键字,内核用它来识别应该把“关键字”后面的值传递给谁,也就是如何处理这个值,是传递给处理例程还是作为环境变量或者抛给“init”。值的个数限制为10,你可以通过再次使用该关键字使用超过10个的参数。 
首先,内核检查关键字是不是 `root='',`nfsroot='', `nfsaddrs='', `ro'', `rw'', `debug''或 `init'',然后内核在bootsetups数组里搜索于该关键字相关联的已注册的处理函数,如果找到相关的已注册的处理函数,则调用这些函数并把关键字后面的值作为参数传递给这些函数。比如你在启动时设置参数name=a,b,c,d,内核搜索bootsetups数组,如果发现“name”已注册,则调用“name”的设置函数如name_setup(),并把a,b,c,d传递给name_setup()执行。 
所有型如“name=value”参数,如果没有被上面所述的设置函数接收,将被解释为系统启动后的环境变量,比如“TERM=vt100”就会被作为一个启动时参数。 
所有没有被内核设置函数接收也没又被设置成环境变量的参数都将留给init进程处理,比如“single”。 
常用的设备无关启动时参数。 
1、init=... 
设置内核执行的初始化进程名,如果该项没有设置,内核会按顺序尝试/etc/init, 
/bin/init,/sbin/init, /bin/sh,如果所有的都没找到,内核会抛出 kernel panic:的错误。 
2、nfsaddrs=... 
设置从网络启动时NFS的启动地址,已字符串的形式给出。 
3、nfsroot=... 
设置网络启动时的NFS根名字,如果该字符串不是以 "/"、","、"."开始,默认指向“/tftp-boot”。 
以上2、3在无盘站中很有用处。 
4、no387 
该选项仅当定义了C


相关文档:

实战Linux Bluetooth编程 (七) SDP协议

Service Discovery Protocol(SDP)提供一种能力,让应用程序有方法发现哪种服务可用以及这种服务的特性。
服务发现协议(SDP或Bluetooth SDP)在蓝牙协议栈中对蓝牙环境中的应用程序有特殊的含意,发现哪个服务是可用的和确定这些可用服务的特征。SDP定义了bluetooth client发现可用bluetooth server服务和它们的特征的方法。 ......

Linux下SVN的三种备份方式

转自http://blog.csdn.net/windone0109/archive/2009/04/01/4040772.aspx
(本文例子基于FreeBSD/Linux实现,windows环境请自己做出相应修改)
  配置管理的一个重要使命是保证数据的安全性,防止服务器应硬盘损坏、误操作造成数据无法恢复的灾难性后果。因此制定一个完整的备份策略非常重要。
   一般 ......

Linux操作系统学习线路图 收藏

 
Linux操作系统学习线路图 
Linux操作系统学习线路图
如果你正在学习Linux操作系统,不知从哪里入手,可以参考下面给出的9点建议,还有一点是本人附加的,Linux程序工程师非常吃香,以后肯定是个火红职业。不管怎样,只要努力的学,后果很美好。
1.掌握至少50个以上的常用命令。
比如:安装和登录命令:log ......

linux的filesystem repaier

 
挂载了一个new硬盘,结果没有啥用处,可能当时在fstab里也增加了开机挂载的选择。没有注意,有一天就把后加的hard格式化掉了。不小
心reboot的时候连不上了。到机房一看,出现错误:fsck 没有发现/dev/sdb1 不能执行下去。然后让我进入一个文件修复过程:
An error occurred during the file system check ...&nb ......

学习嵌入式Linux的笔记和体会

   学习嵌入式Linux的笔记和体会(一)
一个典型的桌面Linux系统包括3个主要的软件层---linux内核、C库和应用程序代码。
内核是唯一可以完全控制硬件的层,内核驱动程序代表应用程序与硬件之间进行会话。内核之上是C库,负责把POSIX API转换为内核可以识别的形式,然后调用内核,从应用程序向内核传递参数。应用 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号