博客专栏  >  综合   >  开源BIOS项目coreboot学习笔记

开源BIOS项目coreboot学习笔记

LInux系统开源BIOS项目coreboot的学习笔记

关注
1 已关注
19篇博文
  • coreboot学习10:coreboot第一阶段学习小结

    时间过得真快,从今年2月份开始到4月份,断断续续地摸索coreboot的源码。限于精力但又不想让人误以为笔者是个容易放弃的人,只好匆匆将前面所做的工作称为第一阶段,用时髦的话,也叫一期工程。此文做些阶...

    2016-04-04 21:51
    875
  • coreboot学习9:ramstage阶段之设备初始化流程

    本文对ramstage阶段的设备初始化过程进行跟踪。设备初始化是在dev_initialize函数中完成的,代码如下:

    2016-04-04 15:36
    436
  • coreboot学习8:ramstage阶段之资源分配流程

    设备枚举后就是资源分配了,在dev_configure函数中完成,代码如下:

    2016-04-04 13:10
    484
  • coreboot学习7:ramstage阶段之设备枚举流程

    本文主要针对ramstage阶段的设备枚举的过程进行分析。限于精力,就直接使用qemu-i440fx作为分析,baytrail就免了吧。

    2016-04-03 09:43
    381
  • coreboot学习6:ramstage阶段之芯片初始化流程

    从本文开始,就根据前文给出的ramstage的主干线索分析每个小阶段执行的过程。依然以qemu-i440fx为主做分析——因为当前条件只有这个“主板”才能在通过打印跟踪其过程。另外,也会列出baytr...

    2016-03-19 23:00
    385
  • coreboot学习5:启动流程跟踪之ramstage阶段主干分析

    ramstage阶段涉及比较多的操作,比如枚举板子上的外围设备,分配资源(PCI),使能设备。本文根据该阶段的主干函数流程做分析,细节方面不涉及。理顺这个主干,从全局上把控大致流程。

    2016-03-16 22:12
    576
  • coreboot学习4:启动流程跟踪之romstage阶段

    romstage是coreboot的第二个执行阶段。本文分别介绍基于qemu模拟环境的x86的跟踪,以及基于Intel baytrail平台的跟踪。

    2016-03-15 22:23
    566
  • coreboot学习3:启动流程跟踪之bootblock阶段

    coreboot的第一个启动阶段为bootblock。该阶段均使用汇编语言编写。下面根据执行文件顺序介绍。

    2016-03-14 21:53
    618
  • coreboot学习2:项目源码的初步了解

    本文主要介绍coreboot源码的目录结构和其它一些东西。

    2016-03-13 20:58
    883
  • coreboot学习1:编译并使用qemu模拟

    对于一种新东西的学习,如果有看得到、摸得着的演示,比单纯看理论知道更容易理解。在未对coreboot进行代码级别分析之前,用一个实例来看看coreboot到底长什么样子。 本文讲述如何在linux环境...

    2016-03-11 23:31
    898
  • coreboot学习0:二度相逢是初识

    第一次听到coreboot是在大约一年半多以前,当时因为工作需要进行x86的底层开发,无意中接触到coreboot项目。现在再次对其进行学习。一来让自己也学习一下x86的BIOS开发,二来算对微机原理...

    2016-03-10 21:51
    678
  • BIOS调查笔记

    本文简单整理一下BIOS厂商分类,以及BIOS替换者UEFI。还涉及到一些开源的BIOS项目介绍。大部资料均来自互联网。 BIOS是英文"Basic Input Output System"的缩略词,...

    2016-03-09 22:14
    348
  • linux C语言调用Intel处理器CPUID指令的实例

    在之前编写的文章,简单讲了一下CPUID指令,通过该指令可以获取很多和处理器相关的信息,如处理器的系列、型号、内存地址是多少位,等等。本文将使用C语言内嵌汇编的手段使用CPUID指令,进而在高级语言层...

    2016-03-07 21:22
    1222
  • Intel处理器MSR学习

    Intel IA32软件开发者手册第3卷第35章中介绍了MSR。但是,该章节并没有十分详细地描述,基本上就给出一个地址并作简单说明。而网络上能搜索到文章,也是点到即止。本文结合IA32开发手册,以及c...

    2016-02-25 22:49
    1292
  • Intel处理器CPUID指令学习

    前文《Intel处理器Family、Model、Stepping等的学习》只是简单讲了CPU的标识等内容(仅针对Intel,本文也是),但其读取方法未涉及。本文就此未完事宜来了解读取的方法:使用CPU...

    2016-02-22 22:22
    1185
  • GNU C内嵌汇编学习笔记

    前文所述,只是针对汇编格式的整理,本文将使用coreboot项目代码对其进行实例化。以方便、清晰了解到如何在C语言里使用内嵌汇编的方法。同样地,网络上也有众多文章涉及到这方面,所以本文更多是归纳总结。...

    2016-02-17 19:00
    550
  • Intel处理器Family、Model、Stepping等的学习

    本文主要介绍在Linux系统中查看本机CPU信息方法,接着针对intel的x86处理器标识进行概括性描述,包括CPU ID、vendor、Family、Model、Stepping等。这些信息主要来自...

    2016-02-17 22:41
    1765
  • AT&T格式汇编学习

    Linux内核代码大量使用内嵌汇编,以进行某些特定功能的实现,或对某功能进行快速实现。使用的汇编格式为AT&T,本文就该种格式的汇编和Intel格式的汇编进行讲述。网络上也有众多文章涉及到这方面,所以...

    2016-02-16 21:19
    479
  • Intel X86 CPU寄存器学习笔记

    本文对Intel CPU寄存器做一些浅显的介绍。Intel处理器寄存器在很多教科书上有,网络也有很多文章涉及到。因此本文在这些基础上做一些归纳总结,另外也参考了Intel IA32架构软件开发手册。

    2016-02-16 20:35
    814
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部