Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision |
ru:docs:general:index [2013/03/14 23:02] – removed valerius | ru:docs:general:index [2018/08/17 13:34] (current) – external edit 127.0.0.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 -- они почти функционально эквивалентны. |
| |
| **[[ru:docs:general:os2|OS/2 personality]]** должна предоставлять полное (или подмножество) OS/2 API. На первом этапе мы собираемся разработать базовые 32-бит API. |
| |
| **[[ru: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. |
| |
| **[[ru: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|Руководства по процессу загрузки]]. |
| |
| Для общих указаний по разработке см. [[ru:develop:guidelines|Справочник для разработчика]]. |
| |
| ~~DISCUSSION~~ |
| |