Mono for Windows что это за программа

Какой смысл Mono в Windows?

Это может быть глупый вопрос. но я просто смотрел проект Mono, и у них есть раздел об установке Mono в Windows, Но, поскольку Windows, очевидно, уже имеет среду выполнения .NET, может ли кто-нибудь сказать мне, что именно означает, что Mono для Windows? Помогает ли это с развитием кросс-платформы или чем-то еще?

12 ответов

62 Решение Kibbee [2009-04-15 16:21:00]

Поскольку Mono не реализует .Net 100% то же, что и MS.Net Framework, хорошо, что вы можете протестировать Mono без необходимости запуска в Linux. Также Mono имеет привязки для создания форм с GTK, которые MS не поддерживает.

Есть несколько возможностей Mono, которые .NET не делает.

Моно очень модульно. Вы можете разбить его на мелкие кусочки и развернуть только те части, которые вам нужны. Не хотите System.Xml? Хорошо, все прошло.

Моно вложимо. Вы можете разместить его внутри своего приложения C/С++, чтобы пользователи могли script из безопасной управляемой изолированной среды. Наиболее известным примером этого является mod_mono, в котором размещается Mono внутри веб-сервера Apache, и как, например, реализуется ASP.NET в Mono. Эта функция отлично сочетается с упомянутой выше модуляцией.

OneDrive Setup ГРУЗИТ систему

Это уже упоминалось: статическая привязка. Также отлично сочетается с модуляцией.

Компилятор как услуга — еще один. Андерс Хейлсберг говорил об этом в течение долгого времени, и, может быть, может быть, он будет готов к С# 5.0. Ну, у Моно уже есть это, и на самом деле это было в течение многих лет.

Miguel de Icaza, Mono Lead Developer также имеет инициативу, которую он называет «Embrace and Extend.NET», которая расширяет CLI способами, которые не могут (в настоящее время) возможны с другими реализациями CLI (включая .NET). Пока что Embrace и Extend.NET имеют три функции.

Mono.Simd, который обеспечивает безопасный и контролируемый доступ к инструкциям SIMD базового ЦП (например, SSE на Intel или AltiVec на PowerPC). Используется для игр и графики.

64 Бит-массивные индексы, которые разрешены спецификацией ECMA, но Mono — единственная виртуальная машина, которая фактически предоставляет их. Используется в суперкомпьютере.

И совсем недавно, продолжения. Это первый раз, когда Mono выходит за пределы области спецификации: индексы длинного массива отлично действуют в соответствии с спецификацией, а Mono.Simd также работает над каждой реализацией, совместимой с CLI (хотя и очень медленной), но Mono.Tasklet нуждается в специальных поддержка от VM, которая не является частью CLI или .NET. Это используется для логики игры и, например, в Second Life.

Mono делает то, что не делает .Net.

Например, mono поддерживает статическое связывание, поэтому вы можете создавать, компилировать и распространять свое приложение, не требуя отдельного установщика во время выполнения. Если вы создали приложение, которое полагается на моно для кроссплатформенности, есть некоторые отличия от .Net, и поэтому придерживаться моно в Windows — это лучшая гарантия совместимости.

Что такое framework? Объяснение для новичков

.Net делает некоторые вещи, которые моно не делает.

В BCL есть несколько мест, которые еще не перенесены для моно, например, WPF и Winforms.

Если вам нужно приложение, которое будет также работать на Mac/Linux, вы, вероятно, сначала захотите разработать его для моно, даже если вы выполняете большую часть работы с Windows.

Примечание: все это предшествует .Net Core/Standard.

Зачем нужна Windows, когда вы можете запустить реальную вещь?

Существуют различные причины:

Поддержка Windows помогает нам идентифицировать переносные части Mono из не переносных версий, помогая Mono стать более будущее.

Это помогает нам, так как мы можем изолировать проблемы в Моно разбиение проблемы (это время выполнения или проблема с ОС?).

Около половины участников Mono являются разработчиками Windows. Они имеют много разных причин для способствуя усилиям, и мы считают очень важным разработчики запускают среду выполнения в Windows не заставляя их использовать новую операционная система.

Mono не сильно модифицирует реестр Windows, обновляет системные DLL, установить DLL на Windows/System32 дорожка.

Это помогает разработчикам Windows проверить свой код под Моно, прежде чем они будут внедрены в Linux.

Моно и приложения, встраивающие Mono, могут быть развернуты без (вы можете «xcopy» развернуть свои приложения и требуемого Моно файлов без установки .NET. во время выполнения).

Если вы хотите разработать кросс-платформенное приложение на С#, то использование Microsoft не является самым умным, поскольку нет полностью совместимой альтернативы для других платформ.

Читайте также:
Sparx что это за программа

Таким образом, использование Mono для Windows для разработки приложений гарантирует, что у вас мало проблем с переносом на другие ОС (если вы избегаете других ям, таких как P/Invoke).

8 jpobst [2009-04-15 17:57:00]

Некоторые люди использовали его, потому что им не разрешено устанавливать .Net-инфраструктуру на своих ПК с Windows из-за количества файлов реестра и системных файлов. (В сильно контролируемых средах.)

Моно, с другой стороны, содержится в программных файлах самостоятельно и записывает только раздел реестра с указанием пути (который не нужно запускать).

Я думаю, что это глупо, но это то, о чем нам говорили несколько пользователей.

В основном это помогает в разработке приложений Mono для конкретных библиотек Mono. Также, чтобы помочь продвинуть дело, чтобы разработчики могли работать в своей естественной среде при разработке для Mono.

В то время как не имеет большого интереса, есть несколько случаев, когда моно имеет улучшения по сравнению со стандартным временем выполнения Microsoft. В этом году Мигель рассказал о некоторых из них в PDC:

Смотрите эти сообщения:

  • Видео презентации
  • Поддержка SIMD и игры

даже если у вас есть программа, динамически связанная с Mono, вы можете иметь эту скомпилированную .exe и Mono runtime на pendrive и перейти на другой компьютер без .NET/Mono и запустить эту программу на новом ПК без какой-либо установки времени исполнения, т.е. он ведет к портативным приложениям (особенно полезным в качестве переносных приложений для USB-накопителей) Это невозможно с .NET. У вас должно быть время выполнения .NET, установленное определенным способом установки, то есть время выполнения, содержащее копию папки и вставку, невозможно.

1 Zifre [2009-04-17 02:08:00]

Я думаю, что основная причина, по которой они это сделали, — это то, что они могут запускать приложения .NET на Mono и .NET бок о бок, чтобы сравнить их. Кроме того, существует несколько приложений, которые зависят от библиотек Mono.

Чтобы добавить к многочисленным причинам, упомянутым в других ответах, Mono для Windows может потребоваться установить на Wine, чтобы разрешить запуск приложений .Net внутри Wine.

Источник: qarchive.ru

Что такое Mono и как это помогает Windows Switchers, новым для Linux?

более популярные операционные системы (определенно не мнение).

Однако один из его недостатков связан с его меньшей популярностью на настольных ПК: доступность программ. К счастью, есть вещи, которые могут помочь этому, Моно будучи одним из них.

Программные рамки: строительные блоки

Программные платформы не самые захватывающие вещи, но они полезны по-своему, работают за кулисами. Они позволяют людям легко разрабатывать приложения для других, не начиная полностью с нуля. Моно является одним из них, как и .NET Framework

Эти платформы могут варьироваться от использования для конкретных настольных сред

к чему-то доступному для нескольких операционных систем. Например, рабочий стол KDE Plasma

имеет несколько программ, которые облегчают написание интегрированных, собственных приложений. Это включает их собственную IDE (интегрированную среду разработки) под названием KDevelop.

Linux Mono Kdevelop

Это может иметь много преимуществ для конечных пользователей. Разработчики могут создавать приложения

быстрее, легче и, как таковое, может намного быстрее вносить изменения и улучшения. Когда вы стоите на плечах гигантов, достижение этой дополнительной высоты становится менее болезненным.

Некоторые фреймворки носят кроссплатформенный характер — написанные на них программы могут работать между различными операционными системами.

, Это полезно как для разработчиков, так и для конечных пользователей. С одной стороны, такие программы могут охватить больше людей, а с другой — более высокую надежность благодаря более широкой пользовательской базе.

Что такое моно?

Mono — пример кроссплатформенного фреймворка, доступного в Windows, macOS

, Linux и многое другое. Это было сначала разработано как открытый источник

реализация .NET Framework в Linux. Оттуда он превратился в нечто большее, поддерживающее несколько разных операционных систем.

моноплатформы linux

Mono (как .NET) тесно связан с языком программирования C #, известным своим высоким уровнем переносимости. Например, игровой движок Unity

использует C # как кроссплатформенный способ создания видеоигр. Отчасти это связано с дизайном языка. C # можно превратить в CIL (Общий промежуточный язык), который может быть скомпилирован

в нативный код (быстрее, менее переносимый) или через виртуальную машину

(медленнее, более портативно). Mono предоставляет средства для компиляции и запуска программ на C #, аналогично .NET Framework.

В наши дни оно разработано владельцами программного обеспечения, которое оно пыталось эмулировать: Microsoft. С открытым источником

Mono больше похож на него, чем когда-либо прежде, и способен интегрировать свой код в собственный дизайн. Проект также включает в себя специальную IDE (интегрированная среда разработки)

называется MonoDevelop, немного похоже на Linux-эквивалент Visual Studio.

Linux Mono Monodevelop

Моно и кроссплатформенные приложения

Учитывая все это, совершенно очевидно, что кроссплатформенность Mono весьма полезна для людей, переходящих на Linux из Windows.

, Он действует в качестве еще одного связующего звена между двумя операционными системами для устранения одной из самых больших проблем переключения: эксклюзивное программное обеспечение

Есть ряд программ, которые написаны на моно. Эти приложения имеют высокий шанс быть кроссплатформенным

, доступно между несколькими операционными системами. Наряду с этим Mono фактически поддерживает множество двоичных файлов .NET

Читайте также:
Программа лояльности бургер кинг что это

из коробки (то есть C # EXE-файлы

написано в Visual Studio). Таким образом, вполне возможно, что программы .NET, еще не работающие в Linux, вполне могут появиться в будущем.

Вы даже можете использовать одно из этих приложений, не зная об этом!

KeePass

отличный оффлайн менеджер паролей Это означает, что в отличие, скажем, от LastPass

Ваша информация не связана с сервером для удобства. Но это может быть достойной ценой за более высокий уровень контроля в ваших руках.

Он также написан на Mono, что позволяет ему работать на разных платформах. Хотя он в основном ориентирован на Windows, это также означает, что он поддерживает и macOS, и Linux. Хотя это может показаться не очень родным, но работает просто отлично. Плюс, доступность ваших паролей является достаточным преимуществом.

linux mono keepass

грибковое поражение кожи

Лучший способ описать Pinta — это кроссплатформенная версия Paint.NET (которая, в свою очередь, является лучшей версией Microsoft Paint).

). Это довольно простое приложение с достаточными возможностями для редактирования и создания изображений. В отличие от KeePass, он выглядит немного лучше между различными операционными системами.

Пинта Линукс моно

К сожалению, это также демонстрирует несколько ограничений Mono. Paint.NET, приложение, которым оно было вдохновлено, в конце концов, было написано с использованием .NET Framework

и до сих пор остается только Windows. В то время как большинство вещей могут работать между ними, если программа опирается на специфические компоненты Windows платформы, вам нужно искать альтернативы

Wine + Mono = Лучшая совместимость

Mono также может помочь переключателям Windows путем расширения Wine

слой совместимости, позволяющий пользователям запускать приложения Windows. Wine реверсирует много функциональных возможностей Windows, и переводит это поведение в их эквиваленты Linux. Таким образом, он может запускать много программ, не предназначенных для Linux, как если бы они были.

Фактический установочный файл Mono содержит ряд программных библиотек, компонентов, из которых могут строить другие программы. Они предназначены для реализации максимально возможного количества .NET Framework (хотя и кроссплатформенного). Из-за этого многие вещи, написанные для Windows с использованием упомянутого фреймворка, будут работать и под Mono.

Линукс моно компоненты

Wine может использовать в своих интересах всю работу, которую Mono проделал за эти годы, используя ее для запуска приложений .NET или даже программ с указанными компонентами внутри. Некоторые игры

Например, полагаться на рамки в некоторой степени.

Mono в мире с открытым исходным кодом .NET

Как упоминалось ранее, большая часть .NET Framework теперь с открытым исходным кодом, и еще больше. Уже можно (в некоторой степени) воспользоваться этим на платформах, отличных от Windows. Тогда один может задаться вопросом, как Mono все еще может быть полезен для людей.

Ответ на этот вопрос довольно прост: многие из используемых компонентов .NET невидимы для конечных пользователей. Все еще довольно сложно создавать кроссплатформенные графические приложения, используя только открытую среду Microsoft. Mono, с другой стороны, хорошо зарекомендовал себя, имея несколько способов написания программ, выглядящих нативно, без особых хлопот. И это будет только расти,

Конечно, когда компоненты с открытым исходным кодом .NET станут более устоявшимися, он получит многие из преимуществ, которые в настоящее время предоставляет Mono. И это может быть полезно только для Linux, а также для пользователей, которые могут захотеть перейти на него. В конце концов, всегда приветствуются более портативные приложения.

Как вы справляетесь с разрывом приложений в Linux?

Кредит изображения: OndrejProsicky / Depositphotos

Источник: helpexe.ru

Mono 5.2.0

Mono — это передовая и надежная программная платформа, которая предоставит разработчикам возможность легко создавать мультиплатформенные приложения. Mono включает в себя богатый набор компонентов, таких как:

* C # Компилятор
Это мощная утилита, которая поможет вам скомпилировать C # версии 1.0 и 2.0. Различные функции C # 3.0 также доступны.

* Mono Runtime
Среда исполнения Mono — это компонент, который реализует инфраструктуру общего языка и предоставляет компилятор Just-in-time. Кроме того, инструмент поставляется с сборщиком мусора, несколькими функциями взаимодействия, системой потоков и загрузчиком библиотек.

* Библиотека базовых классов
Mono объединяет богатый набор классов, обеспечивая надежную основу для всех ваших приложений. Классы поддерживают классы MS .Net Framework.

* Mono Class Library
Утилита поставляется с огромным набором классов, которые значительно расширят функциональность программы при создании приложений для Linux.

Название Версия Разработчик Домашняя страница продукта Лицензия Загрузки прошлой недели Все время загрузки Имя файла Размер файла Контрольная сумма MD5 Поддержка ОС Категория
Моно
5.2.0
Novell, Inc.
Моно
Бесплатно (Freeware)
10
1531
MonoFramework-MDK-5.2.0.224.macos10.xamarin.universal.pkg
323.0MB
34DAF33C0A518675F66D833704DD729B
Mac OS X, Mac Другое

Похожие программы

Video LightBox 1.11.3

Добавьте видео на свой сайт со стильным всплывающим видео эффектом.

Free MP3 Cutter and Editor Portable 2.8.0 Build 1306

Легкая, портативная и простая в использовании программа, которая поможет вам редактировать файлы MP3.

Gtk# 2.12.26

Набор инструментов GUI для .NET и Mono.

Visual Watermark 4.63

Применить водяные знаки к сотням фотографий одним щелчком мыши.

VistaDB 5.2.2.1587

Полностью управляемый и полностью интегрированный движок базы данных SQL.

SMSC client .NET 7.0.52

Установочный пакет клиента SMSC .NET.

LinqConnect 4.7.1249

Мощное решение ORM, которое предлагает поддержку широкого спектра типов баз данных.

Читайте также:
Audio driver что это за программа
Musereo Mono to Stereo Converter 2.9.0.1486

Простое и удобное в использовании приложение для обработки аудиофайлов.

Источник: soft-gid.com

unixforum.org

Запуск программы под Mono (Ничего в моно не понимаю, но есть потребность в запуске проги.)

Софт под Linux, разные программы, но только связанные с Linux

Модератор: /dev/random

10 сообщений • Страница 1 из 1
ReX Madgere Сообщения: 275 ОС: Debian Etch

Запуск программы под Mono

Сообщение ReX Madgere » 09.02.2007 23:44

Есть программа написаная на C#, очень хочется иметь её и под линуксом. В тупую запуск mono ./overley.exe выдает ошибки и ничего не запускается.
Можно ли её вообще запустить в линуксе или дело гиблое?

Спасибо сказали:
Denjs Сообщения: 1685 ОС: SuSe 10.2

Re: Запуск программы под Mono

Сообщение Denjs » 11.02.2007 22:53

09.02.2007 23:44

Есть программа написаная на C#, очень хочется иметь её и под линуксом. В тупую запуск mono ./overley.exe выдает ошибки и ничего не запускается.
Можно ли её вообще запустить в линуксе или дело гиблое?


а с чего это вдруг должно работать

mono ./overley.exe
wine ./overley.exe

да и c# и mono тут вообще ни при чем если вам надо exe запускть.

а вот если надо c# исходник перекомпилить под линукс — тогда наверное да. нужен mono.

QDroid — Среда исполнения и фреймворк для QtScript.
OTPD — Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).

Спасибо сказали:
diesel Бывший модератор Сообщения: 5989 ОС: OS X, openSuSE, ROSA, Debian Контактная информация:

Re: Запуск программы под Mono

Сообщение diesel » 11.02.2007 22:59

11.02.2007 22:53
да и c# и mono тут вообще ни при чем если вам надо exe запускть.

mono очень даже причем.
Спасибо сказали:
ReX Madgere Сообщения: 275 ОС: Debian Etch

Re: Запуск программы под Mono

Сообщение ReX Madgere » 11.02.2007 23:36

Угу, имеет самое непосредственное отношение.
.net по типу явы, выполняется в виртуальной среде, вот эту самую среду моно и делает. Но похоже в ней по сравнению с нетом чего-то не хватает. Вот мне и интересно можно ли как-то подогнать прогу что бы запускать под моно или дело гиблое и проще начать переписывать прогу на чём-нибудь другом.
Прога довольно уникальная, поэтому деваться особо некуда.

Спасибо сказали:
prokoudine Сообщения: 688

Re: Запуск программы под Mono

Сообщение prokoudine » 14.02.2007 12:46

09.02.2007 23:44

Есть программа написаная на C#, очень хочется иметь её и под линуксом. В тупую запуск mono ./overley.exe выдает ошибки и ничего не запускается.
Можно ли её вообще запустить в линуксе или дело гиблое?

Скорее гиблое. Нужны исходники.

Если бы всё было так просто, вместо GIMP для простых операций уже года полтора как под линуксом использовали бы Paint.Net — как есть, бинарником. А так пересобирать приходится. Благо исходники открыты и лицензия — BSD.

Спасибо сказали:
i18n Сообщения: 192

Re: Запуск программы под Mono

Сообщение i18n » 14.02.2007 13:21

Исходники на сайте есть. Только это гиблое дело, в них все на функции GDI через PInvoke повязано, нужно переделывать изрядное количество кода. Не для всех функций GDI есть прямые аналоги в System.Drawing, да и от hdc там тоже нужно везде избавится. Хотя в принципе портировать при желании можно.

Спасибо сказали:
i18n Сообщения: 192

Re: Запуск программы под Mono

Сообщение i18n » 14.02.2007 13:51

Проверил, под mono 1.2.3 она запускается, судя по всему разработчики в этой версии mono добавили наиболее распространенные вызовы PInvoke. Только все равно пользоваться не получается, там с путями проблемы и с device context. В общем только портировать.

Спасибо сказали:
Horrible Сообщения: 256 Статус: Emacs geek ОС: Emacs Контактная информация:

Re: Запуск программы под Mono

Сообщение Horrible » 14.02.2007 15:44

я незнаком с C# и .NET но возможно программа написана не чисто на технологии .NET а и ещё например с использованием winapi? Или такого небывает?

Спасибо сказали:
i18n Сообщения: 192

Re: Запуск программы под Mono

Сообщение i18n » 14.02.2007 16:22

Там как раз такой случай. Сама программа написана на C#, но через PInvoke обращается к Win32 API, в принципе там большая часть платформозависимого кода собрана в одном месте, поэтому можно её портировать и на mono под Linux. Исходники на сайте доступны, но о лицензии в них вроде как не упоминается, так что не понятно, можно ли программу модифицировать. В принципе было бы лучше заменить Windows Forms на GTK#, но это значит практически полностью переписать программу.

Спасибо сказали:
ReX Madgere Сообщения: 275 ОС: Debian Etch

Re: Запуск программы под Mono

Сообщение ReX Madgere » 14.02.2007 23:56

i18n

Ясно, спасибо за ответ.
Думаю автору абсолютно побоку, он просто себя не утруждал каким бы то ни было лицензированием.
Жаль, что всё так тускло, я недостаточно разбираюсь в программировании, что бы что-то править в таких объёмах и такой сложности
Продолжу тогда изучении С++, может отднажды всё таки её перепишу.

Источник: unixforum.org

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru