据我了解,BSP(板级支持包)包含引导加载程序,内核和设备驱动程序,可帮助操作系统在HW上工作.但我很困惑,因为操作系统还包含一个内核.那么OS中的内核和BSP中的内核有什么区别?
在我的程序中,我声明了一个初始化的全局变量(作为数组).但它只影响可执行文件的大小,程序的内存使用量不受影响.
我的程序就是这样
char arr[1014*1024*100] = {1};
int _tmain(int argc, _TCHAR* argv[])
{
while (true)
{
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
可执行文件的大小为118MB,但运行程序时的内存使用量仅为0.3MB
有人能为我解释一下吗?
我试着比较switch语句和查找表的性能如下.
这是使用switch语句的代码
#include <stdio.h>
int main()
{
int n = 3;
for (long i = 0; i < 10000000; ++i) {
switch (n) {
case 0:
printf("Alpha");
break;
case 1:
printf("Beta");
break;
case 2:
printf("Gamma");
break;
case 3:
printf("Delta");
break;
default:
break;
}
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
以下是使用查找表的代码:
#include <stdio.h>
static char const * const Greek[4] = {
"Alpha",
"Beta",
"Gamma",
"Delta"
};
int main()
{
int n = 3;
for (long i = 0; i …Run Code Online (Sandbox Code Playgroud)