自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

肢解BIOS

----整理了我在学习BIOS过程中的心得,拿出来和大家研讨,纠正不对的地方。...

原创 【我所认知的BIOS】系列blog整理 1.23.2016.zip

这几年来,蛮多小伙伴都给我发邮件拿PDF版本。几年前写的文章格式什么的实在是太粗糙。最近我把所有的文章都整理了一下。其实该想法已经早就有了,只是最近才开始空闲。现在我把所有的文章整理好了以后上传到了CSDN和百度云盘分享给大家。把附件里面的再贴一遍。

2016-01-23 18:16:35

阅读数 7110

评论数 4

原创 .o0博客导读0o. 1/23/2016最后更新

寫在前面          一直以來其實沒有開博的打算,但是今天我發自內心寫這份blog。我是一個工作在工控機廠商的BIOS工程師,在這裡我談談我的寫的原因和目的。 原因:主要還是各個前輩影響了我。本身我剛剛從事工作崗位才一年不到的時間,工作于BIOS行業。然而這個行業的資料卻是罕見的少,幾乎在市...

2009-05-25 09:33:00

阅读数 13722

评论数 120

原创 【我所认知的BIOS】—> uEFI AHCI Driver(8) — Pci.Read()

社会一直在变,不晓得是不是社会变的太苦开,而我没变所以我反而显得单纯了。办一个居住证,几年前办的以为终于可以一劳永逸的,后来续办的是发现确实不难了。尼玛,上个月去续办还说好,你这快要到期了,下个月来开证明吧。结果我昨天去开证明,一堆的文件甩给我说,不好意思现在流程变了。一切都是按照新办的流程来。好...

2014-06-20 08:56:10

阅读数 7773

评论数 9

原创 【我所认知的BIOS】—> uEFI AHCI Driver(7) — AtaAtapiPassThruSupported

由于宝宝刚刚出生,最近时间比较紧张,原本这篇文章也写好了有一段时间了,但是每天晚上连开机的时间都没今天才更新上来。我已经邀请到几位我的好朋友加入到我的行列中来写uEFI的东西,他们分别会负责其他module的撰写。以后会专门说明各个部分的作者。没想到呀,局部变量就那么5个,居然里面牵扯的定义和概念...

2014-06-18 11:27:28

阅读数 4551

评论数 2

原创 【我所认知的BIOS】—> uEFI AHCI Driver(6) AtaAtapiPassThruSupported的局部变量们

前面5个篇文章把EFI_DRIVER_BINDING_PROTOCOL这个protocol的一个实例(instance)AHCI driver的安装做了一个比较详细的介绍。其实这个driver到目前为止只干了一件事情,那就是把这个protocol安装到对应的ImageHandle上去。对于这个dr...

2014-05-07 08:49:39

阅读数 4855

评论数 1

原创 【我所认知的BIOS】—> uEFI AHCI Driver(5) — 第一个protocol终于要开始安装了

文章对EFI_DRIVER_BINDING_PROTOCOL的每个 成员的讲解是重点。它是我们遇到的第一个uEFI里面的protocol所以我都尽量把它讲的够细。这一篇文章开始就真正进入到install protocol的函数里面去了。拭目以待吧~

2014-04-28 10:09:59

阅读数 5608

评论数 0

原创 【我所认知的BIOS】—> uEFI AHCI Driver(4) — 第一个Protocol真难搞

文章对EFI_DRIVER_BINDING_PROTOCOL的每个 成员的讲解是重点。它是我们遇到的第一个uEFI里面的protocol所以我都尽量把它讲的够细。下一篇文章开始就真正进入到install protocol的函数里面去了。

2014-04-24 08:49:33

阅读数 6199

评论数 0

原创 【我所认知的BIOS】—> uEFI AHCI Driver(3) — 无处不在的protocol

uEFI wasn’t built in a day. 它涉及的很多原理其实是设计的相当好的。具体我没去考证,据说设计uEFI架构的这帮人,都是很牛逼的OS架构师。他们对软件架构的理解相当深刻,不乏Linux精英。所以,在uEFI的骨子里面实际上流着的是Linux这类OS级别的血。不仅架构是这样,...

2014-04-16 10:08:20

阅读数 5076

评论数 0

原创 【我所认知的BIOS】—> uEFI AHCI Driver(2) — 原来开始也不那么简单

真是不好意思,上周由于家里有急事,所以离开上海比较匆忙都没来得及更新就回家了。这周补上两篇。 uEFI这个架构,我觉得它确实挺好的。比较起legacy BIOS来说,uEFI有非常完整的文档说明。所有的功能和概念都说的非常明确,当然实际上就是一种对协议的阐明。好吧,原来这就是protocol也就是...

2014-04-10 09:25:55

阅读数 7281

评论数 0

原创 【我所认知的BIOS】—> uEFI AHCI Driver(1) — uEFI开始其实不是很复杂

有人问过没?啥叫driver?不就是司机么?其实这一点都没错,driver的中文意思却是有司机的意思。只是在英文的世界里面,他们也有一词多义,但是他们的根本意思都是一样的。你看司机把一堆冷冰冰的铁块块就这么驾驶起来,让它动起来了。汽车还能够在司机的驾驶操作下面完成多很很让人惊讶的事情,比如前空翻呀...

2014-03-24 15:56:07

阅读数 8931

评论数 0

原创 【我所认知的BIOS】—> uEFI 开始

当年我出道的时候,uEFI还没流行起来。现在uEFI却已经是主流的BIOS了。原本三年前就说要写这个uEFI的部分的,那会儿由于工作和学业等种种原因落下了。从今天起,我就补上了。目前是打算,几乎尽量做到每一行做注释,当然如果是太简单的,连傻瓜都看得懂的话,那我就略过了。 uEFI这个东西现在很流行...

2014-03-17 10:16:01

阅读数 9819

评论数 2

原创 【我所认知的BIOS】—> Advanced Configuration and Power Interface 原理(实践部分)

感觉还是要引用一下前面一篇文章的开场白“ACPI是一个内容很丰富的综合性的规范,从外表看上去不得不承认感觉很神秘。究其根本其实还是建立在X86架构和应用的基础之上。大神其实是这样的人,他能够把很复杂的东西然后描述的很简单,很容易理解。这样的我有幸遇到了一些。ACPI的东西,实际上就是控制电脑系统的...

2014-03-14 08:51:14

阅读数 4945

评论数 3

原创 【我所认知的BIOS】—> Advanced Configuration and Power Interface 原理(软件部分)

感觉还是要引用一下前面一篇文章的开场白“ACPI是一个内容很丰富的综合性的规范,从外表看上去不得不承认感觉很神秘。究其根本其实还是建立在X86架构和应用的基础之上。大神其实是这样的人,他能够把很复杂的东西然后描述的很简单,很容易理解。这样的我有幸遇到了一些。ACPI的东西,实际上就是控制电脑系统的...

2014-03-03 08:51:49

阅读数 6114

评论数 1

原创 【我所认知的BIOS】—>Advanced Configuration and Power Interface原理(硬件部分)

ACPI是一个内容很丰富的综合性的规范,从外表看上去不得不承认感觉很神秘。究其根本其实还是建立在X86架构和应用的基础之上。ACPI这个东西是有那么点点复杂,我也试图尽量说的简单些。后续打算先用三篇文章来在架构上描述硬件、软件、简单的实践部分。最近intel推了一个叫做Minnow的HW open...

2014-02-24 08:49:10

阅读数 6322

评论数 3

原创 【我所认知的BIOS】-> Cache原理

以前有对Cache的架构研究,最近由于看了一些ARM上相关的cache的原理,随便把x86和ARM的cachestudy写成文章share出来吧。一晃都今天才上来。也说说吧,这大约三年里面变化蛮多的。前面两年是由于公司的要求的原因没有更新。后来由于一直在忙于研究生的学业,没时间更新。再后来就开始着...

2014-02-15 16:25:38

阅读数 5207

评论数 3

原创 _=我回来了=_

~目前失业在家中~ 这两年果真是太忙了,忙的实在是没时间更新我的blog。童鞋们,从今天开始我正式回归啦。而且已经不忙了。在未来的时间里面,我会focus在EFI的EDK和UDK的相关讨论中。目前的想法:EDK从SEC-> PEI-> DXE-> BDS-> ...

2012-11-22 09:01:53

阅读数 4687

评论数 13

原创 【我所认知的BIOS】->深入理解IRQ7

这篇文章的线索是因为偶然间发现自爱DOS下面,IRQ7对应的中断服务程序(ISR)只有一个Iret.那我不经会问,这是为什么呢?因为在BIOS下面IRQ7是有对应的ISR的。

2010-12-13 20:24:00

阅读数 8100

评论数 0

原创 【我所认知的BIOS】->PCI enumerate

这篇文章本是很久以前写的,最近感觉比较懒惰今天才贴出来。近两年开始EFI越来越流行了,可以说逐渐有颠覆legacy bios的趋势。处于对知识的渴望和追求我也最近对EFI有了一些简单的了解,我打算在后续的文章中做一个关于EFI的专题,基于EDK来写blog应该不错。毕竟它是开源的嘛,如果以AMI的...

2010-10-06 23:03:00

阅读数 19975

评论数 6

转载 如何使用WinDBG跟踪调试ASL/ACPI?

去年在研究ACPI的时候我有用windbg来分析一下ACPI methods,当时配置windbg的时候参考了几位前辈的文章,今天也转其中一篇过来以做备份。原地址是:http://blog.csdn.net/EFIBIOS/archive/2007/03/12/1526763.aspx

2010-08-24 09:20:00

阅读数 9302

评论数 4

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(11)

最近一段时间心态不太好,所以blog也没有更新。现在总算是调整过来了,目前我是这么打算,反汇编的文章暂时就写到bootblock这里了。至于如果还有兴趣研究POST部分的爱好者的话,我们可以私聊。后续文章准备写些比较深入点的文章,比较细节点的分析等等。希望大家给点建议,也希望我们BIOS ren共...

2010-08-24 09:01:00

阅读数 6951

评论数 6

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(10)

当内存检测完毕,一切准备就绪的时候,award bios就会准备把bios从ROM里copy到实际的RAM中来。当然在做这些之前还做了其他的动作,比如说操作timer呀什么的,看上面的代码就好,不赘述了。 从_F000:E439这行开始,bios先去在F000段搜索是否有压缩的字样(当然肯定是有...

2010-06-28 09:09:00

阅读数 6744

评论数 8

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(9)

为什么会有bootblock和非bootblock这么一说呢?其实就是因为有没有真正的内存可以用的区别。这个章节里我们一起来看看经过之前那些章节的讨论后,BIOS在初始化memory之前会做的一些动作。(稍微比较琐碎点,看起来比较枯燥。)Memory initial这个函数里面,会再做一些前期的准...

2010-06-24 20:39:00

阅读数 8169

评论数 3

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(8)

Memory对于一个计算机而言,很明显是非常非常重要的一个东西。没有他的话基本上电脑就要脑瘫了,(虽然也可以走路,但是和本山大叔小品里面的那些特殊人士差不多了,要么必须用拐,要么必须用轮椅。。。哈哈,扯远了。)在BIOS里面考虑的比较周全,为了能够万无一失地确保能够把memory初始化的工作做好,...

2010-06-24 20:16:00

阅读数 4998

评论数 6

转载 堆和栈的区别(转过无数次的文章)

一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序...

2010-06-11 09:51:00

阅读数 4203

评论数 4

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(7)

【我所认知的BIOS】->反汇编BIOS之Bootblock(7)-- Memory initial 之前的一些初始化DMA,8259By Lightseed5/20/20101、BIOS的主流程为什么会有bootblock和非bootblock这么一说呢?其实就是因为有没有真正的内存可以用...

2010-05-20 09:26:00

阅读数 5580

评论数 13

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(6)

【我所认知的BIOS】->反汇编BIOS之Bootblock(6)--关于S3与Normal reset BIOS的走向By Lightseed5/18/2010一、BIOS的主流程我们的BIOS主流程如图1所示,上一个章节我们的BIOS执行到了记录CPU type的东东,当时我们就发现其实...

2010-05-18 09:03:00

阅读数 3735

评论数 3

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(5)

【我所认知的BIOS】->反汇编BIOS之Bootblock(5)--Store CPU type to CMOSBy Lightseed5/18/2010一、BIOS的主流程从这章开始,我在每章的开头说把目前BIOS的主流程进行到了哪一步放在最前面,这样有助于理解整个Award BIOS的...

2010-05-18 08:59:00

阅读数 4068

评论数 0

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(4)

【我所认知的BIOS】->反汇编BIOS之Bootblock(4)--initialize Super IOBy Lightseed5/13/2010一、BIOS的主流程到目前为止,我们已经看了两个重要的函数了,也是BIOS的必经之路。如下面的代码片段,BT_CPU_Init和Chipset...

2010-05-14 09:24:00

阅读数 5061

评论数 2

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(3)

【我所认知的BIOS】->反汇编BIOS之Bootblock(3)--initialize some chipset registerBy Lightseed5/13/2010在上一篇中,我和大家探讨了下面代码中的BT_CPU_Init这个函数,它主要是一些特殊CPU的micro code的...

2010-05-14 09:15:00

阅读数 7598

评论数 2

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(2)

【我所认知的BIOS】->反汇编BIOS之Bootblock(2)--CPU micro code updateBy Lightseed5/12/20101、CPU micro code的背景先做个铺垫为什么要在BIOS刚刚开始跑的时候就来讲CPU的micro code。以下引用自网络:;-...

2010-05-13 09:23:00

阅读数 7051

评论数 4

原创 【我所认知的BIOS】->反汇编BIOS之Bootblock(1)

【我所认知的BIOS】->反汇编BIOS之Bootblock(1)By Lightseed5/12/2010 先说明,我用来反汇编的BIOS bin文件是512KB的。它是研XXX出的一块板子AIMB552主板上的BIOS。呵呵。。。有兴趣的,大家可以买块板子搞里面的BIOS哦。不过,我想这...

2010-05-13 09:03:00

阅读数 9102

评论数 15

原创 【我所认知的BIOS】->反汇编BIOS之准备工作

【我所认知的BIOS】->反汇编BIOS之准备工作              LightSeed3/11/2010上海      在我们进入反汇编的旅途之前,我想我应该把一些大家应该准备的东西都列一下,只有有了这样的针对性准备嘛,我想我写的文章才更能引起大家的共鸣。我用的主板是915GS+I...

2010-03-12 18:08:00

阅读数 10847

评论数 12

原创 【我所认知的BIOS】->反汇编BIOS之‘开始’

【我所认知的BIOS】->反汇编BIOS之‘开始’               LightSeed3/11/2010上海   我想稍微懂点BIOS的人都应该知道,目前blog里面的文章其实都是很基础很基础的东西。说白了呢就是没什么技术含量,说好听点呢,就是对技术的细节理解比较深刻。总之就是只...

2010-03-11 14:51:00

阅读数 6252

评论数 15

转载 DDR2 DIMM SPD Definition

DDR2 DIMM SPD Definition 最近在menlow平台上看一个关于DDR2的bug,在兼容某家的800HZ内存的时候会出现不开机的情况,后来也详细研究了一下award的memory initialization的部分。下面这篇文章感觉把东西都总结出来,挺不错的。本文的原地址是: ...

2010-02-10 10:49:00

阅读数 10388

评论数 1

原创 【我所認知的BIOS】->汇编语言之宏汇编2

【我所認知的BIOS】->汇编语言之宏汇编2By LightSeed2010-2-3   在上一节详细讲了宏汇编的理论,那这节来聊聊我在仿写ADU的时候用的一些宏汇编的例子吧。有了下面这个串宏汇编,那么程序的可维护性就高了很多,在添加或者删除这个工具的功能的时候,就显得格外简单和高级语言写出...

2010-02-03 08:53:00

阅读数 3857

评论数 0

原创 【我所認知的BIOS】->汇编语言之宏汇编1

【我所認知的BIOS】->汇编语言之宏汇编1By LightSeed2010-2-2  其实早就想写点关于汇编语言的文章了,但是最近感觉比较累,自己也比较懒今天才动手写。哎。。。真是身心俱疲,房价涨了,小菜也涨了,妹儿的要求也涨了,但是哥的工资还是不涨。这社会我快混不下去了。但是想想做男人嘛...

2010-02-02 12:34:00

阅读数 5678

评论数 6

原创 关于插图

 由于51.com封了外链图片,从而导致我的blog图片显示不正常。最近查找了不少的网站,似乎都没有一个比51.com好的。(csdn的相册着实让人很郁闷,我传了一个小时才传了两张图片。) 所以在这里也希望网友们,能给我一个建议,看看哪个网站上传图片和共享图片比较不错哦?thanks!   201...

2010-01-18 10:18:00

阅读数 1837

评论数 11

原创 【 我所認知的BIOS】-->Cache(3)

【 我所認知的BIOS】-->Cache(3)LightSeed12/14/2009Go on。。。这章详细讲cache的操作过程。 9、详细剖析memory的读操作下面的一系列的演示是在486的基础上,并且L1 read miss的情况下。好,我们来开始:Processor在执行MOV A...

2009-12-14 09:38:00

阅读数 5410

评论数 4

原创 【我所認知的BIOS】-->Cache(2)

 【我所認知的BIOS】-->Cache(2)LightSeed  2009-12-7紧接上一篇,go on。。。5、Level 2 cache5.1 L2的优点(从此节往下,我都是拿486 CPU来做例子说明。)关于L1的介绍,我想就不用多说了,它就是在CPU的内部,比较小的一个cache...

2009-12-07 08:42:00

阅读数 4726

评论数 1

原创 【我所認知的BIOS】-->Cache(1)

【我所認知的BIOS】-->Cache(1)LightSeed  2009-11-12        在文章前面我想说一下,CPU的cache是一个很有趣的部件,对它研究我目前也还仅仅处于486架构上的研究。因为我手上也就只找到了《80486 System Architecture》这本书(...

2009-12-03 13:18:00

阅读数 4815

评论数 2

提示
确定要删除当前文章?
取消 删除