- 博客(19)
- 收藏
- 关注
原创 WWrite Zero command
• 若要求将特定范围的逻辑块清零,则后续对该范围内逻辑块及相关元数据(不含保护信息)的成功读取结果,都将返回全零字节数据,此状态将持续至对该逻辑块范围执行新的写入操作;若写入零值命令指定范围内的某个逻辑块未因该命令执行而被回收,则后续对该逻辑块成功读取时返回的保护信息值(如有)应基于该写入零值命令中的CDW12.PRINFO字段生成。对于"写入零值"命令指定范围内的每个逻辑块,若命名空间不支持在逻辑块回收时从该逻辑块及其元数据(不含保护信息)中读取全零字节值,则控制器不得回收该逻辑块。
2025-11-08 09:23:02
442
原创 NVMe 2.1 Spec (3.4.4-3.5.4.1)
b) 如果CAP.CRMS字段被清除为'00b',则主机在控制器使能后(即CC.EN从'0'变为'1')应等待控制器就绪(CSTS.RDY从'0'变为'1')的最长时间由CAP.TO指示;参阅第5.1.25.1.1节。• 若使用基于内存的传输,且该未完成命令通过被删除的I/O提交队列发送,主机收到删除I/O提交队列命令的成功完成状态(参见第3.3.1.3节);b) 如果CAP.CRMS字段设置为01b(即CAP.CRMS.CRIMS位清除为'0'且CAP.CRMS.CRWMS位设置为'1'),
2025-09-15 20:58:54
669
原创 NVMe 2.1 Spec(3.1.3-3.1.3.1)
3:在一个大的存储系统(NVM子系统,比如一个包含多个NVMe硬盘的存储机柜)里,不同的硬盘(控制器)可以有不同的“技能点”。I/O控制器三未挂载任何命名空间。的命令,但不支持访问 NVM 子系统非易失性存储介质中用户数据的 I/O 命令。1:融合操作是将两个独立的命令(如一个“比较”命令和一个“写”命令)组合成一个不可分割的原子操作。控制器可以以任何它认为最优的顺序来处理命令,即使这个顺序与主机将命令放入队列的顺序完全不同。根据控制器类型的不同,控制器还可能支持一个或多个I/O提交队列和I/O完成队列。
2025-09-15 20:26:36
891
原创 vim命令、vim插件安装和git常见命令使用
1.将vim-plugs.tar 拷贝到home目录3.解压文件4.建立链接5.将cscope.sh 拷贝到edk2目录下6.执行cscope.sh(需要安装cscope, ctags)
2023-12-26 15:09:39
890
原创 UEFI的时钟中断
本文主要讲述以下4点: 1:时钟中断的执行过程 2:向时钟中断注册时钟处理函数的过程 3:针对以上两点从源码层面深入分析。 4:总结
2023-09-06 18:32:40
521
1
原创 VIM插件安装(换源)
2:执行vim ~/.vimrc ,然后输入以下代码,其中两个call对应的行中间的部分,即中间的四个是我已经安装的插件,其他的插件安装也是去gitee上搜对应的插件名字,以一样的形式放在两个call所在行的中间。(注意去除中间的空格)。3:输入:wq退出并保存,然后重新执行vim ~/.vimrc,然后输入:PlugInstall,左侧会出现另一栏,如下:证明已经安装成功对应插件。4:~/.vim/plugged,下载的内容都放在这个目录下。0:安装对应插件,网上都有下载连接,也可以用这个下载。
2023-09-05 13:39:52
913
原创 Handle&Protocol
初入UEFI,学习到了Protocol这一节,发现里面的内容很多,记下笔记供后期翻阅。本人水平有限,若有讲述不对的地方请及时指正,谢谢!!!
2023-08-30 19:37:33
235
原创 makefile(只需修改name),其他拿去直接用
CROSS_COMPILE ?= arm-linux-gnueabihf-NAME ?= ledcCC := $(CROSS_COMPILE)gcc #相当于arm-linux-gnueabihf-gccLD := $(CROSS_COMPILE)ldOBJCOPY := $(CROSS_COMPILE)objcopyOBJDUMP := $(CROSS_COMPILE)objdumpOBJS := start.o main.o$...
2021-12-22 11:27:43
191
转载 HC06 ,ZS040 (没有按键的)AT配置相关
学习内容:HC-06步骤一接线:HC-06的Rx和Tx 接到 USB转TTL的 Tx和 Rx,VCC接5V,GND接GND步骤二:上电之后灯闪,说明进入了AT指令模式步骤三:打开串口调试器这里使用SSCOM,选择9600波特率(默认),8位数据位,1位结束位,无奇偶校验,然后打开串口步骤四:输入指令AT(注意没有空格也没有回车),然后发送步骤五:修改波特率时输入AT+BAUDx(x为波特率编号),串口助手会返回OKnnnn(nnnn是你设置的波特率)。注意,在这之后若还做其他命令操作
2021-06-10 09:46:04
4482
4
原创 keil简单调试查看数值
1.首先打开一个程序,点击编译按钮。2.然后点击调试按钮,进入调试界面。3.在需要暂停调试的语句旁鼠标右键,添加断点。(注:只有在灰色区域才能添加断点,灰色区域表示有语句部分,其不包括空白行和括号)4.点击运行按钮,程序会运行到断点处(断点行的程序并没有运行)5.右下角有个观察框显示数据值,可以在表达式一栏敲入自己想查看的数据...
2021-05-31 14:54:30
4901
转载 安卓两个坐标系
一Android坐标系:Android坐标系将屏幕的左上角的顶点作为Android坐标系的原点,向右为X轴的正方向,向下是Y轴的正方向。在触控事件中getRawX()和getRawY()获得的坐标也是Android坐标系的坐标。二View坐标系1自身坐标以下方法获得View到父控件的距离getTop() :获取View自身顶边到父布局顶边的距离:getLeft():获取View自身左边到其父布局左边的距离;getRight()...
2021-05-28 09:40:56
183
转载 5.27 View和Viewgroup
1.View与ViewGroupView是Android所有控件的基类,平时用到的textView与ImageView等都是继承View的.而我们平常用的LinearLayout是继承ViewGroup,ViewGroup可以理解为View的组合,它可以包含多个View以及ViewGroup,形成一个树.2.坐标系Android系统中有两种坐标系,分别是Android坐标系与View坐标系.Android坐标系将屏幕左上角的顶点作为Android坐标系的原点,这个原点向右是X轴正方向,向下是Y
2021-05-27 18:27:28
106
转载 5.27 this和super
this通常指当前对象,super则指父类的。当你想要引用当前对象的某种东西,比如当前对象的某个方法,或当前对象的某个成员,你便可以利用this来实现这个目的,当然,this的另一个用途是调用当前对象的另一个构造函数,这些马上就要讨论。如果你想引用父类的某种东西,则非 super莫属。在你的方法中的某个形参名与当前对象的某个成员有相同的名字,这时为了不至于混淆,你便需要明确使用this关键字来指明你要使用某个成员,使用方法是“this.成员名”,而不带this的那个便是形参。另外,还可以用“this.方
2021-05-27 17:59:47
97
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅