Background:

1.如果开机时遇到如Hangup/花屏等棘手的问题,需要Intel协助,Intel都会要求用DCI抓取开机日志,其中包含CSME/Bios/PMC等部件的输出,Intel基于此定位问题。

2.去年11月参加了格蠹科技的DCI培训,正好缺这部分内容,打算用本文做补充。

Limition&Notice:

培训结束后,我手残把GDK7 bios下"DCI debug"设置错了,导致再也没法用GDK7自带的USB3.0 cable(准确的说是DCI-USB2/DCI-USB3 cable)调试GDK7了。

作为替代,我基于Intel TigerLake CPU,使用DCI OOB (俗称小蓝盒CCA,见下图)完成整个Trace过程

因此本文有下列限制:

1.工作缘故,我可以手动修改DCI,然后使用CCA盒子调试公司的主板。但对于市场上其他PC,只有格蠹科技的GDK7可以打开DCI,且支持DCI-USB3 cable调试(不得不说张银奎老师路子很广)。所以如果读者手上有GDK7,千万不要手残把Bios设置改了(Load Default也改不回去!!!)

2.用DCI-USB3 cable Trace开机过程时,可能无法抓取完整的CSME消息(如果读者的GDK7+DCI-USB3可以,请留言,容我改正)

3.CCA功能强大,仅售价$390,是不是有立即加入购物车的冲动?别想了,Intel只卖给Partner...

Body:

1.在Target和Host间建立DCI连接。具体步骤可以参考:GDK7+NanoCode调试学习系列6--Intel System Studio(ISS)搭建环境调试GDK7

连接建立后,不同配置的机器,在ISS中显示的CPU/PCH架构不同(我的调试目标是TigerLake CPU,GDK7是KabyLake CPU):

2.创建"Trace Project"

2.1.切换到"Trace System Perspective":Tools--"System Debugger NDA"--"Open System  Debugger -Trace System Perspective"

2.2.创建Trace Project:"Project Explorer"--点击"Create a project"新建Trace工程

2.3.加载Trace Hub Decode file:

开机过程中CSME的输出,需要通过"ME Trace Hub Decode file"解码,否则将在System Debugger的Message Viewer窗口中显示"Unknown"。读者可以从Intel下载并加载Target的ME VersionNumber Trace Hub Decode file(下载需要Intel账号,如果没有账号,可以参考后记a)。TigerLake使用的ME主版本号是15,GDK7(KabyLake平台)使用的ME主版本号是12。因此,我下载的Decode file是ME15 Trace Hub Decode,如下图:

加载方式如下:"Window"--"Show View"--"System Trace Extensions"打开"System Trace Extensions"窗口:

点击Import System Trace Extensions按钮,加载下载的Decode file。

2.4.开始Trace GDK7开机过程:

打开"Trace Capture"窗口:"Window"--"Show View"--"Trace Capture":

点击Trace Capture窗口中Start按钮(Begin capturing trace data from target),将打开Message View窗口,重启Target开始捕捉DCI trace log(GDK7):

捕捉完毕,可以输入关键字过滤信息:

如搜索CSME信息:

如搜索BIOS信息:

2.5.导出Trace session:

获得DCI trace log后,点击"Project Explorer"--Session--"Export Trace Session",可以导出Trace session:

导出后,最终生成如下文件:

将此文件发给Intel,请Intel工程师协助分析开机过程。

Postscript:

文中提到:

a.System Debugger中"Message Veiw"中CSME source输出的内容需要使用Intel Trace Hub Decode file解析;

b.CSME输出的含义,需要参考Intel Management Engine(Intel ME) spec;

虽然,以上2类文件是Intel只对Partner提供,但是去年7月网上泄露的33G intel机密文档中包含有该文档(泄露的文档主要是Skylake/KabyLake CPU架构相关,而GDK7正好是KabyLake CPU架构),因此读者可以在网上自行搜索。

使用Intel DCI/Inte System Debugger跟踪主机启动过程 中CSME/Bios信息相关推荐

  1. Linux X Window System运行原理和启动过程

    本文主要说明X Window System的基本运行原理,其启动过程,及常见的跨网络运行X Window System. 一) 基本运行原理 X Window System采用C/S结构,但和我们常见 ...

  2. java ui调试_如何使用 IBM i System Debugger 调试 Java 程序

    当在 IBM i 上使用 Java 时,您可以使用 Qshell Interpreter 或者 CL 命令提供的 Java tools,在 Qshell 环境和 IBM i 环境上进行与 Java 开 ...

  3. 什么是Linux系统调用system call?(Linux内核中设置的一组用于实现各种系统功能的子程序)(区别于标准C库函数调用)核心态和用户态的概念、中断的概念、系统调用号、系统调用表

    文章目录 什么是系统调用? 为什么要用系统调用? 系统调用是怎么工作的? 如何使用系统调用? _syscall*()是什么? errno是什么? 调用性能问题 Linux系统调用列表 进程控制 文件系 ...

  4. Java 虚拟主机装载过程

    Java 虚拟主机装载过程 简述     众所周知java.exe是java class文件的执行程序,但实际上java.exe程序只是一个执行的外壳,它会装载jvm.dll(windows下,下皆以 ...

  5. Linux查看主机名、系统安装版本等信息

    Linux查看主机名.系统安装版本等信息 一.hostnamectl查看主机名 1.1 查看主机名 1.2 临时设置主机名 1.3 手动修改文件 1.4 命令行永久修改 1.5 重启hostname服 ...

  6. 【PFC】PFC使能 H3C交换机设置和主机设置--编辑中

    目录 交换机设置 主机设置 mellonx网卡(驱动) 配置简述 H3C交换机设置 主机设置 mellonx RDMA网卡 intel RDMA网卡 PFC和ECN 流量标记设置 本文原始连接:[PF ...

  7. 黄聪:穿过主机访问虚拟机中的SQL服务 FOR VMware NAT

    一般来说,大家都会在主机或者虚拟机中安装SQL+IIS,但假如主机的IIS想利用虚拟机中的SQL服务怎么办呢? 以我的电脑为例子,主机系统:Windows 7 7600 RTM X64,安装IIS 7 ...

  8. 如何将struct System.Byte byte []转换为C#中的System.IO.Stream对象?

    如何将struct System.Byte byte[]转换为C#中的System.IO.Stream对象? #1楼 查看MemoryStream类. #2楼 您正在寻找MemoryStream.Wr ...

  9. 【Android 逆向】Android 进程注入工具开发 ( 注入代码分析 | 获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 )

    文章目录 一.获取 远程 目标进程 中的 /system/lib/libc.so 动态库中的 mmap 函数地址 二.从 /proc/pid/maps 文件中获取 指定 进程 中的 /system/l ...

最新文章

  1. InputStream OutputStream 傻傻分不清
  2. wx.navigateTo跳转首页无效
  3. 她半年内举报了755篇问题论文,专挑中国“下手”?还牵扯到北大副校长.........
  4. 枚举windows进程
  5. [归并排序] 二路归并排序
  6. OpenCV 之 角点检测
  7. 世界知名游戏公司简介(国内,欧美,日韩)
  8. Android 的媒体路由功能应用与框架解析
  9. MySQL----数据库概念及数据模型
  10. 有效扩展:来自预训练和微调变换器的见解、rct.ai训练出5亿参数的BERT-X模型
  11. Python的namedtuple使用详解
  12. java计算机毕业设计计算机专业招聘网站源码+mysql数据库+系统+lw文档+部署
  13. Only Train Once!微软浙大提出剪枝新框架OTO:无需微调即可获得轻量级架构!
  14. ICCV 2021 最新200篇ICCV2021论文分方向汇总
  15. 十条服务器端优化Web性能的技巧
  16. python包怎么做双重差分did分析_【研究方法】双重差分法(DID)介绍
  17. 写给《中国品牌日》:梦想不远 未来可期 为每一个农业品牌人鼓掌
  18. 手机中即将大行其道的Flash Lite.
  19. 百度智能云数据众包,更安全、更优质的数据能力,打造自动驾驶超智“双眼”...
  20. 德扑入门、进阶读物推荐 - 《德州扑克小绿皮书》

热门文章

  1. 网页挂马的原理和实现方式
  2. 苹果系统模拟器_开发者成功在苹果MacBook上通过模拟器正常运行Windows 10X版
  3. 三种方法实现选择问题
  4. 防360屏蔽办法 代码一
  5. jsp做的留言系统(防止非法登录、增删改查留言)
  6. SQL创建用户、创建表
  7. 如何去学习PMP考试的《PMBOK》
  8. html中如何写div中div的位置,position设置div的位置
  9. python使用代理爬虫_python使用代理爬虫导致无法访问网页
  10. 求绝对值指针c语言,C语言实现abs和fabs绝对值