现代作业系统核心

现代作业系统核心

ID:43227462

大小:598.00 KB

页数:125页

时间:2019-10-05

现代作业系统核心_第1页
现代作业系统核心_第2页
现代作业系统核心_第3页
现代作业系统核心_第4页
现代作业系统核心_第5页
资源描述:

《现代作业系统核心》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、CE6130現代作業系統核心ModernOperatingSystemKernels許富皓1CPreprocessor:StringificationWhenamacroparameterisusedwithaleading#,thepreprocessorreplacesitwiththeliteraltextoftheactualargument,convertedtoastringconstant.Unlikenormalparameterreplacement,theargumentisnotmacro-expandedfirst

2、.Thisiscalledstringification.#defineWARN_IF(EXP)do{if(EXP)fprintf(stderr,"Warning:"#EXP"");}while(0)===============================================WARN_IF(x==0);==>do{if(x==0)fprintf(stderr,"Warning:""x==0""");}while(0);2MultipleKernelModeStacksIfthesizeofthethread

3、_unionstructureis8KB,thekernelmodestackofthecurrentprocessisusedforeverytypeofkernelcontrolpath:exceptions,interrupts,anddeferrablefunctions.Ifthesizeofthethread_unionstructureis4KB,thekernelmakesuseofthreetypesofkernelmodestacks.3ExceptionStackTheexceptionstackisusedwhen

4、handlingexceptions(includingsystemcalls).Thisisthestackcontainedintheper-processthread_uniondatastructure,thusthekernelmakesuseofadifferentexceptionstackforeachprocessinthesystem.4HardIRQStackThehardIRQstackisusedwhenhandlinginterrupts.ThereisonehardIRQstackforeachCPUinth

5、esystem,andeachstackiscontainedinasinglepageframe.Inamultiprocessorsystem,allhardIRQstacksarecontainedinthehardirq_stackarray.5StructureofHardIRQStackstaticcharhardirq_stack[NR_CPUS*THREAD_SIZE]__attribute__((__aligned__(THREAD_SIZE)));element5(THREAD_SIZEbytes)element4(T

6、HREAD_SIZEbytes)element3(THREAD_SIZEbytes)element2(THREAD_SIZEbytes)element1(THREAD_SIZEbytes)Eachhardirq_stackarrayelementisaunionoftypeirq_ctxthatspanasinglepage.unionirq_ctx{structthread_infotinfo;u32stack[THREAD_SIZE/sizeof(u32)];};hardirq_stack6SoftIRQStackThesoftIRQ

7、stackisusedwhenhandlingdeferrablefunctions(softirqsortasklets).ThereisonesoftIRQstackforeachCPUinthesystem,andeachstackiscontainedinasinglepageframe.AllsoftIRQstacksarecontainedinthesoftirq_stackarray.7StructureofSoftIRQStackstaticcharsoftirq_stack[NR_CPUS*THREAD_SIZE]__a

8、ttribute__((__aligned__(THREAD_SIZE)));Eachsoftirq_stackarrayelementisaunionoftypeirq_ctxthatspa

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。