모노 (소프트웨어)

위키백과, 우리 모두의 백과사전.

모노
Mono
원저자시미안(Ximian)
개발자자마린(Xamarin)
발표일2004년 6월 30일(19년 전)(2004-06-30)
안정화 버전
6.12.0.199[1] 위키데이터에서 편집하기 / 2023년 6월 14일 (10개월 전)
미리보기 버전
6.12.0.114 / 2020년 6월 30일(3년 전)(2020-06-30)[2]
저장소
프로그래밍 언어C, C#, XML
운영 체제윈도우, macOS, 리눅스
플랫폼IA-32, x86-64, IA-64, ARM, MIPS, 파워PC, SPARC, S390
종류소프트웨어 프레임워크
라이선스MIT 라이선스
웹사이트mono-project.com

모노(영어: Mono)는 C# 컴파일러와 공통 언어 런타임을 포함하여, Ecma 표준을 준수하는 닷넷 프레임워크오픈 소스 버전이다. 원래는 노벨이 개발 회사인 시미안(Ximian)을 인수하면서 노벨이 계속 개발하게 되었는데 마이크로소프트에서 개발을 양도받아 자회사인 자마린(Xamarin)에서 개발하고 있다. 모노의 각종 크로스 플랫폼에서 닷넷 프레임워크 기반 응용 프로그램을 실행을 하는 동시에 리눅스 개발자에게 더 나은 개발 도구를 제공하기 위한 목적으로 개발되었다. 모노는 대부분 리눅스 배포판을 비롯하여, BSD, macOS, 윈도우, 솔라리스, 안드로이드 등을 비롯하여, 플레이스테이션3, 엑스박스 360 같은 콘솔 게임기 같은 많은 운영 체제에서 실행할 수 있는 장점이 있다.

모노는 개발 초기에는 닷넷 프레임워크을 개발한 마이크로소프트에 맞서기 위해서 개발했는데 문제는 모노를 개발하면서 닷넷 프레임워크를 구현 시키기 위해서는 일부 닷넷의 특허를 사용해야 한다는 문제점이 있다. 당시 마이크로소프트는 폐쇄적인 사유 소프트웨어 정책을 펼치기로 유명해서 초창기에 개발된 모노는 특허 침해에 대한 많은 소송전을 맞서야 했다. 그러나 최근에 마이크로소프트가 폐쇄적인 정책을 버리고 오픈 소스 정책을 추진하기 시작하면서, 닷넷을 오픈 소스화 시켰고, 모노의 개발을 양도를 받으면서 자마린에서 활용할 수 있도록 개발하고 있다.

실행 환경[편집]

모노의 실행 환경은 다양한 CPU 아키텍처 형의 JIT(Just-In-Time) 컴파일 엔진을 포함하고 있으며 동작하는 CPU 아키텍처는 다음과 같다.

  • IA-32
  • IA-64 및 AMD64
  • SPARC 및 SPARC64
  • PowerPC
  • ARM
  • S390(32비트 및 64비트 모드)

모노의 구성 요소[편집]

모노는 다음과 같은 구성 요소를 가지고 있다:

  1. 중심 구성 요소
  2. 모노/리눅스/그놈 개발 스택
  3. 마이크로소프트 호환 스택

모노의 중심구성요소는 C# 컴파일러, 가상머신 그리고 기본 클래스 라이브러리를 포함하고 있으며, 이들 구성요소들은 ECMA-334와 335 표준에 기반으로 하고 있다.

같이 보기[편집]

각주[편집]

외부 링크[편집]