Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
DotGNU – 2001 жылдың қаңтар айында басталып, Microsoft-тың .NET Framework-іне еркін бағдарламалық қамтамасыз етумен алмастыруды мақсат еткен GNU жобасының тоқтатылған бөлігі. DotGNU жобасын Free Software Foundation (Азат бағдарламалық қамтамасыз ету қоры) басқарды. Жобаның басқа да мақсаттары – Windows емес платформаларды жақсы қолдау және көбірек процессорларды қолдау. DotGNU жобасының код базасының негізгі мақсаты – 100% Common Language Specification (CLS) стандартына сәйкес келетін сыныптар кітапханасын ұсыну.
DotGNU is a decommissioned part of the GNU Project that started in January 2001 and aimed to provide a free software replacement for Microsoft's NET Framework. The DotGNU project was run by the Free Software Foundation. Other goals of the project are better support for non Windows platforms and support for more processors. The main goal of the DotGNU project code base was to provide a class library that is 100% Common Language Specification (CLS) compliant.
Portable.NET портативті
DotGNU портативті .NET, ECMA 335 ортақ тілдік инфрақұрылымын (CLI) іске асырады және .NET базалық сыныптар кітапханаларын, XML және Windows формаларын пайдаланатын Visual Basic .NET, C# және C бағдарламаларын құрастыруға және орындауға арналған бағдарламалық құралдарды қамтиды. Portable .NET x86, PPC, ARM және SPARC сияқты әртүрлі процессор архитектураларын қолдайды.
DotGNU Portable. NET, an implementation of the ECMA 335 Common Language Infrastructure (CLI), includes software to compile and run Visual Basic NET, C#, and C applications that use the NET base class libraries, XML, and Windows Forms. Portable. NET claims to support various instruction set architectures including x86, PPC, ARM, and SPARC.
DotGNU Execution Environment (DGEE) is a web service server.
libJIT
libJIT – виртуалды машиналардың, динамикалық бағдарламалау тілдері мен сценарийлік тілдердегі жетілдірілген just-in-time компиляциясын жасауға арналған кітапхана. Ол үш адресті кодқа негізделген аралық өрнектерді іске асырады, онда айнымалылар статикалық бір тапсыру түрінде сақталады. libJIT басқа да ашық кодты жобаларда, оның ішінде GNU Emacs ILDJIT және HornetsEye қолданысында да болған.
libJIT is a just in time compilation library for development of advanced just in time compilation in virtual machine implementations, dynamic programming languages, and scripting languages. It implements an intermediate representation based on three address code, in which variables are kept in static single assignment form. libJIT has also seen some use in other open source projects, including GNU Emacs ILDJIT and HornetsEye .
Желілік архитектура
Portable NET сыныптар кітапханасы қолданбаларды жасауға арналған мүмкіндіктерді ұсынады. Олар негізінен C# тілінде жазылған, бірақ Common Language Specification (CLS) стандартының арқасында кез келген .NET тілінде қолданылуы мүмкін. .NET сияқты, бұл кітапхана да атау кеңістіктері мен жиналымдарға (Assemblies) құрылымдалған. Онда Accessibility және DotGNU сияқты қосымша жоғары деңгейдегі атау кеңістіктері де бар. Типик жағдайда, Portable NET компиляторы ECMA 335 стандартының 6-тарауында сипатталғандай CLS кескінін (image) жасайды, ал Portable NET орындау ортасы (runtime) осы кескінді қабылдап, іске қосады.
The Portable NET class library seeks to provide facilities for application development. These are primarily written in C#, but because of the Common Language Specification they can be used by any NET language. Like NET, the class library is structured into Namespaces and Assemblies. It has additional top level namespaces including Accessibility and DotGNU. In a typical operation, the Portable NET compiler generates a Common Language Specification (CLS) image, as specified in chapter 6 of ECMA 335, and the Portable NET runtime takes this image and runs it.
Еркін бағдарламалық қамтамасыз ету
DotGNU – бұл ашық кодты бағдарламалық жасақтама екенін көрсетеді және DotGNU-ның барлық аспектілерінің Microsoft Windows графикалық интерфейсінің кодына сияқты жабық компоненттерге тәуелділігін барынша азайтуға бағытталған. DotGNU 2007 жылдан 2008 жылға дейін жоғары басымдықтың ашық кодты бағдарламалық жасақтама жобаларының бірі болды.
DotGNU points out that it is Free Software, and it sets out to ensure that all aspects of DotGNU minimize dependence on proprietary components, such as calls to Microsoft Windows' GUI code. DotGNU was one of the High Priority Free Software Projects from 2007 till 2008.
DotGNU және Microsoft патенттері
DotGNU-ның ECMA-ға стандарттау үшін ұсынылмаған .NET стегінің компоненттерін іске асыруы жобаның көп бөлігінде патенттік бұзушылықтар туралы алаңдаушылықтар тудырды. Атап айтқанда, Microsoft компаниясы патенттік сот арқылы DotGNU жобасын жоюға тырысуы мүмкін бе деген пікірлер талқыланды. ECMA-ға ұсынылған негізгі технологиялар мәселе тудырмауы мүмкін. Алаңдаушылықтар негізінен Microsoft компаниясының .NET Framework-ке қосымша әзірлеген ASP.NET, ADO.NET және Windows Forms (қараңыз: Стандартталмаған атау кеңістіктері) сияқты технологияларына қатысты, яғни DotGNU-ның Windows үйлесімділік стегін құрайтын бөліктер. Бұл технологиялар қазіргі уақытта DotGNU-да толыққанды іске асырылмаған және DotGNU қолданбаларын жасау үшін қажет емес. 2009 жылы Microsoft Apache License 2.0 нұсқасымен .NET Micro Framework-ті шығарды, ол патенттік құқықтарды қамтиды. Дегенмен, .NET Micro Framework – CLR-дың және кіріктірілген құрылғыларда пайдалануға арналған базалық сыныптар кітапханаларының шектеулі жиынтығы. Сонымен қатар, Apache лицензиясы бойынша берілген патенттік құқықтар тек .NET Micro Framework-тің үлескерлері мен пайдаланушыларын қорғайтын болар еді, DotGNU немесе Mono сияқты баламалы іске асырулардың пайдаланушылары мен әзірлеушілерін емес. 2014 жылы Microsoft Apache License бойынша келесі буынның ресми Microsoft C# компиляторы Roslyn-ді шығарды. Кейін сол жылы Microsoft ресми .NET Framework-ті "қайта іске қосуды" жариялады. Жаңа құрылым .NET Core-ға негізделген, ол MIT лицензиясы бойынша шығарылған ресми орындалу ортасы мен стандартты кітапханаларды және .NET Core-қа қатысты Microsoft-қа тиесілі патенттерден алушыларды қорғайтын патенттік құқықтарды қамтиды.
DotGNU's implementation of those components of the NET stack not submitted to the ECMA for standardization has been the source of patent violation concerns for much of the life of the project. In particular, discussion has taken place about whether Microsoft could destroy the DotGNU project through patent suits. The base technologies submitted to the ECMA may be non problematic. The concerns primarily relate to technologies developed by Microsoft on top of the NET Framework, such as ASP. NET, ADO. NET, and Windows Forms (see Non standardized namespaces), i. e. parts composing DotGNU's Windows compatibility stack. These technologies are today not fully implemented in DotGNU and are not required for developing DotGNU applications. In 2009, Microsoft released NET Micro Framework under Apache License, Version 2.0, which includes a patent grant. However, the NET Micro Framework is a reimplementation of the CLR and limited subset of the base class libraries meant for use on embedded devices. Additionally, the patent grant in the Apache License would have protected only contributors and users of the NET Micro Framework—not users and developers of alternative implementations such as DotGNU or Mono. In 2014, Microsoft released Roslyn, the next generation official Microsoft C# compiler, under the Apache License. Later that year, Microsoft announced a "reboot" of the official NET Framework. The framework would be based on NET Core, including the official runtime and standard libraries released under the MIT License and a patent grant explicitly protecting recipients from Microsoft owned patents regarding NET Core.