• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            WinRT(Windows Runtime)是微軟新一代在Win8 Metro下開發(fā)框架, 它是一套面向?qū)ο蟆⒖缯Z言并且是Native的庫。 

            如果有人問我WinRT的核心技術(shù)是什么? 我的答案是 COM + .Net Metadata + Xaml, 這三者可以說是微軟這些年所有技術(shù)的精華。

            COM組件技術(shù)一直是微軟在用戶態(tài)的核心技術(shù)之一, 它讓我們可以無縫的以面向?qū)ο蟮姆绞酱罱☉?yīng)用程序,隨著.Net的發(fā)展,我們曾經(jīng)以為它已逐漸過時(shí),但是在WinRT中,我們看到它又回來了。 
            .Net Metadata是微軟在 .Net繼承過來的, 通過它描述組件的類層次和接口, 實(shí)現(xiàn)跨語言的調(diào)用。
            Xaml是微軟從WPF中繼承過來的, 相對于傳統(tǒng)GDI窗口和控件, 它的優(yōu)勢我們就不多說了, 它是微軟下一代界面的表現(xiàn)方式。

             對于Win8 Metro應(yīng)用(現(xiàn)在微軟喜歡把它叫住Windows Store App), 我們一直很好奇Win8的架構(gòu), 它與傳統(tǒng)Win32究竟是什么關(guān)系?
            對于這個(gè)問題, 我們在網(wǎng)上一般會喜歡用這個(gè)圖作為答案:


            上面的圖給我們的感覺是WinRT完全不同于傳統(tǒng)的Win32應(yīng)用程序, 是直接基于Windows內(nèi)核的,它和Win32 API是并列的2套開發(fā)框架。
            或許是微軟試圖這樣設(shè)計(jì), 所以給了我們這樣一張架構(gòu)圖, 但是后來我們逐漸發(fā)現(xiàn), 實(shí)際情況卻是這樣的:

            WinRT不是直接基于Windows內(nèi)核, 而是直接搭建在Win32上的一個(gè)系統(tǒng)級應(yīng)用, WinRT的下層還是Win32 API。
            通過工具, 我們可以看到傳統(tǒng)的Desktop Application和WinRT App是運(yùn)行在同一個(gè)Session, 同一個(gè)Window Station,同一Desktop的, 微軟只是在它們之間的切換作了些限制。

            另外,微軟通過新增加一些API(比如NtCreateLowBoxToken)讓Metro App以很低權(quán)限運(yùn)行在Sandbox(App  Container)中, 對于和權(quán)限相關(guān)的API調(diào)用,它會通過一個(gè)Broker來運(yùn)行。




            總之, 一開始我們會覺得WinRT很好奇, 但是后來我們逐步發(fā)現(xiàn)它其實(shí)并沒有那么神秘, 它是很多微軟現(xiàn)有技術(shù)的合成體。 微軟的技術(shù)更新很多時(shí)候讓人眼花潦蘭,但是底層本質(zhì)的東西(比如COM,D3D,Win32)其實(shí)一直很少改變。

            參考資料: Turning to the past to power Windows' future: An in-depth look at WinRT

            : 上面我們的討論主要集中在x86的上。
                    對于ARM版的WinRT, 因?yàn)闆]有傳統(tǒng)Win32的負(fù)擔(dān),所以全部都是重新開發(fā)的, 因此先對于ARM版的WinRT, 微軟甚至不開放傳統(tǒng)desktok模式下的開發(fā)接口,上面微軟的架構(gòu)圖又是正確的。
            posted on 2013-01-13 16:31 Richard Wei 閱讀(8370) 評論(6)  編輯 收藏 引用 所屬分類: win8 metro

            FeedBack:
            # re: 理解WinRT
            2013-01-13 17:33 | bukebushuo
            感覺博主把概念弄混了,上面講的貌似就是Windows8的架構(gòu)
            RT,實(shí)際就是Arm版的Windows8  回復(fù)  更多評論
              
            # re: 理解WinRT
            2013-01-13 17:44 | Richard Wei
            @bukebushuo
            WinRT的定義看這里:http://en.wikipedia.org/wiki/Windows_Runtime

            Windows Runtime, or WinRT, is a platform-homogeneous application architecture on the Windows 8 and Windows RT operating systems.  回復(fù)  更多評論
              
            # re: 理解WinRT
            2013-01-13 17:47 | Richard Wei
            WinRT的API看MSDN, 大部分和Xaml相關(guān),其實(shí)沒多少東西: http://msdn.microsoft.com/en-us/library/windows/apps/br211377.aspx  回復(fù)  更多評論
              
            # re: 理解WinRT[未登錄]
            2013-01-14 22:33 | megax
            看看名字就知道來頭不小, windows runtime!現(xiàn)在是基于win32的, 也許以后就不是了!看看windows的架構(gòu)和rt庫的用法, 要比macos先進(jìn)很多!在rt的控制下,低權(quán)限,低功耗是未來趨勢,也許以后只有rt下面的程序, 純win32的會漸漸消失!  回復(fù)  更多評論
              
            # re: 理解WinRT[未登錄]
            2013-01-19 10:11 | bukebushuo
            @megax
            要說低功耗,還得WIN32啊,不過歷史的潮流總是在向前發(fā)展,嗯,是不是升級成WIN64更好點(diǎn)?哈哈!  回復(fù)  更多評論
              
            # re: 理解WinRT
            2013-07-19 13:29 | quanben
            @megax
            是啊,博主的第二張圖更有含金量(如果是正確的話,但看上去基本是合理的)。從里面WinRT的黑色線拖出的抓手都是指向最新的技術(shù)可見一斑。  回復(fù)  更多評論
              
            成人综合伊人五月婷久久| 久久影院久久香蕉国产线看观看| 无码超乳爆乳中文字幕久久 | 免费精品国产日韩热久久| 狠狠色丁香婷婷久久综合五月 | 久久AV高清无码| 久久精品国产99国产精品| 亚洲乱码精品久久久久..| 国产成人久久精品麻豆一区| 亚洲精品99久久久久中文字幕| 久久ZYZ资源站无码中文动漫| 久久久久久久久久久免费精品| 国产精品免费看久久久| 色欲综合久久躁天天躁| 岛国搬运www久久| 久久99国产综合精品免费| 精品国产青草久久久久福利| 久久免费大片| 久久99热这里只有精品国产| 久久99国内精品自在现线| 囯产极品美女高潮无套久久久| 久久99精品国产99久久6| 久久综合狠狠色综合伊人| 久久精品国产网红主播| 国产成人无码精品久久久性色| 久久久精品视频免费观看| 久久99精品国产麻豆婷婷| 久久综合狠狠综合久久激情 | 亚洲va国产va天堂va久久| 天天做夜夜做久久做狠狠| 久久国产成人午夜aⅴ影院| 久久久精品免费国产四虎| 72种姿势欧美久久久久大黄蕉| 久久亚洲精品人成综合网| 久久永久免费人妻精品下载| 亚洲午夜久久久影院| 色诱久久久久综合网ywww| 国产V亚洲V天堂无码久久久| 精品国产乱码久久久久久1区2区| 久久婷婷成人综合色综合| www久久久天天com|