freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

洛陽(yáng)本地通旅游向?qū)脚_(tái)信息子系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文-資料下載頁(yè)

2025-06-24 03:12本頁(yè)面
  

【正文】 itional runtime or programming overhead, or a loss of fidelity at the interface.3. THE COMMON LANGUAGE RUNTIME Design GoalsThe Common Language Runtime (CLR) provides the underlying infrastructure for the Microsoft .NET Framework. It is platformneutral, and consists of several ponents, including a garbage collector, class loader, metadata engine, and debugging and security services. The base class library in the .NET Framework provides the interface between the higherlevel classes and the CLR. A major design goal of the CLR, and the focus of this paper, was to support a wide variety of programming languages, in the spirit of COM, which would thereby enable language integration. Feedback and involvement from a variety of diverse language groups was solicited and incorporated throughout the design stage to achieve this goal. As a result, there are many pilers that currently target the CLR, several of which are produced by Microsoft:C, Java TM, C++, and Visual Basic, and JScript. The remainder, including APL, COBOL, Component Pascal, Eiffel, Haskell or Mondrian, Mercury, Oberon, Perl, Python, Scheme, and Standard ML, are produced by a variety of other panies and organizations.All of the services, tools, and architecture information needed by piler writers are fully documented as a published ECMA standard, with the intention that any organization can target the CLR. The class libraries provided with the .NET Framework can be accessed through any language that targets the CLR. Compiler writers can concentrate on the main task of parsing and generating code for their particular language rather than developing a runtime, which drastically reduces the barrier of entry. Further, any language can take advantage of the many tools and services provided with the CLR, such as profiling and security services and seamless, crosslanguage debugging. This is very pelling for producers of more marginal or esoteric programming languages as these languages would no longer be isolated a factor which likely impedes their adoption. With a piler that targets the CLR, programmers using such languages would have direct access to the .NET Framework and any other applications written in any other language that targets the CLR. Further, their programs would be available for use by others in the same way. In addition, such programs could be deployed on the web, leveraging the typesafety and security support provided in the CLR. Metadata EngineWith more traditional programming languages such as C++, once an application is piled, there is very little information available about it that can be queried by outside tools. If there is such information, it is typically provided in a language dependent format, such as Java TM class files, or a proprietary format, such as Visual C++ PDB files. COM type libraries do provide information in a languageindependent format [6], but have other drawbacks in that they are difficult to extend and the APIs are C++specific. The CLR Metadata Engine was designed to provide a languageindependent schema and supporting APIS to enable the CLR development model. When a program is piled with a CLRenabled tool, information describing the classes defined and used in that program are emitted as metadata through the Metadata Engine and stored with the resulting program object along with the CIL.The basic form of metadata extensibility is through custom attributes, which are arbitrary types (rooted at ) that can be associated with the object. The metadata engine provides support to then enumerate and retrieve custom attributes at runtime. This provides an extensible and typesafe way to extend the metadata, which contributes to the ability of the CLR to support a broad range of languages. For example, the metadata does not directly support the concept of const methods, but a C++ piler can generate a custom attribute for a method to represent this modifier and can then query for it when piling a reference to that particular method to ensure consistency. Tools that do not recognize the attribute can ignore it. As we will discuss later with the Common Language Subset, however, such an attribute would likely not be included in a public interface.CLR programs are selfdescribing in that the metadata includes all type and method information necessary to pletely describe types, methods and their parameters. The metadata information can then be queried by other tools, such as the debugger and profiler through a native COM interface, or through .NET reflection framework. The CLR uses the metadata extensively for a variety of tasks, including object instantiation, type safety verification, and JIT piling the CIL to native code. The purpose of the paper is not to describe the CLR in its entirety, but rather those features that are specific to language support and integration, so the metadata format will not be described in detail. 關(guān)鍵詞語(yǔ)言互操作性。通用類型系統(tǒng),異常處理,虛擬機(jī),中間語(yǔ)言,元數(shù)據(jù)。摘要通用語(yǔ)言運(yùn)行庫(kù)(CLR)是一種語(yǔ)言和中立平臺(tái), 框架提供了底層的基礎(chǔ)設(shè)施。CLR 中的關(guān)鍵創(chuàng)新是它支持多種編程語(yǔ)言,使在運(yùn)行時(shí)的編程語(yǔ)言集成水平在更大的程度比目前可能的水平更高。通用語(yǔ)言運(yùn)行庫(kù)(CLR) 框架提供了基礎(chǔ)設(shè)施。這是設(shè)計(jì)的目標(biāo),腦子里的數(shù)字:簡(jiǎn)化編程模型,提供一個(gè)機(jī)制簡(jiǎn)單,更安全應(yīng)用部署并啟用豐富Web 客戶端發(fā)展,支持橫跨一各種各樣的伸縮性系統(tǒng)和提供一塊不同各種技術(shù)收斂點(diǎn),以及使語(yǔ)言一體化遠(yuǎn)遠(yuǎn)超越簡(jiǎn)單語(yǔ)言interoperab。在本文中,我們將集中在這些目標(biāo)后,并描述在CLR 作出的關(guān)于支持多種編程語(yǔ)言,使語(yǔ)言進(jìn)步整合。CLR 提供了一個(gè)中立的語(yǔ)言和平臺(tái)的基礎(chǔ)設(shè)施,這基礎(chǔ)設(shè)施能夠支持多種編程語(yǔ)言。這是通過(guò)豐富的類型,通用類型系統(tǒng)(CTS)的已知系統(tǒng),和一個(gè)語(yǔ)言中立的中間語(yǔ)言,通用中間語(yǔ)言(CIL)。通用類型系統(tǒng)支持的原始種類繁多,包括對(duì)象引用。通用語(yǔ)言規(guī)范(CLS),一個(gè)旅的一個(gè)子集,定義了一套限制類型,還包括對(duì)象引用,它可以被任何CLS 的消費(fèi)者操縱。這種模式允許編譯器目標(biāo)與整個(gè)CLR 的類型系統(tǒng),并獲得了其中的所有優(yōu)點(diǎn),而且還定義一個(gè)類型的限制規(guī)定為了確保語(yǔ)言/工具的互操作性。CIL 提供了一個(gè)語(yǔ)言無(wú)關(guān)的編譯器的目標(biāo),可以輸入到一個(gè)品種代碼生成器,特別是剛剛在實(shí)時(shí)(JIT)編譯器。實(shí)現(xiàn)語(yǔ)言互操作性,最起碼的水平是相當(dāng)困難的,由于編程語(yǔ)言,功能和實(shí)現(xiàn)的很大差異性。CLR 的目的是支持面向?qū)ο?,程序和功能編程語(yǔ)言升,一般順序的重要性。它目前支持的前兩個(gè)種類繁多,相當(dāng)不錯(cuò),并為后者提供了最小支持。關(guān)于多語(yǔ)言模型,但支持語(yǔ)言提供的功能超過(guò)了現(xiàn)有的。無(wú)論是語(yǔ)言的互操作性,在CLR 使用在同類型系統(tǒng)和中間語(yǔ)言結(jié)合元數(shù)據(jù)完整地描述一個(gè)程序,它的類型。元數(shù)據(jù)存儲(chǔ),隨著CIL 的可執(zhí)行程序,并通過(guò)元數(shù)據(jù)處理的引擎提供API以讀取和寫(xiě)入數(shù)據(jù)。元數(shù)據(jù)的使用,使一個(gè)CLR 程序自描述,并允許如調(diào)試器和分析器其他工具來(lái)查詢類型的信息。我們將開(kāi)始在各種平臺(tái)和語(yǔ)言的互操作性中作簡(jiǎn)短的討論,隨之而來(lái)的是更詳細(xì)的討論CLR 和如何被用于支持語(yǔ)言集成。盡管許多早期的編程語(yǔ)言都可以在多種平臺(tái)上使用,C 編程語(yǔ)言,這是旨在港口跨平臺(tái)Unix 操作系統(tǒng)源成為最成功的嘗試之一,級(jí)跨平臺(tái)的可移植性。該語(yǔ)言是相當(dāng)簡(jiǎn)單的,但支持一組豐富的功能。再加上一套標(biāo)準(zhǔn)庫(kù)函數(shù),它成為所選擇的任何形式的系統(tǒng)編程語(yǔ)言,以及許多其他跨平臺(tái)的多種應(yīng)用,特別是如果可移植性令人擔(dān)憂。大多數(shù)實(shí)現(xiàn)還提供了本人邏輯編程語(yǔ)言,但沒(méi)有具體考慮,因?yàn)槊桌毡砻?,語(yǔ)言的支持功
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1