Есть ли способ загрузить код, написанный на управляемом языке?
Вопрос говорит обо всем. Могу ли я скомпилировать C# в собственный код и загрузить его? Я знаю о Космосе и Сингулярности, но мне было интересно, есть ли более современные методы или инструменты. Благодарю.
3 ответа
Видимо, вы можете скомпилировать в нативный код, используя Mono:
http://www.mono-project.com/Mono:Runtime
Тем не менее, вы не сможете написать ОС с этим. Невозможно написать целую ОС на C#, Cosmos и Singularity будут иметь части, которые не являются управляемым кодом.
Или, конечно, вы можете настроить свой код на загрузку при запуске Windows - приложения.NET будут нормально работать после загрузки Windows до экрана входа в систему и за ее пределами.
Что именно вы подразумеваете под "загрузкой"... Если вы подразумеваете "загрузку на машине как ОС", вам нужно настроить загрузчик и переписать большинство функций C# самостоятельно. Вы также должны были бы настроить все специфичные для машины функции из языка более низкого уровня (ассемблер /c[++]/etc). По сути, нет способа загрузить его без значительного объема работы.
Одним из вариантов будет создание службы Windows, которая настроена на запуск с системой. Я считаю, что есть и другие способы сделать это, но это может быть "самый простой".