1.HTC G14,心源HBOOT为1.27.0000,码g码S-ON,心源怎么获得ROOT权限?找了好久没找到教程。码g码我的心源邮箱mit66@163.com。
2.电脑设置第一启动项为u盘怎么设置电脑u盘启动
3.å
³äºubuntuçgrub2å¼å¯¼
4.什么是码g码matlab编程源码大全bootcore
HTC G14,HBOOT为1.27.0000,心源S-ON,码g码怎么获得ROOT权限?找了好久没找到教程。心源我的码g码邮箱mit66@163.com。
很多软件是心源需要访问并读写内部ROOT的,比如Screenshot,码g码就必须有ROOT权限才可正常使用,心源如果相应的码g码,我们获得了ROOT权限,心源那么有些软件就可以正常使用,并能发挥其特性了。一键root的方法 root并没有想象中的那么难,目前有不少软件可以做到。
Z4root、 UniversalAndRoot、GingerBreak和等root 软件都比较方便。
下面就简单介绍其中的一款。
superoneclick
root
成功率较高,并且支持当前所有安卓系统的版本(包括android4.0),几乎没有机型限制!目前最新版本为v2.3.3.0。并且还能卸载安卓市场,
对于root过程有辅助作用(如果需要可到安卓软件资源网站下载安装);而且,该软件支持反root,当你发现系统root后不定或不安全,可以解除root,从而保护手机。
电脑设置第一启动项为u盘怎么设置电脑u盘启动
一 如何设置电脑启动项的为u盘启动1、把U盘插到主机USB口上,启动电源开关,当显示器出现画面后开始狂按键盘光标控制区的源码每日分享Delete键。
2、出现蓝色背景画面后,就进入BIOS了,用箭头键移动“Advanced BIOS Featrues”按回车。
3、移动箭头键至First Boot Device,按回车,这里我们选择USB—FDD启动模式来启动U盘。
4、选择好以后,按F,问是否退出且保存,我们选择字母Y,按回车。
5、计算机重启并进出现如下画面后,设置成功。
二 怎样设置U盘为第一启动项
1、利用按键选择U盘启动
一般的品牌机,例如联想电脑,无论台式机抑或笔记本,选择启动项的'键都是F,开机的时候按F键会出现启动项选择界面。如果对英文不是很了解,无法确定各个选项代表什么,可以通过一个单词来快速选择U盘启动,也就是在出现的启动项列表里找到一项带USB字样的就可以了。其余品牌机或者部分组装机也有按键选择启动项的功能,具体的如下图所示。
2、还有一些电脑是没有热键选择启动项功能的,对于这种电脑只能通过下面的方法来设置了。
将u盘启动盘插入到电脑usb插口中,后打开电脑,出现开机画面后按热键(上图所示)进入bios设置。
3、然后使用键盘上的大宝麻将源码左右方向键“←,→”将光标移至Boot菜单
再使用键盘上的上下方向键“↑,↓”将光标移至USB HDD : KingstonDT G2
使用F5/F6键将u盘移动到第一启动项,最后按F保存退出,如下图所示。
4、完成上面的操作重启电脑,我们就可以看到屏幕中出现大白菜u盘启动盘的主菜单界面了,如下图所示。
三 如何设置u盘为第一启动项
1.开启电脑,在电脑出现开机画面的时候连续按下 “Esc” 键进入BIOS设置; (部分电脑可能会是Delete、F2或F6)
2.进入 BIOS FEATURES SETUP 中,将 Boot (启动顺序)设定为USB- HDD (或USB-FDD 、USB-ZPI,USB-CD-ROM 请与你制作的U盘工作模式对应),BIOS能识别接受的有:驱动...
3.设定完毕后按 “ESC” 键,退回BIOS主界面,选择 Save and Exit ; (也可以按下F保存退出)
4.将用u启动v5.0制作好的u盘启动盘插入到电脑的usb接口处 (若是台式电脑,建议将u盘插入到电脑主机后背的usb接口处,这样传输的性能会比较好) ,重启电脑,电脑就会自动进入到u启动的主界面了。
四 笔记本电脑重装系统如何选择u盘为第一启动项
设置方法如下:
1.首先确定电脑类型。
启动项目,就是开机的时候系统会在前台或者后台运行的程序。当操作系统完成登录过程,进程表中出现了很多的进程。操作系统在启动的时候,自动加载了很多程序。
许多程序的自启动,给我们带来了很多方便,这是不争的事实,但不是每个自启动的程序对我们都有用;更甚者,也许有病毒或木马在自启动行列。其实在Windows操作系统中关于自启动文件,除了从以前系统中遗留下来的Autoexec.bat文件中加载外,按照两个文件夹和9个核心注册表子键来自动加载程序的。一般分5类。
五 怎么设置电脑u盘启动
现在大家都喜欢用U盘来装系统,不过有的人初次接触装机可能不明白怎么设置。这需要在主板BIOS程序中设置USB-HDD为第一启动项。下面是由我整理的关于设置电脑u盘启动的方法。欢迎阅读!
怎么设置电脑u盘启动 1U盘装系统首先要让电脑从U盘启动,这需要在主板BIOS程序中设置USB-HDD为第一启动项,由于不同主板的设置方法会有不同,因此很多的kyuubi源码分析朋友还是比较盲目的,来给各位介绍下具体的操作步骤。
现在大家都喜欢用U盘来装系统,不过有的人初次接触装机可能不明白怎么设置。U盘装系统首先要让电脑从U盘启动,这需要在主板BIOS程序中设置USB-HDD为第一启动项。由于不同的主板BIOS设置也不同,有的用户找不到USB-HDD选项。下面来看看怎么在BIOS中找到USB-HDD选项。
一、进入BIOS后,选择Advanced BIOS Features。
二、将磁盘第1启动顺序设置为:[Hard disk]硬盘启动。
三、光标选择[HDD S.M.A.R.T. Capability]磁盘自动监控及回报功能!将设置调整为Enable。
四、再将光标移到[Hard disk boot priority]磁盘启动选项中,用+或-键移动其光标选择要启动的磁盘。这里要注意,开机前要先把U盘插入USB接口。
最后,按F保存退出即可。这就是在BIOS中找到USB-HDD的方法,怎么样,简单吧。你只要记住几个选项的英文名称,就可以重启开始操作啦。
怎么设置电脑u盘启动 2第一步:
要先确定U盘是什么盘符, 这一步是很重要的,如果把盘符不正确,就不能正确的.U盘启动电脑。
第二步:
在U盘里随便建一个文件,文件名和扩展名都可以随便写,如:kkwj.3fl 都可以, 这个相当于一个加密的密码。 只有这个文件U盘才启动电脑。ai app源码
第三步:
在本机上建一个.bat的批处理文件:
ifnotexistI:.ljshutdown-s-t-c“你不能启动此电脑”
此处I为U盘盘符,这个命令就是说:如果U盘中不存在.lj这个文件,则在秒后关闭该计算机,并显示“你不能启动此电脑”的提示信息。
第四步:
设置开机运行bat文件。 点击运行, 里输入“gpedit.msc”打开组策略,并定位到如下路径:“本地计算机”策略→计算机机配置→Windows设置→脚本(启动/关机),然后在右边的框中选择“启动”项,并将刚才建立的.bat批处理文件添加到启动脚本列表中,确定并退出就行了。
通过上述的操作之后,只有通过U盘才能启动电脑,如果没有插入U盘启动电脑时会被提示不能启动并在指定的时间内关闭电脑,其实这样也算是为电脑加密的一个简单方法。
怎么设置电脑u盘启动 31.先将U盘插入到电脑中,然后我们在开机出现第一屏启动信息界面时按键盘上的DEL键,直接进入BIOS:
2.进入后按键盘上的右方向键找到“Advanced”选项,最下面项是“USB Configuration”,用上下方向键选择它,回车进入:
3.进入“USB Configuration”后,将所有项都改成“Enabled”,按上下方向键选中后按回车由“Disabled”改为“Enabled”即可:
4.设置好后按键盘上的ESC键退回到上一级设置界面。再按左右方向键,选择“BOOT”主菜单,选择第一项“Boot Devicepriority”按回车进入:
5.然后在“Boot Devicepriority”设置界面下选择第一项“1st Boot Device”并按回车。然后在弹出的“1st Boot Device”选项中选择第一项“Removable”(移动装置):
6.接下来按ESC取消键,返回上一级设置界面,按上下方向键,选择第二行的“Removeable Drives”项,并按回车进入:
7.进入选项界面后,至少会有两项,其中有一项就是刚刚插入的U盘了,按键盘上的加号+将它放到最上面即可:
8.然后直接按键盘上的F键保存设置并退出即可,一会即可从U盘启动了:
怎么设置电脑u盘启动 41、首先我们打开联想thinkpad e笔记本电脑,在出现开机画面时按F2进入bios设置界面,使用左右方向键将光标移至security菜单,再使用上下方向键将光标移至secure boot按回车键执行,
2、接着使用上下方向键将光标移至secure boot选项,按回车键执行,在弹出的小窗口中使用上下方向键将光标移至disable选项,按回车键确认选择,
3、然后按esc键返回bios设置主界面,使用左右方向键将光标移至startup菜单,在使用上下方向键将光标移至UEFI/Legacy Boot选项,并按回车键执行,
4、然后在弹出的小窗口中,使用上下方向键将光标移至legacy only选项,按回车键执行,完成以上操作后,按F键会弹出一个询问窗口,点击yes保存并退出即可。
5、然后重启电脑后,在出现开机画面时按F快捷键进入启动想选择窗口,此时就可以看到USB驱动u盘启动的选项了,将光标移至u盘启动项,按回车键即可(这里需要先插入一个可引导启动的u盘)。
PS:Boot Mneu 内各个启动项,这个很有用的!大家可以记下来!
第一行:Windows Boot manager的意思是Windows 的Boot信息
第二行: ATAPI CD0:Optiarc DVD RW AD-H 的意思是从光驱启动
第三行:ATA HDDA:HITACHI HTS AE是 从硬盘启动
第四行:USB HDD :LENOVO USB FLASH DRIVE 是从USB启动,这里有时候会显示你U盘的品牌
第五行:PCI LAN REALTEK PME BOC D从 网卡启动
怎么设置电脑u盘启动 51、插入u盘,按电源开机键,待画面显示时,迅速按f2进入bios界面。注意此时BOOT OPTION#1,即第一启动项是硬盘,而下面的第二启动项是光驱,但是选中之后回车却没有USB的提示。
2、接着移动方向键“↑↓”选择Hard Drive BBS PRIORITIES,按回车
3、接着我们可以看到此时第一启动项为硬盘,第二启动项为金士顿u盘。
4、移动方向键“↑↓”选中金士顿u盘,接着ESC返回。
5、此时你会发现第一启动项已修改为金士顿u盘启动,按f保存即可
怎么设置电脑u盘启动 6方法一:U盘启动快捷键
1、插入制作好的U盘PE启动盘,重启按F2进入BIOS设置;
2、在Main下,按↓方向键选择F Boot Menu按回车,设置为Enabled,回车确认;
3、按F保存修改退出,重启电脑,按F调出启动项选择菜单,选择USB HDD回车即可U盘启动。
方法二:BIOS设置U盘启动
1、插入U盘启动盘,重启按F2进入BIOS;
2、切换到Boot选项卡,把USB HDD选项调整到第1的位置;
3、如果是预装win8/win系统,需把Boot Mode改成Legacy,按F保存修改重启即可。
六 做系统时怎样把U盘设为第一启动项
设置U盘为第一启动项的具体操作步骤如下:
1、首先插入U盘,然后开机,进入第一界面时马上按“DEL”键进入BIOS设置,用键盘的“TAB”键切换到Boot选项。
(6)电脑设置第一启动项为u盘:
用U盘启动电脑,可以不用进BIOS改变启动驱动器排序,将做好的启动U盘插入电脑,开机根据屏幕提示选择按键进启动菜单选项,进启动菜单后,选择USB设备启动即可。
若不能启动,可能有如下原因:
1、做的启动盘不成功,是否成功要在其它电脑上验证能启动才行。
2、制作的启动模式与电脑的BIOS不兼容,可换另一种模式(USB-HDD或USB-ZIP)模式重新制作,USB-ZIP模式U盘容量最好不要大于2GB,否则启动效果不好。
七 联想电脑怎样设置u盘为第一启动项
联想电脑bios设置u盘启动方法如下:
1、打开联想笔记本电脑,在出现开机画面时按F2进入bios设置界面,使用左右方向键将光标移至security菜单,再使用上下方向键将光标移至secure boot按回车键执行;
2、接着使用上下方向键将光标移至secure boot选项,按回车键执行,在弹出的小窗口中使用上下方向键将光标移至disable选项,按回车键确认选择;
3、然后按esc键返回bios设置主界面,使用左右方向键将光标移至startup菜单,在使用上下方向键将光标移至UEFI/Legacy Boot选项,并按回车键执行;
4、在弹出的小窗口中,使用上下方向键将光标移至legacy only选项,按回车键执行,完成以上操作后,按F键会弹出一个询问窗口,点击yes保存并退出即可;
5、重启电脑后,在出现开机画面时按F快捷键进入启动想选择窗口,此时就可以看到USB驱动u盘启动的选项了,将光标移至u盘启动项,按回车键即可(这里需要先插入一个可引导启动的u盘)。
八 戴尔笔记本怎么设置u盘为第一启动项
1、首先,开机后按F2键进入BOIS模式。
å ³äºubuntuçgrub2å¼å¯¼
æ¥éª¤å¦ä¸ï¼a è¿å ¥grubçå½ä»¤æ¨¡å¼ãè¿å ¥grubçé¢åæCé®è¿å ¥å½ä»¤è¡çé¢ã
b å çæä¸ä¸grub çä¸äºå½ä»¤ grub>help
c çæä¸ä¸catå½ä»¤
d rootæ令æ¥æå®/bootæå¨çååº
e kernelæ令æ¥æå®linuxçå æ ¸ï¼åæå¨çååº
f ç¨initrdå½ä»¤æ¥æå®initrdæ件
g bootå¼å¯¼ç³»ç»
catå½ä»¤çç¨æ³
catæ令æ¯ç¨æ¥æ¥çæ件å 容çï¼ææ¶ä¸ç¥éLinuxç/bootååºï¼ä»¥å/æ ¹ååºæå¨çä½ç½®ï¼è¦æ¥ç/etc/fstabçå 容æ¥å¾ç¥ï¼ è¿æ¶ï¼å°±è¦ç¨å°cat (hd[0-n],y)/etc/fstab æ¥è·å¾è¿äºå 容ï¼æ³¨æè¦å¦ä¼ç¨tabé®å½ä»¤è¡¥é½çåè½ï¼
grub> cat ( ætab é®ä¼åºæ¥hd0æhd1ä¹ç±»çï¼
grub> cat (hd0, 注ï¼è¾å ¥hd0,ç¶ååætabé®ï¼ä¼åºæ¥ååºä¹ç±»çï¼
grub> cat (hd0,6)
Possible partitions are:
Partition num: 0, Filesystem type unknown, partition type 0x7
Partition num: 4, Filesystem type is fat, partition type 0xb
Partition num: 5, Filesystem type is reiserfs, partition type 0x
Partition num: 6, Filesystem type is ext2fs, partition type 0x
Partition num: 7, Filesystem type unknown, partition type 0x
Partition num: 8, Filesystem type is reiserfs, partition type 0x
Partition num: 9, Filesystem type unknown, partition type 0x
grub> cat (hd0,6)/etc/fstab 注ï¼æ¯å¦ææ³æ¥çä¸ä¸ (hd0,6)/etc/fstabçå 容就è¿æ ·è¾å ¥ï¼
LABEL=/ / ext3 defaults 1 1
/dev/devpts /dev/pts devpts gid=5,mode= 0 0
/dev/shm /dev/shm tmpfs defaults 0 0
/dev/proc /proc proc defaults 0 0
/dev/sys /sys sysfs defaults 0 0
LABEL=SWAP-hda1 swap swap defaults 0 0
/dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,
managed 0 0
主è¦æ¥ç/etc/fstabä¸çå 容ï¼ä¸»è¦æ¯Linuxç/ååºå/bootæ¯å¦æ¯ç¬ç«çååºï¼å¦æ没æ/boot类似çè¡ï¼è¯æ/bootå Linuxç/å¤äºåä¸ä¸ªç¡¬çååºï¼æ¯å¦ä¸é¢çä¾åä¸LABEL=/ è¿è¡æ¯æ为éè¦çï¼è¯´æLinuxç³»ç»å°±å®å¨æ ç¾ä¸ºLABEL=/çååºä¸ï¼
å¦ææ¨çLinuxç³»ç»/bootå/没æä½äºåä¸ä¸ªååºï¼å¯è½cat (hd[a-n],y) æ¥å°çæ¯ç±»ä¼¼ä¸é¢çï¼
LABEL=/ / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
root (hd[0-n,y) æ令æ¥æå®/bootæå¨çååºï¼
å ¶å®è¿ä¸ªroot (hd[0,n],y)æ¯å¯ä»¥çç¥çï¼å¦æçç¥äºï¼è¦å¨kerenl å½ä»¤ä¸æå®ï¼åé¢å·²ç»è¯´è¿ (hd[0-n],y) 硬çååºç表示æ¹æ³çç¨éï¼ä¸»è¦æ¯ç¨æ¥æå® /bootæå¨çååºï¼
eg:
grub> root (hd0,0)
kernel æ令ï¼ç¨æ¥æå®Linuxçå æ ¸ï¼å/æå¨çååºï¼
kernel è¿ä¸ªæ令å¯è½åå¦è æç¹æï¼ä¸ç¥éå æ ¸å¨åªä¸ªååºï¼åå æ ¸æ件åçå ¨ç§°æ¯ä»ä¹ãä¸è¦å¿è®°tabé®çå½ä»¤è¡¥é½çåºç¨ï¼
å¦æå·²ç»éè¿root (hd[0-n],y) æå®äº/bootæå¨çååºï¼è¯æ³æ两个ï¼
å¦æ/bootåLinuxç/ä½äºåä¸ä¸ªååºï¼åºè¯¥æ¯ä¸é¢çä¸ç§æ ¼å¼ï¼
kernel /boot/vmlinuzå¨è¿éætabé®æ¥è¡¥é½ï¼å°±çå°å æ ¸å ¨ç§°äº ro root=/dev/hd[a-z]X
å¦æ/bootæèªå·±ç¬ç«çååºï¼åºè¯¥æ¯ï¼
kernel /vmlinuzå¨è¿éætabé®æ¥è¡¥é½ï¼å°±çå°å æ ¸å ¨ç§°äº ro root=/dev/hd[a-z]X
å¨è¿é root=/dev/hd[a-z]X æ¯Linux ç/æ ¹æä½äºçååºï¼å¦æä¸ç¥éæ¯åªä¸ªååºï¼å°±ç¨tabåºæ¥çæ¥è®¡ç®ï¼ä¸ä¸ªä¸ä¸ªçå°è¯ï¼æç¨cat (hd[0-n],y)/etc/fstab ä¸å¾å°Linuxç/æå¨çååºæååºçæ ç¾ï¼
grub> kernel /boot/å¨è¿éætabé®ï¼è¿æ ·å°±ååº/bootä¸çæ件äºï¼
Possible files are: grub initrd-2.6.-1._FC4.img System.map-2.6.-1.
_FC4 config-2.6.-1._FC4 vmlinuz-2.6.-1._FC4 grubBAK memtest+-1.
.1 xen-syms xen.gz
grub> kernel /boot/vmlinuz-2.6.-1._FC4 ro root=LABEL=/
[Linux-bzImage, setup=0x1e, size=0xe]
æ³¨è§£ï¼ root=LABEL=/ æ¯Linuxç/æå¨çååºçæ件系ç»çæ ç¾ï¼å¦ææ¨ç¥éLinuxç/å¨åªä¸ªå ·ä½çååºï¼ç¨root=/dev/hd[a-z]Xæ¥æå®ä¹è¡ãæ¯å¦ä¸é¢çä¸è¡ä¹æ¯å¯ä»¥çï¼
grub> kernel /boot/vmlinuz-2.6.-1._FC4 ro root=/dev/hda7
ä¹å¯ä»¥æ/bootæå¨çååºçæå® root (hd[0-n],y)è¿è¡çæï¼ç´æ¥å¨kernel ä¸æå®/bootæå¨çååºï¼æ以就å¨ä¸é¢çè¯æ³ï¼
å¦ææ¯/bootåLinuxçæ ¹åå¤ä¸ä¸ªååºï¼
kernel (hd[0-n],y)/boot/vmlinuz ro root=/dev/hd[a-z]X
æ¯å¦ï¼
grub>kernel
å¦ææ¯/bootåLinuxæå¨çæ ¹ä¸å¨ä¸ä¸ªååºï¼åæ¯ï¼
kernel (hd[0-n],y)/vmlinuz ro root=/dev/hd[a-z]X
grub> kernel (hd0,0)/boot/vmlinuz-2.6.-1._FC4 ro root=/dev/hda7
[Linux-bzImage, setup=0x1e, size=0xe]
æä¸é¢çè¾å ¥ï¼ä»¥cat åº/etc/fstabå 容为åï¼
grub> kernel (hd0,0)/boot/vmlinuz-2.6.-1._FC4 ro root=LABEL=/
[Linux-bzImage, setup=0x1e, size=0xe]
initrd å½ä»¤è¡æ¥æå®initrdæ件ï¼
grub> initrd /boot/initrdå¨è¿étab æ¥è¡¥é½ï¼
grub> initrd /boot/initrd-2.6.-1._FC4.img
[Linux-initrd @ 0x2e, 0xe bytes]
å¦æ/bootæ¯ç¬ç«çä¸ä¸ªååºï¼åºè¯¥æ¯å¦ä¸æ ·åçè¯æ³ï¼æ¯å¦ä¸é¢çï¼
grub> initrd /initrdå¨è¿étab æ¥è¡¥é½ï¼
grub> initrd /initrd-2.6.-1._FC4.img
[Linux-initrd @ 0x2e, 0xe bytes]
boot å¼å¯¼ç³»ç»ï¼
grub>boot
ä¸é¢æ¯å¨ææºå¨ä¸çå½ä»¤ï¼
grub> cat (hd0,0)/etc/fstab
# This file is edited by fstab-sync - see 'man fstab-sync' for details
LABEL=/ / ext3 defaults 1 1
/dev/devpts /dev/pts devpts gid=5,mode= 0 0
/dev/shm /dev/shm tmpfs defaults 0 0
/dev/proc /proc proc defaults 0 0
/dev/sys /sys sysfs defaults 0 0
LABEL=SWAP-hda1 swap swap defaults 0 0
/dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,managed 0 0
grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0x
grub> kernel /boot/å¨è¿éætabè¡¥é½ï¼å ¨ååº/bootææçæ件ï¼
Possible files are: grub initrd-2.6.-1._FC4.img System.map-2.6.-1._FC4 config-2.6.-1._FC4 vmlinuz-2.6.-1._FC4
memtest+-1..1 xen-syms xen.gz
grub> kernel /boot/vmlinuz-2.6.-1._FC4 ro root=LABEL=/
[Linux-bzImage, setup=0x1e, size=0xe]
grub> initrd /boot/å¨è¿éætabè¡¥é½
Possible files are: grub initrd-2.6.-1._FC4.img System.map-2.6.-1._FC4 config-2.6.-1._FC4 vmlinuz-2.6.-1._FC4 grubBAK
memtest+-1..1 xen-syms xen.gz
grub> initrd /boot/initrd-2.6.-1._FC4.img 注;è¾å ¥intrdæ件åçå ¨åï¼
[Linux-initrd @ 0x2e, 0xe bytes]
grub> boot
什么是bootcore
bootcore原名linuxBIOS,是一款开源的BIOS,代码可以从www coreboot org获得。
1. 整个BIOS入口地址src/cpu/x/bit/reset.inc
a) 定义了一个跳转指令,跳转到entry.inc的start里面,该跳转指令是5字节长度,而后面操作数是一个位的地址,用位地址表示。
b) reset.lds里面会定义reset.inc里面的段被编译到0xfffffff0的位置,并限定_start的位置不能小于0Xffff.(末端kb)的位置。是因为在为模式下段界限为kb,在个字节的最后一个字节处置0值。
c) .int _start – (. + 2)这句话分析。前面定义的操作码0xe9是一个段内跳转指令,后面这个定义的当然应该是跳转距离。_start-.这样写大家很容易理解,.代表当前指令位置。可这里有个小的偏差,(.)是当前这条汇编的点,实际应该是当前这条指令执行完得点,因此需要(.+2)。
2. src/cpu/x/bit/entry.inc里面是位代码段,进入保护模式。
a) 关中断
b) 保存eax的值,这里eax保存的是BIST之后的值。Intel文档中说明如下。(3A-9.1.2)
从这里我们知道如果eax值为0则表示通过了BIST测试,否则检测未能通过。
c) 清除出cr3使TLB失效,CR3寄存器是用来存放页表根目录的地址的。
d) 加载gdt
e) 设置cr0位
f) 跳转进入保护模式
g) GDT在src/cpu/x/bit/entry.inc里面定义
h) 跳转到ROM_CODE_SEG:__protected_start其中ROM_CODE_SEG就是下文提到的第二个GDT表项。
i) 。src/cpu/x/bit/entry.inc里面定义了GDT表和__protected_start
j) GDT表中有三个表项:
i. 第一个是GDT表项的基地址和大小作为limit。
ii. 第二个基地址为0x段界限为4GB的代码段。
iii. 第三个是与第二个相同地址的数据段。
k) __protected_start中把除了CS以外的数据段全部加载到第三个GDT表项上。
3. 接下来顺序执行进入__id_start(源文件在src/arch/x/lib/id.inc)但是这个我们可以看到他的section里面定义是id类型,在对应的id.lds里面我们可以看到他被编译成.idsection,并存放到配置的指定位置,这里包含主板厂商,主板序列号等信息。这些信息是由config文件给出的因此,不同型号的主板将会得到不同的id.inc文件。
4. 如果配置允许使用SSE指令,则致力应该执行sse的初始化代码,只是配置cr4寄存器,允许SSE指令。(config)
If(CONFIG_SSE,y)则执行。
5. $(obj)/mainboard/$(MAINBOARDDIR)/bootblock.inc,该文件是由src/arch/x/init/bootblock_simple.c或src/arch/x/init/bootblock_normal.c经过ROMCC生成的,生成过程暂时不管。
a) 该文件包含一个头文件,头文件里面定义了CBFS系统中查找和执行模块的函数,还根据配置文件来决定是否有初始化南北桥的函数,如果没有就设置一个空函数代替。
b) 执行初始化南北桥芯片的函数。
c) 查找romstage的入口。
d) 跳转到romstage的入口。