摘要:
获取按键编码 当中断程序处理完毕之后需要相8259A发送一个处理完毕的信号,这样8259A才知道中断已经处理完毕,可以接收下一个中断信号了,不然的话,我们的键盘中断一直阻塞在哪里没办法进行处理下一个按键操作。 io_out8(PIC0_OCW2, 0x61);就是为了满足这个操作的。键盘的中断是IR 阅读全文
摘要:
GDT初始化 为了兼容前几代的CPU,所以GDT段描述符看起来有些不规整,让人难以理解,GDT段描述符中存储的内容和第五天讲的一样: 分为开始地址、段大小、段属性。我们实际处理是分割成以下几个部分: 段基址也就是段开始地址被拆成了三部分,段界限也就是段大小被拆成了三部分,剩下的几位就是段属性了。 在 阅读全文
摘要:
结构体 获取启动信息 我们需要获取我们之前使用ashead.asm设置的启动信息,以便于我们之后的开发 这些启动信息我们利用指针,定义指针,根据指针地址就能获取到定义的值,如下所示: char *Scrnx = 0x0ff4; char *Scrny = 0xff6; char *vram = 0x 阅读全文
摘要:
由于TCP协议设计的原因,如果数据量少的话,则会整合多个数据包,然后再一起发送。如下所示, 我们使用一个Socket Client循环发送数据到服务端中,可以看到服务端只接收到一次数据 try { Socket socket = new Socket("127.0.0.1", 9092); Data 阅读全文
摘要:
在 @ServerEndpoint 类中直接使用 @Autowired 注解注入 Spring 管理的 bean 可能不会成功,因为 @ServerEndpoint 并不受 Spring 容器的管理。 通过创建一个静态的成员遍历属性和一个带有 @Autowired 注解的 setter 方法,你可以 阅读全文
摘要:
# 自增id b + 树节点是有序的,所以id最好也是有序的,这样存储数据效率高一点,如果不是递增的,那讲数据存储到数据库中效率较低,还得找树的值,递增的话直接按id插入到树中即可,而乱序则还得找相应的位置才能进行插入。 - 趋势递增:总体来看顺序是递增的。 - 单调递增:下一个一定比上一个大。 - 阅读全文
摘要:
# 联合索引第一个字段如果是范围查询则不会走索引 如果第一个查询条件用范围查询,那么MySQL会以为你查询的表数据比较多,那么它就会进行全表扫描而不进行索引,,但是如果第一个查询条件是主键范围查询的话,它依旧会走索引,不过在开发中应该不需要进行主键范围查询。 主键范围查询 ```SQL EXPLAI 阅读全文
摘要:
# 错误信息 ```bash Error invoking remote method 'docker-start-container': Error: (HTTP code 500) server error - Ports are not available: exposing port TCP 阅读全文
摘要:
用于分析SQL语句的执行效率 直接执行explain SQL语句即可 查询`select * from user`语句的执行效率: ![image](https://img2023.cnblogs.com/blog/1859679/202307/1859679-20230721075344015-1 阅读全文
摘要:
在redis集群中,从节点一般用于备份操作,主节点挂了,从节点顶上去,读写操作一般都是主读主写。 # 主从架构 用处:用于数据备份操作,主节点挂了之后可以有备份节点顶上去当主节点。 缺点:主节点挂了需要手动切换从节点为主节点。 原理: 从客户端首先会请求主节点拉取主节点的所有数据,主节点接收到请求之 阅读全文