自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 UEFI启动阶段的SEC

当系统运行在SEC阶段时,仅CPU和CPU内部资源被初始化,各种外部设备和内存都没有被初始化,因而系统需要一些临时的RAM区域,用于代码和数据的存取,我们将之称为临时RAM,以示与内存的区别。最常用的临时RAM就是Cache,当Cache被配置为no-eviction模式时,可以作为内存使用,读命中时返回Cache中的数据,读缺失时不会向主存发出缺失事件;从BFV中找到Sec的镜像;:程序中用到的地址都是真实的物理地址,即程序员可见的地址完全是真实的内存地址,在实模式下所有的段都是可以读、写、可执行的。

2023-09-20 16:35:59 389 2

转载 BIOS工程师的平凡之路

ACPI规范: ACPI Specification 概述(基于ACPI_Spec_6_4_Jan22)_anqi8955的专栏-CSDN博客 ​​​​​​ACPI Specification 第一章 介绍_anqi8955的专栏-CSDN博客 ACPI Specification 第二章 条款的定义_anqi8955的专栏-CSDN博客 ACPI Specification 第三章 AC

2023-09-18 14:51:09 378

原创 UEFI的Handle和Protocol简单理解

3、对Protocol的使用:要使用Protocol服务,首先要根据GUID找到Protocol对象,Boot Service中提供了几种Protocol服务,如下表所示:介绍完了上述几种Protocol服务,接下来我们了解一下使用Protocol服务的几个操作步骤,使用protocol服务的一般有以下三步:第一步:通过gBS->OpenProtocol(或者HandleProtocol、LocateProtocol)找出Protocol的对象。第二步:使用这个Protocol提供的服务。

2023-09-17 15:00:12 671 2

原创 UEFI的UEFI Driver

UEFI Driver是一种特殊类型的驱动程序,用于在计算机启动时加载和初始化硬件设备的软件组件,如显卡、网卡、声卡等。而Driver 是用于控制硬件设备的软件程序,它可以在操作系统中运行,并与操作系统进行交互,以便与硬件设备通信。简单来说,UEFI driver是在计算机启动时加载的,而Driver则是在操作系统中加载的。

2023-09-14 16:13:25 826 1

原创 UEFI/BIOS-----关于ACPI

高级配置和电源管理接口,APCI是一套协议标准,软硬件都需要实现以配合使用。ACPI在BIOS中负责管理计算机的电源状态和配置,支持系统休眠、唤醒等高级电源管理功能G0/G1/G2/G3表示整体的状态,S1/S2/S3/S4/S5表示睡眠状态, C1/C1…/Cn和P0/P1…Px就是Pstates(EIST)和CStates,D0/D1/D2/D3表示不同的设备电源状态。G/C/S等状态,后接的数字越大,系统耗能越少。

2023-09-13 14:39:12 1629 1

原创 UEFI固件存储和Variable

`变量代表内存中具有特定属性的一个存储单元,它用来存放数据,也就是变量的值,在程序运行期间,这些值是可以改变的,在UEFI架构下,Variable是一个由表示信息、属性、和值够成的组合体,类似全局变量。Variable 存储在memory中,或者根据 属性存储在flash当值Variable Services是Runtime Services的一部分,提供关于Variable的一些服务,Variable被定义为键值对,由标识信息加上属性(键)和任意数据(值)组成。

2023-09-01 16:02:37 583

原创 指针问题集合

指针在C语言中是很重要的内容,也是比较难理解的内容,需要我们反复巩固才能可以对其有所理解,在刷题过程中,遇到了各式各样的指针的问题,这里进行总结。指针的基础就不普及了,直接上坑。

2023-09-01 10:31:05 93

转载 C++的构造函数

类和对象是 C++ 的重要特性,它们使得 C++ 成为面向对象的编程语言,可以用来开发中大型项目,本节重点讲解类和对象的语法,如果你对它们的概念还不了解,请先阅读《C++类和对象的概念》。类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量;创建对象的过程也叫类的实例化。每个对象都是类的一个具体实例(Instance),拥有类的成员变量和成员函数。有些教程将类的成员变量称为...

2019-04-07 17:14:00 135

原创 关于多态的概念以及用途的简单理解(通俗易懂)

多态的定义和一些理解:(1)派生类对象的地址可以赋值给基类指针。对于通过基类指针调用基类和派生类中都有的同名、同参数表的虚函数的语句,编译时并不确定要执行的是基类还是派生类的虚函数;而当程序运行到该语句时,如果基类指针指向的是一个基类对象,则基类的虚函数被调用,如果基类指针指向的是一个派生类对象,则派生类的虚函数被调用。这种机制就叫作“多态(polymorphism)”。(2)所谓“虚函数”,...

2019-04-07 13:18:18 2642 1

原创 什么是线程?

一、线程的基本概念1、什么是线程:程序中负责执行的哪个东东就叫做线程(执行路线,进程内部的执行序列),或者说是进程的子任务。2、线程与进程的区别进程是一个资源单位,而线程是它的一部分。线程它是轻量级的(只有栈),没有自己独立的内核资源、共享进程的代码段、数据段、堆、环境变量表、命令行参数、文件描述符、信号处理方式、当前工作目标、用户ID、组ID等资源,除了栈,其它都共享进程的。3、一个进...

2019-03-28 10:02:31 19079 1

原创 计算机网络之TCP,UDP

一、计算机网络1、什么是计算机网络把分布在不同位置上的计算机(PC、手机、可穿戴设备)与专门的网络设备(交换机、路由器等)用通信线程连接成一个规模大、功能强的系统,从而使用众多计算机可以方便的互相传递数据,共享软件、硬件、数据信息等。简单来说,计算机网络就是由通信线路互相连接的众多自动工作的计算机构成的集合,它是计算机技术与通信技术相结合的产物。世界第一个计算机网络叫arpanet,是苏美...

2019-03-28 10:00:51 274

转载 c++引用及常引用

一、变量的引用:引用:就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。引用的声明方法:类型标识符 &引用名=目标变量名;例:char ch; char &rp=ch;1)引用仅是变量的别名,而不是实实在在地定义了一个变量,因此引用本身并不占用内存,而是和目标变量共同指向目标变量的内存地址.2)表达式中的取地址符&不再是取变量的地址,而...

2019-03-26 10:06:14 1004

原创 初步认识C++

(一)C++语言的历史C++语言是c语言的继承,它既可以进行c语言的过程化程序设计,又可以进行以抽象1数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。C++不仅拥有计算机高效运行的使用性特性,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描...

2019-02-25 20:42:53 238

转载 双向指针的问题资料

什么是双向指针二级指针又叫双指针。C语言中不存在引用,所以当你试图改变一个指针的值的时候必须使用二级指针。C++中可以使用引用类型来实现。下面讲解C中的二级指针的使用方法。例如我们使用指针来交换两个整型变量的值。错误代码如下:一级指针[cpp] view plaincopyprint?#include <stdio.h> void swap(int *a,int *...

2019-01-07 09:56:26 382

原创 什么是指针?

指针的相关知识点整理什么是指针,指针的基本定义:指针是一种数据类型(代表内存地址的整数),使用它定义的变量叫指针变量。指针也是变量,所以也是用于存储 一个值。重点是,它储存的这个值,意义有点特别。指针储存的不是普通的一个值,而是另外一个变量的地址。一句话:指针是一种用于存储“另外一个变量的地址”的变量。或者拆成两句:指针是一个变量,它的值是另外一个变量的地址。为什么使用指针:1、函数之间无...

2019-01-06 20:46:50 1381 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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