共 32 篇文章
显示摘要每页显示  条
[cpp] view plain copy #define SCALE_PRIO(x, prio) \ max(x * (MAX_PRIO - prio) / (MAX_USER_PRIO/2), MIN_TIMESLICE) static unsigned int task_timeslice(task_t *p) { if (p->static_prio < NICE_TO_PRIO(0)) return SCALE_PRIO(DEF_TIMESLICE*4, p->static_prio);if (prio < MAX_RT_PRIO) ...
runqueue里,有几个成员是prio_array类型,这个东东就是优先队列,先看看它的定义:[cpp] view plain copy struct prio_array { unsigned int nr_active; 表示等待执行的进程总数 unsigned long bitmap[BITMAP_SIZE]; 一个unsigned long在内核中只有32位哈,大家要跟64位OS上的C程序中的long区分开,那个是64位的。好,优先级...
这点很好理解,cpu1无事可作了,这时在cpu1上会调用load_balance,发现在cpu0上还有许多进程等待运行,那么它会从cpu0上的可运行进程里找到优先级最高的进程,拿到自己的runqueue里开始执行。例如,cpu0上一直有10个可运行进程,cpu1上一直有1个可运行进程,显然,cpu0上的进程们得到了不公平的对待,它们拿到cpu的时间要小得多,第1种情形下的...
每一个节有一个虚地址(VMA)和一个载入地址(LMA);跟在关键字‘AT’后面的表达式LMA指定节的载入地址。或者,通过`AT>LMA_REGION''表达式,你可以为节的载入地址指定一个内存区域。比如,下面的连接脚本创建了三个输出节:一个叫做‘.text’从地址‘0x1000’处开始,一个叫‘.mdata’,尽管它的VMA是''0x2000''...
对于这些目标文件格式,‘CONSTRUCTORS’命令告诉连接器把构造函数信息放到‘CONSTRUCTORS’命令出现的那个输出节中。对于像‘COFF’或‘ELF’这样支持专有节名的目标文件格式,GNU C++通常会把全局构造函数与析构函数的地址值放到''.ctors''和''.dtors''节中。当使用''.ctors''和''d...
对于普通符号,需要一个特殊的标识, 因为在很多目标格式中, 普通符号没有一个特定的输入节. 连接器会把普通符号处理成好像它们在一个叫做''COMMON''的节中.比如,MIPS ELF目标文件格式区分标准普通符号和小普通符号。从文件''foo.o''中来的所有节''.input2''全部放入到输出节''outputb...
输入节描述是最基本的连接脚本操作. 你使用输出节来告诉连接器在内存中如何布局你的程序. 你使用输入节来告诉连接器如何把输入文件映射到你的内存中.这个例子显示了通配符是如何被用来区分文件的. 这个连接脚本指示连接器把所有的''.text''节放到''.text''中, 把所有的''.bss''节放到'...
ld链接脚本文件解析之三.在某些情况下, 一个符号被引用到的时候只在连接脚本中定义,而不在任何一个被连接进来的目标文件中定义. 这种做法是比较明智的. 比如, 传统的连接器定义了一个符号''etext''. 但是, ANSI C需要用户能够把''etext''作为一个函数使用而不会产生错误. ''PROVIDE''关键字可...
除了FILENAME会成为第一个被连接的输入文件, ''STARTUP''命令跟''INPUT''命令完全相似, 就象这个文件是在命令行上第一个被指定的文件一样. 如果在一个系统中, 入口点总是存在于第一个文件中,那。''TARGET''命令在读取输入文件时命名BFD格式. 它会影响到后来的''INPUT''和'...
int max(int val1, int val2){extern int max(int val1, int val2);可见无论是静态库(libcmp.a)还是动态库(libcmp.so)还是可执行文件(test),去掉一些符号信息后都减小了很多,但如果这时再链接这两个库的话是编不过的,因此,如果不是指定特殊的strip选项的话,还是尽量不要对库文件strip,只对链接后的可执行文件strip就可以了(如果也不调试)...
帮助 | 留言交流 | 联系我们 | 服务条款 | 下载网文摘手 | 下载手机客户端
北京六智信息技术股份有限公司 Copyright© 2005-2024 360doc.com , All Rights Reserved
京ICP证090625号 京ICP备05038915号 京网文[2016]6433-853号 京公网安备11010502030377号
返回
顶部