如何使用英特尔® 系统调试器在早期启动阶段检查并读取开机自检编码

1. 背景 

   在借助英特尔平台开发系统过程中,您可能会面临系统甚至在启动的初始阶段也无法启动的问题。 为了确定问题,您连接 JTAG 并使用英特尔系统调试器 (R) 进行源代码行调试。 不过,如果没有源代码或 BIOS 或固件的符号文件,那么你不能做源代码行调试。 在这种情况下,您可以在遇到困难时获得开机自检编码,您将开机自检编码发送到 BIOS/固件团队。 其次,如果问题只在运行时发生,这意味着当您运行时,没有发生任何问题或只是偶发性问题,那么您需要在问题发生之前,检查开机自检编码作为软件的检查点,然后就可以猜问题点了。 最后,如果您有关于开机自检编码的信息,但没有 BIOS/固件的源代码,那么您可以通过检查开机自检编码来猜引起问题的位置。

    当系统 BIOS 或固件的早期启动阶段中有任何问题时,邮政代码非常有用。 但许多嵌入式系统或封闭机箱没有开机自检编码 LED。 但不要担心;您可以通过 JTAG 和英特尔系统调试器 (R) 来检查开机自检编码。 在文本中,我将解释如何检查英特尔系统调试器 (R) 内的开机自检编码。


2. 开机自检编码

  • Developers
  • Android*
  • Windows*
  • C/C++
  • Intermediate
  • Intel® System Studio Ultimate Edition
  • postcode
  • debugging
  • xdb
  • JTAG
  • Debugging
  • Firmware
  • Detection of Uninitialized Floating-point Variables in Intel® Fortran

    Reading from a variable before it has been written to can result in application errors that are not reproducible and can be difficult to debug, especially for global variables and variables passed as procedure arguments. The Intel® Fortran Compiler version 16 can detect accesses to a wide variety of uninitialized floating-point variables. (The feature is also available in the version 15 compiler, but only for static variables). This is achieved by initializing such floating-point data to a signaling NaN and then trapping the floating-point invalid exception that occurs if the data are used in a floating-point operation before they have been assigned a value by the application.
  • Developers
  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 10
  • Microsoft Windows* 8.x
  • Fortran
  • Intermediate
  • Intel® Parallel Studio XE
  • Intel® Fortran Compiler
  • Uninitialized Memory Access
  • debugging
  • Intel® Edison Native Application Guide


    This document is written for software developers who are developing native software applications with C and C++ on the Intel® Edison Development platform. It covers basic preparation for setting up your host to develop apps for the Intel® Edison Development Board, and provides a sample application for a pedometer.  A pre-configured version of Eclipse can be downloaded from the Intel® IoT Software Downloads page

  • Developers
  • Professional
  • Linux*
  • Yocto Project
  • Internet of Things
  • C/C++
  • Advanced
  • Intermediate
  • Eclipse
  • native
  • toolchain
  • debugging
  • Edison
  • yocto plugin
  • C project
  • pedometer
  • Internet of Things
  • Hydra Incompatibility with Certain gdb* Versions

    There is a known compatibility problem between Hydra and versions 7.2 and 7.3 of the GNU* Debugger (gdb*).  When running Hydra under one of these versions, Hydra will hang.

    Please use a different version of gdb in order to run Hydra under gdb.

    This has only been seen in Linux* at this time.

  • Developers
  • Linux*
  • Beginner
  • Intel® MPI Library
  • debugging
  • GNU* GDB
  • MPI
  • message passing interface
  • hang
  • intel mpi library
  • Message Passing Interface
  • Cluster Computing
  • Discussing Intel's OpenCL With Technical Lead Yariv Aridor - Parallel Programming Talk #117

    Time for another episode of Parallel Programming Talk – This is show #117. We’ll be talking with Intel’s OpenCL Technical Lead Yariv Aridor

    What is Clay thinking about today? Voice Recognition Systems - Watch the video to hear what Clay had to say on the subject.

    The News

    Shake Rattle and Roll Testing: Jinx 1.2 from Corensic

    There is an interesting software test system with very interesting technology and people, that is worth taking a look at IMHO. And today they are announcing JINX 1.2, with the additional of support for AVX among their new features.

    I was a little "slow" in figuring out what all the fuss was about when I first met them more than a year ago. They like to play up their product as "testing" your code by making it "unlucky." Makes for cool marketing and a funny product name.

    Subscribe to debugging