友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

深入浅出MFC第2版(PDF格式)-第247章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






                                                                                               7                   FOO。DLL 



                                                pNextModRef                                    8 

                                                      9          (index into module table) 

                                                    ppdb                                       9                   BAR。DLL 



                                                 MODREF list 

                                      (MY。EXE uses KERNEL32 and BAR。DLL) 



                                     图14…1 进程 (PDB ) 透过 「MODREF 串行」连接到其所使用的所有模块 



                  执行线程优先权 (Priority) 



                        我想我们现在已经能够用很具体的形象去看所谓的进程、模块、执行线程了。「执行事实」 



                        发生在执行线程身上,而不在进程身上。也就是说,CPU 排程单位是执行线程而非进程。排 



                        程器据以排序的,是每个执行线程的优先权。 



                        优先权的设定分为两个阶段。我已经在第1章介绍过。执行线程的「父亲大人」(进程) 



748 


…………………………………………………………Page 811……………………………………………………………

                                                                   14       MFC  

                                                                第 章              多緒程式設計 



拥有所谓的优先权等级(priority class ,图1…7),可以在CreateProcess 的参数中设定。 



执行线程基本上继承自其「父亲大人」的优先权等级,然后再加上CreateThread 参数中的 



微调差额(…2~+2 )。获得的结果(图1…8)便是执行线程的所谓base priority ,范围从0~31 



数值愈高优先权愈高。::SetThreadPriority 是调整优先权的工具,它所指定的也是微调差 



额(…2~+2 )。 



 IMTE 結構                                                        Module Database (MDB) 

   00h DWORD             un1                                     IMAGE_NT_HEADERS : 

                                                                   DWORD Signature 

   04h PIMAGE_NT_HEADERS pNTHdr                                  IMAGE_FILE_HEADER FileHeader : 

   08h DWORD             un2                                       WORD    Machine; 

   0Ch PSTR              pszFileName                               WORD    NumberOfSections; 

   10h PSTR              pszModName                                DWORD   TimeDateStamp; 

   14h WORD              cbFileName                                DWORD   PointerToSymbolTable; 

                                                                   DWORD   NumberOfSymbols; 

   16h WORD              cbModName 

                                                                   WORD    SizeOfOptionalHeader; 

   18h DWORD             un3                                       WORD    Characteristics; 

   1Ch DWORD             cSections                               IMAGE_OPTIONAL_HEADER OptionalHeader : 

   20h DWORD             un5                                       WORD    Magic; 

   24h DWORD             baseAddress/Module Handle                 BYTE    MajorLinkerVersion; 

                                                                   BYTE    MinorLinkerVersion; 

   28h WORD              hModule16 

                                                                   DWORD   SizeOfCode; 

   2Ah WORD              cUsage                                    DWORD   SizeOfInitializedData; 

   2Ch DWORD             un7                                       DWORD   SizeOfUninitializedData; 

   30h PSTR              pszFileName2                              DWORD   AddressOfEntryPoint; 

   34h WORD              cbFileName2                               DWORD   BaseOfCode; 

                                                                   DWORD   BaseOfData; 

   36h DWORD             pszModName2 

                                                                   DWORD   ImageBase; 

   3Ah WORD              cbModName2                                DWORD   SectionAlignment; 

                                                                   DWORD   FileAlignment; 

                                                                   WORD    MajorOperatingSystemVersion; 

                                                                   WORD    MinorOperatingSystemVersion; 

                                                                   WORD    MajorImageVersion; 

                                                                   WORD    MinorImageVersion; 

                                                                   WORD    MajorSubsystemVersion; 

                                                                   WORD    MinorSubsystemVersion; 

                                                                   DWORD   Reserved1; 

                                                                   DWORD   SizeOfImage; 

                                                                   DWORD   SizeOfHeaders; 

                                                                   DWORD   CheckSum; 

                                                                   WORD    Subsystem; 

                                                                   WORD    DllCharacteristics; 

                                                                   DWORD   SizeOfStackReserve; 

                                                                   DWORD   SizeOfStackmit; 

                                                                   DWORD   SizeOfHeapReserve; 

                                                                   DWORD   SizeOfHeapmit; 

                                                                   DWORD   LoaderFlags; 

                                                                   DWORD   NumberOfRvaAndSizes; 

                                                                   IMAGE_DATA_DIRECTORY   DataDirectory'16' 

                                                                                       // 指向各个sections, 

                                   
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!