hlt实现对CPU占用率的影响惊人

第三天继续学习harib00j,看到川合秀实老师说:“现在还不能说‘今天就到此结束’”。借着月光,我把hlt实现出来,看到qemu显示出来的漆黑窗口,自制操作系统的成就感油然而生。
对比了一下hlt实现前后的CPU占用率,着实让我吃了一惊:

halt实现前CPU占用(qemu):12%
halt实现后CPU占用(qemu):0%

看来程序的好坏真是由程序员决定的!

上代码:
在naskfunc.nas汇编程序中实现io_hlt()功能:
E:\techdoc\30dayOS\code\tolset\day03_boyJ\naskfunc.nas

; naskfunc
; TAB=4
[FORMAT "WCOFF"] ; 制作目标文件的模式
[BITS 32] ; 制作32位模式用的机器语言

[FILE "naskfunc.nas"] ; 源文件名信息
	GLOBAL _io_hlt ; 程序中包含的函数名

;以下是实际的函数
[SECTION .text] ; 目标文件中写了这些之后再写程序

_io_hlt: ; void io_hlt(void);
	HLT
	RET

在bootpack.c中进行io_hlt()调用:
E:\techdoc\30dayOS\code\tolset\day03_boyJ\bootpack.c

void io_hlt(void);
void HariMain(void)
{
	fin:
		io_hlt();
		goto fin;
}

最后上运行截屏,请各位看官鉴别真伪:
hlt实现对CPU占用率的影响惊人_第1张图片
运行day03_boyI,halt实现前CPU占用(qemu):12%

hlt实现对CPU占用率的影响惊人_第2张图片
运行day03_boyJ,halt实现后CPU占用(qemu):0%

(全文完)

你可能感兴趣的:(C,C)