ru:docs:general:index

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
ru:docs:general:index [2013/03/14 23:02] – removed valeriusru:docs:general:index [2014/06/12 21:45] – [Общий дизайн] valerius2k
Line 1: Line 1:
 +===== osFree Whitepaper =====
 +
 +{{logos:fiasco.png?35}}{{logos:os2.gif?35x35}}{{logos:dos.gif?35x35}}{{logos:win16.gif?28x35}}{{logos:win32.gif?28x35}}{{logos:linux.jpg?35x35}}{{logos:java.gif?35x35}}
 +
 +Проект osFree нацелен на создание операционной системы, поддерживающей OS/2-совместимую personality как базовую. Мы использовали следующие принципы в нашем исследовании и разработке:
 +
 +  * Удобство в использовании
 +  * Расширяемость
 +  * Открытость
 +  * Простота
 +
 +В результате, мы имеем следующие соображения:
 +
 +  * использовать [[wp>IBM_Common_User_Access|CUA]] для удобства и визуальных стандартов интерфейса (см. IBM [[wp>IBM_System_Application_Architecture|SAA]] [[wp>IBM_Common_User_Access|CUA]])
 +  * использовать принципы [[wp>Object-oriented_programming|ООП]] и модульности на основе использования микроядра и [[wp>IBM_System_Object_Model|SOM]], вместе с бинарной совместимостью с существующими компонентами для Расширяемости
 +  * Документированность и Open-source для Открытости
 +  * Все вышеперечисленное для Простоты
 +
 +
 +==== Общий дизайн ====
 +
 +Мы предполагаем использовать некоторые, или большинство принципов построения, на которых была основана OS/2 PPC, с некоторыми уточнениями. Поскольку поддержка OS/2 является нашей первичной целью, то, конечно же, мы предполагаем использовать в готовом виде  большинство OS/2 технологий.
 +
 +В основе системы, мы собираемся использовать микроядро L4 как базу системыы. Поверх L4 мы планируем построить следующие OS personalities (индивидуальные ОС):
 +
 +  * Нейтральную personality
 +  * OS/2 personality
 +  * Linux personality
 +  * MVM/DOS personality
 +  * Win16 personality
 +  * Win32 personality
 +
 +**[[en:docs:general:neutral|Neutral personality]]** или **Personality-нейтральные сервисы** это базовое ОС API. Это набор серверов и библиотек, предоставляющие разные сервисы. Все другие personalities построены поверх Нейтральной Personality. Скорее всего, многие API нейтральных сервисов будут использованы почти в готовом виде (в виде простых врапперов) API нейтральной personality можно сравнить с Native NT API -- они почти функционально эквивалентны.
 +
 +**[[en:docs:general:os2|OS/2 personality]]** должна предоставлять полное (или подмножество) OS/2 API. На первом этапе мы собираемся разработать базовые 32-бит API. 
 +
 +**[[en:docs:general:linux|Linux personality]]** должна предоставить полную функциональность ядра Linux.   Linux в данный момент является одной из mainstream OS. Она представляет собой инструментальную среду. которая предоставляет множество утилит для разработки, библиотек и приложений, и мы собираемся использовать Linux как одну из главных платформ для разработки. Для этого мы собираемся использовать результаты проекта L4Linux.
 +
 +**[[en:docs:general:mvm|MVM/DOS personality]]** должна предоставлять функциональность DOS, или, в более ширроком смысле, среду для запуска множества виртуальных машин с немодифицированными ОС. DOS поддерживалась оригинальной OS/2 и она до сих пор используется многими. Для нас это направление очень перспективно, хотя и имеет меньший приоритет, чем разработка OS/2 personality, поэтому мы возможно, воспользуемся наработками других проектов. накпример QEMU, DosBox, DosEmu, FreeDOS.
 +
 +**[[en:docs:general:win32|Win32 personality]]** должна предоставлять частичный или полный набор Win32 API. Windows это тоже одна их mainstream OS и мы  тоже не можем игнорировать ее присутствие. **Если** получится пара-виртуализировать ReactOS (есть идея насчет написания HAL-а, работающего поверх l4env/l4re), то мы этот результат используем для поддержки Win32 API. В противном случае, будут использованы результаты проекта WINE.
 +
 +При желании, вы можете сюда добавить нужную вам personality.
 +
 +На данный момент, мы закончили выбор файловой системы и процесса загрузки. Мы используем готовую, традиционную для OS/2, концепцию [[en:ibm:ifs|IFS]]. Наиболее заметное отличие от обычной OS/2 это отсутствие MiniFSD (как это было в OS/2 PPC) и 32-битный главный [[en:ibm:ifs|IFS]] драйвер. Более подробно о процессе загрузки можно прочитать здесь: [[en:docs:boot:index|Руководства по процессу загрузки]].
 +
 +Для общих указаний по разработке см. [[en:develop:guidelines|Справочник для разработчика]].
 +
 +~~DISCUSSION~~