第11章:进入保护模式 描述符格式: 高32位 31 24 23 22 21 20 1916 15 1413 12 11 8 7 0 段基地址 24-31(8bit) G D/B L AVL 段界限(19-16 = 4bit = 1个16位) p DPL S TYPE 段基地址 23-16(8bit) 低32位: 2020-05-04 X86实模式和保护模式
IA-32架构 (Intel Architecture 32-bit)概览 和 8086小总结 IA-32架构 (Intel Architecture 32-bit)概览 和 8086小总结寄存器8086 8个通用寄存器 AX BX CX DX SI DI BP SP 32bit处理器在此通用寄存器扩展到32bit EAX EBX ECX EDX ESI EDI EBP ESP 实模式下也可以使用,但是32bit寄存器的高16位不可独立使用 32bit处理器拥有自己的工作模式:保 2020-05-01 X86实模式和保护模式
.vhd虚拟磁盘bochsdebug启动报错:ata0-0: could not open hard drive image file .vhd虚拟硬盘用于bochs启动 软开实验修改硬盘类型为flat模式,不是VPC 2020-04-27 X86实模式和保护模式
《X86汇编语言:从实模式到保护模式》检测点4.2报错:FATAL:Could not read from the boot medium!System halted <x86汇编语言:从实模式到保护模式>检测点4.2报错:FATAL:Could not read from the boot medium!System halted 已经有虚拟磁盘文件并且启动顺序是第一, 错误原因: 有效的主引导扇区的最后2个字节应当是0x55和0xaa 12345678910111213141516171819mov ax,0xb800mov ds,axm 2020-04-27 X86实模式和保护模式
AIO小实例 使用同步IO和异步IO(熟悉AIO接口)的对比 来自apue 要求: 将文本的英文字符a-z和A-Zx向右偏移13个字母(不重要),命令行传入输入和输出文件路径 完成相同的事情,同步IO和异步IO的对比 同步IO 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474 2020-03-24 Linux学习 linux unix
Debian下cpupower设置记录 Linux内核调频知识 链接 查看当前cpu调度器 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor查看cpu支持调度 cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors 查看当前cpu频率 cat /proc/cpuinfo | 2020-03-17 Linux学习
apue中多文件makefile关于err_等函数重定义报错 apue中多文件makefile关于err_*等函数重定义报错原因: 守护进程这一章中多个.c文件编译,然后在模块a编译成功后,另一个模块编译报错,本书作者写的所有err_函数都报错,表明第一次定义在a,然后现在又重定义 首先以为是apue.h关于条件编译之类的错误(#ifndef #endif),于是无论如何修改头文件组织方法都不正确,(我忽略了编译器的报错是关于error函数的,我本来应 2020-03-15 Linux学习 unix
pthread_mutex_t的robust属性 mutex的robust属性 健壮属性与多个进程间共享互斥量有关 使用背景多进程共享数据块同步时,持有互斥量的进程终止时,那么其他进程会一直阻塞下去(死锁),通过robust解决进程间一个mutex导致死锁的问题 1234// 获取\设置robust属性pthread_mutexattr_getrobust(const pthread_mutexattr_t *restrict attr, 2020-03-09 Linux学习 linux
深入理解条件变量(虚假唤醒) 深入条件变量pthread_cond_wait()和pthread_cond_signal()的伪实现 1234567891011121314151617181920212223242526272829303132333435pthread_cond_wait(mutex,cond) { // 保存条件变量的值 value = cond->value; // 解锁传入的已经锁住 2020-03-06 Linux学习
使用mutex和条件变量对比 使用mutex和条件变量对比 问题 学生线程写作业,老师线程检查作业。要求:只有学生线程写完作业了,老师线程才能检查作业。 使用mutex 123456789101112131415161718192021222324252627282930313233343536373839404142#include "apue.h" #include <pthread. 2020-03-06 Linux学习 pthread