Пользователь
Забыли пароль? Регистрация
Сейчас на сайте

Пользователей на сайте: 591

0 пользователей, 591 гость

Singularity

#1
volk
  • Статус: VIP персона
  • Сообщения: 13759
  • Карма: 1581
  • Возраст: 54
  • Пол:
Singularity - новая ОСь от Microsoft (2009/ENG)
User posted image
Многие уже наслышаны о супер мега проекте от Microsoft - новой операционной системе Singularity. Microsoft решила с нуля попробовать написать ОСь используя "безопасное программирование", которое на корню будет пресекать баги различного рода. Для этого решили использовать "безопасные" языки программирования C#, Sing#, ну и кое-где си и ассемблер. Так вот, совсем недавно были открыты исходники первых наработок этой операционной системы и в этой статье : как можно скомпилировать эти самые исходники и запустить всё это дело на виртуальной машине



Год выпуска: 2009
Разработчик: Microsoft
Совместимость с Vista: неизвестно
Язык интерфейса: только английский
Размер: 228 MB
Таблэтка: Не требуется

Системные требования: по данным от Microsoft, необходима машина с 1,5 GB свободного места для исходников и будущих бинирников, плюс 512 Мб ОЗУ.

Прежде чем присутпить к работе несколько слов о Singularity. Главной особенностью операционки является модель SIP (Software-Isolated Process). Каждый процесс изолирован друг от друга, но сообщения между ними могут передаваться посредством двунаправленных, строго типизированных высокоуровневых каналов.

Теперь что касается ПО. Сами исходники Singularity . Интересной особенностью является то, что есть возможность отладки ядра операционной системы, поэтому будет не лишне проинсталлировать комплект утилит для этого дела. Т.к. ОСь завязана на Framework'e, то и его необходимо будет поставить, если конечно же он у вас уже не стоит. Работать всё будет на виртуальной машине, поэтому ставим ещё систему виртуализации Microsoft Virtual PC 2007. Тем, кто уже сталкивался с виртуальными ОС, наверняка знаком такой продукт как VMware - это тоже самое, только от Microsoft. Если ещё будет желание попробовать написать первые программы или вири и тем самым прославиться, то ещё нужно поставить Microsoft Visual Studio 2005 или Microsoft Visual Studio 2008. На этом всё, больше ничего не понадобится.

Доп. информация:
- Компилируем
Итак, самое интересное. Распаковываем скачанные исходники и запускаем командный файл configure.cmd.
После этого на рабочем столе появится ярлычёк Singularity RDK 1.1. Это наша шел среда для конфигурирования и собственно компилирования всех составляющих новой операционной системы. Запускаем шел через ярлык или, если вы ярый ненавистник ярлыков на рабочем столе, то идём в папку base и запускаем setenv.cmd.
Помимо него в папке base существуют следующие подпапки:
Applications - тут примеры исходничов под Singularity. Много интересного, различные примеры работы с сетью и прочее.
Boot - Исходники загрузчика преимущественно на си плюх плюх и асме.\
Build - Тут куча компиляторов, библиотек, тулз.
Contracts - тут какие-то определения класов.
Distro - Файлы проектов. Сюда упадут бинарники для запуска после компиляции операционки.
Drivers - Исходники драйверов. Интересно то, что дрова написаны исключительно на C# и Sing#.
Interfaces - Определения интерфейсов.
Kernel - Эх, само ядро с CLR компонентами, а в папке Native с неуправляемым кодом.
Libraries - Исходники библиотек.
Options - Файлы конфигурации.
Services - Исходники служб.
Windows - Исходники утилит для старта на Windows.

Идём дальше - заходим в папку Distro. Тут нам предоставляется выбор какой билд мы хотим получить. В зависимости от взятого проекта мы получим соответствующие билды. Для выбора нам предоставляются: Tiny, Small, BVT, SPECweb99 или World. Разница между ними следующая:
Проект Tiny предусматривает сборку только ядра, менеджера тома и самой командной строки - самый лёгенький проект;
Проект Small - всё что включает в себя Tiny, плюс сетевой стек;
Проект BVT - сделаю предположение, что это адбевиатера от build verification test т.е. приёмочное тестирование. Это одно из стадий тестирования программного обеспечения, которое призвано бегло пробежаться по продукту и дать оценку, готово ли оно для тестирования вообще. Если посмотреть во внутрь проекта, то можно увидеть, что здесь уже намного больше объявлено компонентов для сборки. Компоненты распределены по группам: Apps, Benchmarks, Tests, Drivers и Services. Изходя из списка уже можно представить, что попадёт в сборку;
Проект SPECweb99 - SPECweb99 - это набор тестов для www серверов для оценки на сколько хорошо система будет показывать себя как сервер в сети. Как ни странно, в этом проекте добавлен компонент SpecWeb99 specific ну и добавилось парочка драйверов;
Проект World - здесь всё просто, в сборку попадает всё, что написали.
Выбираем понравившийся нам проект и даём следующую команду нашему шелу (без скобочек) "msb Distro\имя_проекта.proj".

Пример:
msb Distro\World.proj

Ждём несколько минут пока сбилдится проект. Tiny.proj собирается за пару минут, а вот сборка проекта World.proj может занять около часа. По окончании выполняемой операции должна появится надпись "Build Succeeded.", говорящая о том, что всё прошло успешно и путь к лог файлику, просмотрев который можно увидеть все произведённые операции. А результатом операции стало появление в корне новой папки - base.obj.

Теперь по поводу необычной команды msb. Это просто командный файлик, который лежит в папке Build. Он запускает утилиту msbuild.exe, которая исталируется вместе со вторым Framework'ом, msbuild.exe - это компилятор для командной строки по типу make в unix системах. В процессе сборки порадовала надпись "Found 2 processors.", говорящая о том, что уже эта достаточно сырая версия умеет работать с многопроцессорными системами.

Идём дальше, теперь удалим все ненужные сборочные файлы командой msb /t:Clean Distro\имя_проекта.proj.

Пример:
msb /t:Clean Distro\World.proj

Они могут достаточно много места занимать на диске (до гектара), так что лучше их убить.

- Запускаем.
Singularity поддерживает несколько видов загруки - Network и с накопителей CD-Rom, FAT Hard Disk и USB. Для того, что бы можно было использовать Network загрузку, необходимо добавить новое сетевое соединение. Делается это следующим образом:
Заходим в панель управления и жмем Add Hardware -> Next.
В появившемся окне выбираем Yes, I have already connected the hardware -> Next.
Далее в самом низу вибираем Add a new hardware device -> Next.
Install the hardware that I manually select from a list (Advanced) -> Next.
Из списка выбираем Network adapters -> Next.
В качестве сетевого адаптера выбираем Microsoft Loopback Adapter -> Next -> Next ->Finish.

Теперь необходимо сконфигурировать наш новый сетевой адаптер.
Вызываем свойство (Properties) "Сетевого окружения" (Network Connections), видим там Наш Microsoft Loopback Adapter. Переименовываем его в Loopback.
Теперь заходим в свойства (Properties) сетевого адапетра Loopback.
На вкладке General в самом низу выбираем Internet Protocol (TCP/IP), делее заходим во свойства (Properties).
Выбираем "Использовать следующий IP адрес" (Use the following IP address) и вводим 10.99.99.1 для IP адреса и 255.255.255.0 для маски подсети (Subnet mask). Первичные и вторичные ДНС сервера оставляем пустыми. Нажимаем кнопку ок.
Переходим на вкладку Advanced, в разделе Windows Firewall нажимаем кнопку Settings... и переходим на вкладку Exceptions.
Нажимаем кнопку Add Port… , и добавляем 2 параметра с именем DHCP, номер UDP порта 67 и так же добавляем TFTP c UDP портом 69. Эти протоколы будут использоваться для загрузки Singularity.

Далее заходим в папку boot и копируем в корневую папку файл pxe.vmc с новым именем. Это файл виртуальной машины Microsoft Virtual PC 2007 в которой будет определён способ загрузки ОС. Или же просто выполняем следующую команду - copy boot\pxe.vmc singularity.vmc. Далее, выполняем команду - boottest.cmd mypc.vmc. Будет запущен ISO образ из папки base.obj\Distros, который был сгенерирован до этого. Для запуска в дебаг режиме выполняем команду - dbg.cmd /pipe & boottest.cmd mypc.vmc.

Можно попробовать запустить сетевую загрузку.
Делается это с помощью ключика /net. Используем следующим образом - boottest.cmd /net mypc.vmc. Такая загрузка будет происходить на порядок дольше по сравнению с загрузкой с ISO образа. После окончания загрузки ядра мы может увидеть командную строку. Да да, никаких окошечек Иксов пока ещё не написали. Набираем help и видим список доступных команд.

Интересна команда bvt, которая тестирует множество компонентов.
Тестирование будет проходить достаточно долго, так что запасаемся терпением и бегло читаем лог. Вот в принципе и всё

Доп. информация (цитата из популярного журнала):
Корпорация Microsoft в ходе ежегодной конференции TechFest в Редмонде (штат Вашингтон) представила операционную систему под названием Singularity.

В Microsoft сразу же оговариваются, что Singularity не является следующей версией Windows. Новая программная платформа разрабатывается в рамках экспериментального проекта и ориентирована на применение исключительно в исследовательских целях. Рик Рашид, генеральный директор подразделения Microsoft Research, называет Singularity "концепт-каром", на котором будут обкатываться новые технологии.

Singularity разрабатывалась с чистого листа. При проектировании операционной системы большая часть усилий была направлена на обеспечение надежности. Например, процессы в это операционной системе выполняются в специальных изолированных "контейнерах" - так называемая технология Software Isolated Processes (SIP). При написании кода Singularity используется комбинация языка C# и языка Sing#, производной C#.

Бесплатный инструментарий для разработки приложений для программной платформы Singularity и ее исходный код доступны на сайте CodePlex. Корпорация Microsoft надеется, что операционная система заинтересует программистов и академические учреждения, которые будут использовать Singularity в процессе исследований в области новых компьютерных архитектур.

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

User posted image
User posted image
Скачать Microsoft Singularity - 228 MB

Скачать быстро одним файлом с Onefile.net
http://onefile.net/f/CD67986AB0BF0CA1DE7D11E3424A9045

Скачать одним файлом с vip-file.com
http://vip-file.com/download/9958.91706426...larity.rar.html

Скачать быстро одним файлом с Sms4files.net
http://sms4file.com/download/9623.91706426...larity.rar.html

Скачать одним файлом с letitbit.net
http://letitbit.net/download/9695.91706426...larity.rar.html

Скачать с rapidshare.com
http://rapidshare.com/files/304312096/singularity.part1.rar
http://rapidshare.com/files/304312094/singularity.part2.rar
http://rapidshare.com/files/304312108/singularity.part3.rar
http://rapidshare.com/files/304312098/singularity.part4.rar
http://rapidshare.com/files/304312064/singularity.part5.rar


-

0 пользователя(ей) сказали спасибо:

Пользователи читающие эту тему: 2

1 пользователь, 1 гость