精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

.Net8的AOT引導程序BootStrap

開發 前端
所謂的引導程序,也就是引導被ILC生成的目標文件編譯成可執行文件,然后在相應的平臺上(MacoS/Linux/Win)進行二進制執行。這里以微軟自家的Windows平臺為例來剖析下這段引導程序。

前言

.Net8的本地預編機器碼AOT,它幾乎進行了100%的自舉。微軟為了擺脫C++的鉗制,做了很多努力。也就是代碼幾乎是用C#重寫,包括了虛擬機,GC,內存模型等等。而需要C++做的,也就僅僅是引導程序,本篇通過代碼來看下這段至關重要的引導程序的運作模式。

概括

所謂的引導程序,也就是引導被ILC生成的目標文件編譯成可執行文件,然后在相應的平臺上(MacoS/Linux/Win)進行二進制執行。這里以微軟自家的Windows平臺為例來剖析下這段引導程序。

引導程序分為兩個階段,其一初始化運行時,其二運行托管的Main入口代碼。分別看下,最后就是代碼展示了。

1.實例化運行時

這個很好理解,你如果需要運行.Net程序那么必須有一個運行的環境,第一步就是初始化這個運行環境。它主要包括以下步驟:

一:環境變量的初始化

環境變量的初始化主要是指設置的環境變量,對于GC或者JIT的控制。在這里進行一個初始化和區分。比如開啟了了內存映射的環境變量
DOTNET_EnableWriteXorExecute=1.它就是此時被AOT識別并進行區分。

二:注冊AOT的模塊

AOT程序需要用到哪些模塊,比如

Runtime.WorkstationGC.lib
System.Globalization.Native.Aot.lib
System.IO.Compression.Native.Aot.lib
eventpipe-disabled.lib
Runtime.VxsortDisabled.lib

等一些模塊需要用到,那么這里進行注冊下,以便后續調用。

三:模塊的初始化

這里的模塊初始化實際上,R2R的部分預編譯函數替代。

2.托管的Main入口

.Net里面托管的Main函數是一切托管函數的入口點,所以托管Main入口是必須設置正確,并且能夠運行完整托管代碼。本例展示的托管Main如下:

static void Main()
{
   Program pm=new Program();
   pm = null;
   GC.Collect();
   Console.WriteLine("This is Ce Shi");
   Console.ReadLine();
}

3.代碼展示

上面只是一些概念,具體的行為落實,還得代碼來。這里看下BootStrap引導程序的代碼。

一:節操作:

節存變量

主要是在初始化運行時的模塊初始化階段需要用到

#pragma section(".modules$A", read)
#pragma section(".modules$Z", read)
extern "C" __declspec(allocate(".modules$A")) void* __modules_a[];
extern "C" __declspec(allocate(".modules$Z")) void* __modules_z[];
__declspec(allocate(".modules$A")) void* __modules_a[] = { nullptr };
__declspec(allocate(".modules$Z")) void* __modules_z[] = { nullptr };

節合并

這里主要是然鏈接器進行一個節的合并

#pragma comment(linker, "/merge:.modules=.rdata")
#pragma comment(linker, "/merge:.unbox=.text")

節聲明函數

實例化運行時注冊AOT模塊的時候要用到

char _bookend_a;
char _bookend_z;


#pragma code_seg(".managedcode$A")
void* __managedcode_a() { return &_bookend_a; }
#pragma code_seg(".managedcode$Z")
void* __managedcode_z() { return &_bookend_z; }
#pragma code_seg()

AOT運行環境的初始化

static int InitializeRuntime()
{
    //環境變量的初始化
    if (!RhInitialize())
        return -1;
    //獲取當前模塊的句柄
    void* osModule = PalGetModuleHandleFromPointer((void*)&__managed__Main);


    //注冊AOT模塊
    if (!RhRegisterOSModule(
        osModule,
        (void*)&__managedcode_a, (uint32_t)((char*)&__managedcode_z - (char*)&__managedcode_a),
        (void*)&__unbox_a, (uint32_t)((char*)&__unbox_z - (char*)&__unbox_a),
        (void**)&c_classlibFunctions, _countof(c_classlibFunctions)))
    {
        return -1;
    }
    //初始化需要的模塊
    InitializeModules(osModule, __modules_a, (int)((__modules_z - __modules_a)), (void**)&c_classlibFunctions, _countof(c_classlibFunctions));


#ifdef NATIVEAOT_DLL
    // Run startup method immediately for a native library
    __managed__Startup();
#endif // NATIVEAOT_DLL


    return 0;
}

托管入口

return __managed__Main(argc, argv);

以上是.Net8的AOT引導程序的大致運作模式。

完整代碼在GitHub:https://github.com/tangyanzhi/jianghupt/releases/download/Aot_bootstrap/AOT-BootStrap.rar


責任編輯:武曉燕 來源: 江湖評談
相關推薦

2023-09-11 08:40:34

AOTVMP代碼

2023-07-09 23:55:16

C++RoslynILC

2023-11-17 13:42:06

.NET8C#工具

2023-07-14 08:29:55

AOT.Net程序

2023-10-07 10:16:18

.Net8GC內存

2023-12-15 17:09:28

.NET8Primitives性能

2023-11-17 08:52:32

.NET8C#

2023-11-06 10:03:01

.Net8類型轉換

2024-08-30 09:21:28

2024-10-11 14:42:59

2023-11-15 09:34:27

.NET 8代碼生成器

2025-04-02 07:40:30

2024-11-07 12:33:47

2023-12-27 07:33:54

2024-11-12 07:28:39

2025-02-24 02:00:00

.NET8Web開發

2024-09-29 15:21:01

2023-09-21 08:46:44

操作系統windows 10內存

2025-08-07 00:10:15

2025-04-01 04:03:00

.NET8C#CPU
點贊
收藏

51CTO技術棧公眾號

av一二三不卡影片| 国产精品sm| 欧美日韩小视频| 中文字幕黄色大片| 国产激情久久久久久熟女老人av| 在线精品一区二区| 国产丝袜一区二区三区免费视频| 青青草精品视频在线观看| 思思99re6国产在线播放| 国产乱子伦一区二区三区国色天香| 欧美大片免费观看在线观看网站推荐| 日韩无码精品一区二区| 天天综合网站| 亚洲综合色噜噜狠狠| 欧美福利精品| 99热这里只有精品在线观看| 一本久久综合| 日韩视频永久免费观看| 日本三级日本三级日本三级极| 日韩在线短视频| 一区二区三区久久久| 欧美中文娱乐网| www.精品久久| 日韩成人伦理电影在线观看| 久久久久亚洲精品| 在线观看日本黄色| 亚洲第一论坛sis| 日韩一区二区麻豆国产| 91av俱乐部| 国产精品186在线观看在线播放| 日本一二三不卡| 久久av二区| 国内精品偷拍视频| 久久国产日韩欧美精品| 欧美在线免费视频| 久久久综合久久| 婷婷亚洲图片| 一区二区三区精品99久久| 日本护士做爰视频| 欧美第一在线视频| 777色狠狠一区二区三区| 99精品免费在线观看| 污污视频在线看| 国产精品欧美一区二区三区| 欧美一级日本a级v片| 日本精品一二区| 福利一区二区在线| 亚洲一区二区三区视频| 中文字幕在线观看1| 蘑菇福利视频一区播放| 午夜精品福利视频| 国产亚洲自拍av| 中文字幕亚洲精品乱码| 丝袜美腿亚洲一区二区| 亚洲精品国产91| 中日韩免视频上线全都免费| 亚洲电影天堂av| 人妻 丝袜美腿 中文字幕| 国产精品视频一区二区三区| 欧美日韩一区久久| 国产九九热视频| 欧亚一区二区| 欧美色视频在线| 男女污污的视频| 日韩不卡在线| 欧美视频在线播放| 日本激情视频在线播放| 91福利精品在线观看| 欧美亚洲国产怡红院影院| 黄色片在线免费| 国产精品亚洲d| 欧美日本精品一区二区三区| 性刺激的欧美三级视频| 久久电影天堂| 91精品在线一区二区| 欧美一级视频在线| 日韩中文字幕一区二区高清99| 日韩亚洲欧美一区| 亚洲精品久久一区二区三区777 | 岳毛多又紧做起爽| 欧美日韩视频免费观看| 欧美系列一区二区| 久久久精品视频国产| 久久中文字幕一区二区| 精品久久久久久久人人人人传媒| 国模无码视频一区| 亚洲精品aaaaa| 在线成人免费网站| 久久国产在线视频| 亚洲男女自偷自拍| 国产精品一区二区三区在线播放| 国产精品爽爽久久| 成人免费观看视频| 婷婷久久伊人| 视频在线观看入口黄最新永久免费国产 | 囯产精品久久久久久| 北岛玲一区二区三区四区| 欧美日韩一区二 | 国产午夜久久久久| 一区二区三区四区视频在线观看| 亚洲精品白浆| 色婷婷综合中文久久一本| 在线观看免费视频高清游戏推荐| 欧美a级大片在线| 亚洲片av在线| 538精品在线视频| 亚洲欧美日韩国产| 91夜夜未满十八勿入爽爽影院| 少妇精品高潮欲妇又嫩中文字幕 | 免费成人深夜夜行网站| 亚洲免费成人| 91久久精品国产91性色| 三级av在线播放| 亚洲精品老司机| 日本免费观看网站| 成人另类视频| 精品国产欧美成人夜夜嗨| 97免费在线观看视频| 狠狠色丁香久久婷婷综合_中| 免费h精品视频在线播放| 成人无遮挡免费网站视频在线观看| 精品久久久国产| 不卡的在线视频| 美女毛片一区二区三区四区| 不卡av日日日| 中文字幕精品一区二区精| 99久久久久久| av日韩在线看| 国产亚洲字幕| 色小说视频一区| 免费视频久久久| 不卡影院免费观看| 青青草视频国产| 综合久草视频| 中文字幕精品—区二区| 天天干在线播放| 成人久久18免费网站麻豆| 综合一区中文字幕| 久久亚洲人体| 日韩网站在线观看| 中文字幕在线日亚洲9| 久久天天做天天爱综合色| 777av视频| 国产成人aa在线观看网站站| 欧美美女15p| 国产日产亚洲系列最新| 中文字幕精品综合| 国产成人黄色网址| 精品日韩欧美一区| 国产精品欧美亚洲777777| 可以免费看污视频的网站在线| 欧美日韩在线第一页| 国产成人精品无码片区在线| 欧美另类综合| www日韩av| 欧美精品videossex少妇| 日韩精品专区在线影院观看| 久草网在线观看| 成人黄色a**站在线观看| 欧美乱做爰xxxⅹ久久久| 午夜精品在线| 午夜精品久久久久久久久久久久| 黑人精品一区二区| 香蕉加勒比综合久久| avtt香蕉久久| 老**午夜毛片一区二区三区| 日韩国产精品一区二区| xxxxx.日韩| yw.139尤物在线精品视频| 国产91视频在线| 亚洲国产sm捆绑调教视频| 精品国产一区在线| 久久久久国产精品午夜一区| 五月天久久狠狠| 99视频有精品高清视频| 久久99热精品这里久久精品| 天堂网在线中文| 色八戒一区二区三区| 亚洲精品电影院| 国产成人精品综合在线观看| 波多野结衣之无限发射| 经典一区二区| 91在线播放国产| 白白色在线观看| 国产亚洲精品一区二555| 国产精品熟女久久久久久| 亚洲午夜av在线| 精品无人区无码乱码毛片国产| 久久精品理论片| 日韩精品综合在线| 国产99亚洲| 91在线观看免费网站| av免费不卡| 中文字幕日韩欧美在线| 午夜精品久久久久久久99热黄桃 | kk眼镜猥琐国模调教系列一区二区| 91视频 -- 69xx| 香蕉国产精品| 激情伦成人综合小说| 精品国产美女a久久9999| 欧美猛少妇色xxxxx| 欧美日韩国产亚洲沙发| 欧美一级午夜免费电影| 好吊色在线视频| 亚洲欧美偷拍三级| 国精品无码人妻一区二区三区| 精品一区二区三区不卡| 免费毛片网站在线观看| 久久密一区二区三区| 精品国产一区二区三| 91精品网站在线观看| 国产成人av网| 成人福利影视| 久久精品中文字幕一区| 色哟哟在线观看| 精品奇米国产一区二区三区| 中文字幕精品无码亚| 婷婷开心激情综合| 日本老熟俱乐部h0930| 国产日韩一级二级三级| 99re这里只有| 国产成人精品免费视频网站| 性欧美videossex精品| 中文亚洲字幕| 国产精品www在线观看| 日韩在线视屏| 欧美一级二级三级| 窝窝社区一区二区| 国产精品xxx在线观看www| 国语自产精品视频在线看抢先版结局 | 在线亚洲人成电影网站色www| 国产亚洲成人av| 亚洲欧美一区二区三区久本道91| 人妻视频一区二区| 91色.com| 800av在线播放| 丁香激情综合国产| 麻豆精品国产传媒| 国产一区二区伦理片| 亚洲欧美日韩三级| 麻豆精品在线观看| 一级在线免费视频| 视频一区视频二区中文| 欧美s码亚洲码精品m码| 亚洲国产高清一区| 男女激情免费视频| 亚洲电影成人| 蜜桃传媒一区二区三区| 精品动漫3d一区二区三区免费| 狠狠噜天天噜日日噜| 欧美久久久久| 欧美一级视频在线播放| 激情欧美一区| 5月婷婷6月丁香| 国产精品外国| 日韩在线第三页| 日本欧美在线看| 色婷婷一区二区三区av免费看| 蜜臀av性久久久久蜜臀av麻豆| 亚洲xxxx2d动漫1| 蜜臀91精品一区二区三区| 欧美三级理论片| 久久99精品国产.久久久久久| 亚洲天堂国产视频| 国产精品资源网站| xxxxwww一片| 不卡一区在线观看| 色噜噜在线观看| 国产日韩欧美高清在线| 极品久久久久久久| 亚洲丝袜另类动漫二区| 久久综合亚洲色hezyo国产| 亚洲午夜视频在线| 99热只有这里有精品| 色哟哟一区二区三区| 亚洲视频在线观看免费视频| 在线综合+亚洲+欧美中文字幕| 精品久久久无码中文字幕| 精品免费一区二区三区| 男人天堂av网| 亚洲人成欧美中文字幕| 日本福利专区在线观看| 欧美精品日韩www.p站| 都市激情国产精品| 国产精品免费一区豆花| 色妞ww精品视频7777| 快播日韩欧美| 久久久精品久久久久久96| 又大又硬又爽免费视频| 久久久成人网| 亚洲在线观看网站| 99精品欧美一区| 免费黄色在线网址| 亚洲一区二区三区视频在线| 69国产精品视频免费观看| 9191精品国产综合久久久久久| 黄色小视频免费观看| 亚洲最新在线视频| 女同视频在线观看| 国产精品一区二区3区| 豆花视频一区二区| 亚洲人成网站在线观看播放| 在线欧美一区| a在线观看免费视频| 福利电影一区二区| 亚洲AV成人无码网站天堂久久| 亚洲午夜免费视频| 一级片免费观看视频| 亚洲精品国产精品久久清纯直播| yiren22亚洲综合伊人22| 色综合久久悠悠| 欧美大片1688网站| 国产日韩欧美亚洲一区| 婷婷激情图片久久| 三年中国国语在线播放免费| 成人综合婷婷国产精品久久| 9.1片黄在线观看| 色综合久久久网| 免费观看黄色av| 欧美成人性色生活仑片| 新片速递亚洲合集欧美合集| 国产精品久久久久久久久久久久午夜片| 欧美日韩水蜜桃| 国产一区二区三区精彩视频| 丁香婷婷综合色啪| 亚洲成人生活片| 欧美日韩成人综合在线一区二区| 免费在线国产| 性色av一区二区三区红粉影视| 99精品女人在线观看免费视频| 视频一区二区三区免费观看| 西西人体一区二区| 国产婷婷在线观看| 夜夜爽夜夜爽精品视频| 国产伦子伦对白视频| 正在播放欧美视频| 亚洲精品.com| 欧洲亚洲一区二区| 亚洲免费影院| 野花社区视频在线观看| 偷窥国产亚洲免费视频 | 亚洲毛片在线看| 国产剧情av在线播放| 国产精品sss| 亚洲第一精品影视| 免费黄色三级网站| 亚洲6080在线| 少妇av一区二区| 8090成年在线看片午夜| 日本成人a网站| 成人免费观看视频在线观看| 99国产精品久久久| 香蕉视频一区二区| 日韩高清中文字幕| 竹内纱里奈兽皇系列在线观看| 欧美福利一区二区三区| 久久精品综合| 国产免费嫩草影院| 欧美日韩高清不卡| 国产福利在线播放麻豆| 97se国产在线视频| 极品日韩av| 最近中文字幕无免费| 欧美日韩免费看| 久青青在线观看视频国产| 国产精品99免视看9| 清纯唯美综合亚洲| 亚洲精品成人在线播放| 亚洲精品日韩专区silk| 黑人精品一区二区三区| 欧洲成人免费aa| 爽成人777777婷婷| 成人做爰69片免费| 欧美日韩精品在线视频| 国产鲁鲁视频在线观看免费| 成人妇女淫片aaaa视频| 国产精品a级| japanese中文字幕| 91麻豆精品国产91久久久久久 | 精品国产一区二区三区在线观看| 永久免费观看精品视频| 中文字幕在线中文| 972aa.com艺术欧美| 黄色一区二区视频| 欧美成人精品在线观看| 欧美日韩一区二区三区四区不卡| 青青在线视频免费| 亚洲欧美激情小说另类| 色综合成人av| 91亚洲永久免费精品| 国产亚洲成人一区| 国产精品视频看看| 亚洲国产精品99| 国产精品videossex撒尿| 青青草综合在线| 国产婷婷色一区二区三区在线| 国产日韩欧美中文字幕| 欧美中文在线视频| 91精品国产乱码久久久久久| 韩国无码一区二区三区精品|