我完全是个初学者。目前,我只是在osdevwiki之后实现了键盘和vga屏幕。现在我想像这样画出合适的像素
void drawPixel(int x, int y, int rgb)
用独立的C语言编写。现在,在vga模式下,打印文本和颜色的地址是0xB8000。要在屏幕上绘制像素,我该怎么做?我一点头绪都没有。
我用下面的代码得到了下面的错误。我试图找出谷歌的问题所在,但我没有找到任何有用的东西。
Compiling /home/tectu/projects/resources/chibios/ext/lcd/touchpad.c
In file included from /home/tectu/projects/resources/chibios/ext/lcd/touchpad.c:1:0:
/home/tectu/projects/resources/chibios/ext/lcd/touchpad.h:17:1: warning: useless type qualifier in empt
这是我的C程序..。我想打印出ESP,EBP和EIP。
#include <stdio.h>
int main() {
register int i asm("esp");
printf("%#010x <= $ESP\n", i);
int a = 1;
int b = 2;
char c[] = "A";
char d[] = "B";
printf("%p d = %s \n", &d, d);
printf(
void task1(void* arg) {
static volatile long res = 1;
for (long i = 0; i < 100000000; ++i) {
res ^= (i + 1) * 3 >> 2;
}
}
4个线程同时工作,在30秒内执行task1 193次。但4个过程同时工作,在30秒内执行task1 348次。为什么会有这么大的差别?我在MacOSX10.7.5,英特尔核心i5 (4个逻辑核)上测试了它。想想看,Windows和Linux的区别是一样的。