Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.06.22;
Скачать: [xml.tar.bz2];

Вниз

Написание OS на Delphi   Найти похожие ветки 

 
NaRuTo ©   (2008-05-01 19:37) [0]

Реально ли написать OS на Delphi?


 
Dmitry S ©   (2008-05-01 19:38) [1]

Open Source ? :)))


 
boa_kaa ©   (2008-05-01 19:50) [2]

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


 
korneley ©   (2008-05-01 19:54) [3]


> Реально ли написать OS на Delphi?

Да. Если вспомнить утверждение, что "Delphi написана на Delphi", нет никаких препятствий. Кроме знаний, естественно :)


 
Игорь Шевченко ©   (2008-05-01 19:55) [4]

Нереально


 
NaRuTo ©   (2008-05-01 19:57) [5]


> Игорь Шевченко ©   (01.05.08 19:55) [4]
>
> Нереально

Если не реально то почему?


 
korneley ©   (2008-05-01 19:58) [6]


> Игорь Шевченко ©   (01.05.08 19:55) [4]
> Нереально

Мы же не обсуждаем качества будущей OS :)))


 
Asteroid   (2008-05-01 19:59) [7]

За достаточно большое количество обезьяно-часов ОС на Дельфи будет написана. Хотя Minesweeper для новой ОС теми же обезьянами будет написан раньше.


 
korneley ©   (2008-05-01 20:02) [8]


> Если не реально то почему?

Последнее слово должно быть "зачем?"


 
Тыщ ©   (2008-05-01 20:19) [9]

> Реально ли написать OS на Delphi?

Для этого понадобится написать загрузчик OS, а также загрузчик exe-шников в формате PE и базовые DLL для WinAPI. На Delphi эти вещи никак не напишешь, но если это не принимать во внимание, то реально.


 
Asteroid   (2008-05-01 20:27) [10]

Ничто не мешает написать свой компилятор на Дельфи под нужный формат. Будет ли это считаться "написанным на Дельфи" - вопрос особый :) Но сохранить синтаксис языка для нового компилятора тоже ничто не мешает.


 
korneley ©   (2008-05-01 20:30) [11]


> Для этого понадобится написать загрузчик OS, а также загрузчик
> exe-шников в формате PE и базовые DLL для WinAPI. На Delphi
> эти вещи никак не напишешь

"на Delphi" <> "на паскале" ;)


 
Тыщ ©   (2008-05-01 20:41) [12]

korneley ©   (01.05.08 20:30) [11]

> "на Delphi" <> "на паскале" ;)

Ээ... смысл сего изречения?


 
{RASkov} ©   (2008-05-01 20:59) [13]

> Нереально

+1
Shell какой-нибудь можно под Вин или Юникс, но не ОС...


 
korneley ©   (2008-05-01 21:02) [14]


> Ээ... смысл сего изречения?

Добавим немножечко ASM, который к Delphi тоже имеет отношение.


 
Тыщ ©   (2008-05-01 21:07) [15]

korneley ©   (01.05.08 21:02) [14]

> Добавим немножечко ASM, который к Delphi тоже имеет отношение.

И что это изменит?


 
DVM ©   (2008-05-01 21:09) [16]

Используя Delphi как инструмент написать другой инструмент для создания ОС можно.


 
Игорь Шевченко ©   (2008-05-01 21:21) [17]

Инструмент можно написать. Но это будет OS на инструменте, а не на Delphi.

Что касается загрузчика, то один из посетителей этого сайта писал таковой, правда на паскале, а не на Delphi. MWOS это называлось.
И впрямь загружался.


 
Игорь Шевченко ©   (2008-05-01 21:22) [18]

korneley ©   (01.05.08 19:54) [3]


>  Если вспомнить утверждение, что "Delphi написана на Delphi",
>  нет никаких препятствий


Вот Delphi на Delphi можно написать. И PowerBuilder на Delphi можно написать. А OS нельзя.


 
korneley ©   (2008-05-01 21:26) [19]


> DVM ©   (01.05.08 21:09) [16]

Да можно. И я о том же. Вопрос - "Зачем?" Впрочем, я его уже задавал :)


 
korneley ©   (2008-05-01 21:28) [20]


> Игорь Шевченко ©   (01.05.08 21:22) [18]

У Вас слишком строгие требования к OS :))


 
@!!ex ©   (2008-05-01 21:36) [21]

Четкое определени ОС надо дат, и тогда становится понятно, можно или нельзя.


 
@!!ex ©   (2008-05-01 21:39) [22]

Если взять за основу оперделение с википедии:
Операцио?нная систе?ма, ОС (англ. operating system) — базовый комплекс компьютерных программ, обеспечивающий управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит.
И принять винду - за загрузчик, то ответ ДА. На Дельфи можно написать ОС.


 
NaRuTo ©   (2008-05-01 21:53) [23]

А если какая ни-будь компания напишет свой собственный язык программирования на Delphi, который превосходит С++ в два раза, тогда в этом случае они напишут OS в любом случае!


 
TIF ©   (2008-05-01 22:09) [24]

НУ БЛИН, ОПЯТЬ НАЧАЛИ!

Опять офф-топик начался... СКОЛЬКО УЖЕ ОСБУЖДАЛИ ЭТО НА ЗНАМЕНИТЫХ ФОРУМАХ - и всё без толку

НЕЛЬЗЯ!!!!!!! На C можно (Майкрософтском), на на Delphi  - НЕТ!!!

Как ты собираешься писать ЯДРО? Загрузчик? На Паскале, наверное? Во-во, а это уже не делфи, это Паскаль... ТАК ЧТО ЧИСТО НА ДЕЛФЕ - НЕТ!

Она же позволяет создавать 32-битные приложения ПОД Windows, и консольные тоже 32-битные... Как ты их будешь запускать? а?

Короче, тема закрыта.


 
Игорь Шевченко ©   (2008-05-01 22:11) [25]

@!!ex ©   (01.05.08 21:39) [22]


> Если взять за основу оперделение с википедии:


> И принять винду - за загрузчик


То это будет жонглирование словами

Кстате, по этому поводу много лет велась дискуссия на Королевстве Delphi

http://www.delphikingdom.com/asp/talktopic.asp?ID=211


 
Pavia ©   (2008-05-01 22:12) [26]

Реально сам пишу.


 
Игорь Шевченко ©   (2008-05-01 22:13) [27]

TIF ©   (01.05.08 22:09) [24]

п. 7 рекомендаций из правил форума

"Соблюдайте нетикет оформления веток. Не стоит «кричать» и привлекать внимания к своей теме используя прописные символы, восклицательные знаки в больших количествах и т.п."


 
TIF ©   (2008-05-01 22:14) [28]

ВОТ НА АССЕМБЛЕРЕ ВИДЕЛ ОПЕРАЦИОНКУ! Смотрится классно, иконки, рабочий стол, фоновый "рисунок". Но изучать для этого асм... :-)

Ну вот чем тебя не устаивает винда? Я вот сомневаюсь. что ты висту напишешь... Иди в команду разработчиков "русской ОС", наклепаете чо-нить весёлое :)))))


 
TIF ©   (2008-05-01 22:15) [29]


> п. 7 рекомендаций из правил форума


Уже вижу, изучил, учпокоился, выпил корвалолу...

Просто меня этим вопросом ой как уже... замучали, скажем так.


 
Pavia ©   (2008-05-01 22:19) [30]

Загрузчик это только часть ОС и не существенная. Остальное легко пишется. =) Не то чтобы очень легко, придеться писать долго . А так дельфи все позволяет.


 
Игорь Шевченко ©   (2008-05-01 22:20) [31]

Pavia ©   (01.05.08 22:19) [30]

Везет же людям


 
TIF ©   (2008-05-01 22:22) [32]


> "Соблюдайте нетикет


:) Это термин такой, или всё-таки имелся в виду этикет?


 
korneley ©   (2008-05-01 22:37) [33]


> TIF ©   (01.05.08 22:22) [32]

Таки, думаю, "сетевой этикет" :) Термин, вполне "образовавшийся", с просроченным билетом уже не ассоциируется :)


 
TIF ©   (2008-05-01 22:39) [34]


> Термин, вполне "образовавшийся"


Хм, а вот лингво много чего знает, а такого термина - нет :(
Напоминает какой-то китикэт ;) Ладно, будем знать


 
Игорь Шевченко ©   (2008-05-01 22:59) [35]

TIF ©   (01.05.08 22:22) [32]

Ты, когда незнакомое слово увидишь, ты в Google лезь первым делом


 
TIF ©   (2008-05-01 23:03) [36]


> ты в Google лезь первым делом


Уже нашёл в вики... Гораздо быстрее. Яндекс тоже рулит...
Ладно, не будет о поисковиках)


 
Dmitry S ©   (2008-05-01 23:04) [37]

Delphi (Де&#769;льфи, произносится /&#712;d&#603;l&#716;fi/[1]) — среда разработки, использует язык программирования Delphi (начиная с 7 версии язык в среде именуется Delphi, ранее - Object Pascal), разработанный фирмой Borland и изначально реализованный в её пакете Borland Delphi, от которого и получил в 2003 году своё нынешнее название. Object Pascal - по сути является наследником языка Pascal с объектно-ориентированными расширениями.

Если речь идет о среде разработке, то можно тут сложный вопрос.
Если речь идет о языке программирования, то, думаю, речь не идет о компиляторе. А компиляторы бывают разные, поэтому ответ - можно.


> Реально ли написать OS на Delphi?

Среда разработки - это инструмент, а значит, если бы речь шла о среде, то вопрос был бы сформулирован примерно так "Реально ли написать OS с помощью Delphi?" => речь идет о языке.

Принимая во внимание этот факт, получаем ответ: да, можно =)


 
Игорь Шевченко ©   (2008-05-01 23:08) [38]

Dmitry S ©   (01.05.08 23:04) [37]

У тебя с логикой фигово


 
DrPass ©   (2008-05-01 23:11) [39]


> TIF ©   (01.05.08 22:09) [24]

Чего ты так распереживался?
Ты неправ, можно. Delphi умеет генерировать такие же объектные файлы, как и С. Написать и скомпилировать в ней код, который сможет работать в нулевом кольце привилегий можно. Скомпоновать не получится, но это ж проблема не среды разработки, а просто отсутствия соответствующего компоновщика. Его и в Visual C++ нет, надо отдельный kit добывать.
Нельзя сделать только крохотный кусочек ОС, который будет работать в реальном режиме. Но для этого опять же, есть сторонние инструменты. Ты ж, написав программу в Delphi, а пару хранимых процедур к ней в IBExpert, все равно считаешь что программа написана в Delphi?


 
TIF ©   (2008-05-01 23:11) [40]


> У тебя с логикой фигово


+1

И со знанием English тоже! :)
Произносится по-английски правильно не делфи, а ДЕЛФАЙ (например, в тех же ролик от КодГир)

Вот так-то...


 
Palladin ©   (2008-05-01 23:15) [41]


>
Dmitry S ©(01.05.08 23:04) [37]

совершенно согласен, на делфи можно написать ОС для win32 :)

но лучше ОС писать на лиспе... можно войти в историю....


 
TIF ©   (2008-05-01 23:15) [42]


> который сможет работать в нулевом кольце привилегий можно.
>  


Не знаю, где там при загрузке компа нулевое кольцо...

Мы же пишем ОС? То есть после биоса будет загружаться сразу она... И где тут кольца, я вот что-то не понимаю

Или опять имеется в виду винда?! Тогда при чём тут вообще этот факт?

Заколебали :)

Читайте великую книгу: интернет называется

http://forum.sources.ru/index.php?showtopic=214309&st=15&hl=
http://void.ru/?do=mboard&bid=5&mid=1013&pn=1
http://www.google.com/search?ie=UTF-8&hl=ru&q=%D0%BD%D0%B0%D0%BF%D0%B8%D1%81%D0%B0%D1%82%D1%8C%20%D0%9E%D0%A1%20%D0%BD%D0%B0%20delphi


 
TIF ©   (2008-05-01 23:16) [43]


> но лучше ОС писать на лиспе...


Бэйсик рулит ;) Сделаете свой MS-DOS...


 
DrPass ©   (2008-05-01 23:18) [44]


> TIF ©   (01.05.08 23:15) [42]


> Не знаю, где там при загрузке компа нулевое кольцо...
>
> Мы же пишем ОС? То есть после биоса будет загружаться сразу
> она... И где тут кольца, я вот что-то не понимаю

Читай следующее предложение, там все есть


 
Palladin ©   (2008-05-01 23:18) [45]


>Произносится по-английски правильно не делфи,

1 большевики вынесли решение, что случай является исключением.

2. кто сказал что это инглишь, а не латынь? :)


 
Palladin ©   (2008-05-01 23:22) [46]


>Бэйсик рулит ;)

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


 
TIF ©   (2008-05-01 23:24) [47]


> не путай теплое с мягким. на бейсике раз плюнуть написать
> :) и в историю ты не войдешь. лисп же требует другой логики
> мышления...


Билли Гейтс и доплевался :-))))))))))) До висты ;)


> Читай следующее предложение, там все есть


Там ещё больше путаницы... Всё равно написать нельзя. См. мои ссылки


 
Dmitry S ©   (2008-05-01 23:26) [48]


> У тебя с логикой фигово

Логика либо есть либо ее нет, с ней не может быть фигово!


 
DrPass ©   (2008-05-01 23:32) [49]


> TIF ©   (01.05.08 23:24) [47]

Ладно, просвещу. На Delphi нельзя написать крохотную часть ОС - загрузчик. Дело которой будет состоять в запуске системы и переходе в защищенный режим. Все остальное в принципе можно написать. Но поскольку загрузчик - это едва ли одна тысячная доля ОС, на это можно смело закрыть глаза.


 
oxffff ©   (2008-05-01 23:32) [50]


> NaRuTo ©   (01.05.08 19:37)  
> Реально ли написать OS на Delphi?


Реально. Только совсем не удобно.


 
Игорь Шевченко ©   (2008-05-01 23:35) [51]

DrPass ©   (01.05.08 23:32) [49]


> На Delphi нельзя написать крохотную часть ОС - загрузчик


На Delphi нельзя написать гораздо больше, чем загрузчик, применительно к OS.


 
oxffff ©   (2008-05-01 23:39) [52]


> Ладно, просвещу. На Delphi нельзя написать крохотную часть
> ОС - загрузчик.


При должной сноровке, можно все и в реальном и в защищенном, знать нужно только хорошо opcodes.
Файлы кто запрещает формировать вручную, нужной структуры в Delphi?


 
DrPass ©   (2008-05-01 23:39) [53]


> Игорь Шевченко ©   (01.05.08 23:35) [51]

А что еще?


 
DrPass ©   (2008-05-01 23:40) [54]


> Файлы кто запрещает формировать вручную, нужной структуры
> в Delphi?

Это неспортивно. Так можно и в блокноте ОС написать :)


 
oxffff ©   (2008-05-01 23:42) [55]


> Это неспортивно.


Вопрос был можно. Ответ один. Можно.
В блокноте можно?  Можно.


 
Плохиш ©   (2008-05-01 23:45) [56]


> Тыщ ©   (01.05.08 20:19) [9]
> > Реально ли написать OS на Delphi?
>
> Для этого понадобится написать загрузчик OS, а также загрузчик
> exe-шников в формате PE и базовые DLL для WinAPI.

Странно, почему в своей OS нельзя сделать свой формат запускаемых файлов и библиотек и почему в ней должен быть Windows API?


 
Pavia ©   (2008-05-01 23:46) [57]

Зачем что-то формировать. Пишем загрузчик PE файлов и грузим Exe который получается после дельфи.


> На Delphi нельзя написать гораздо больше, чем загрузчик,
>  применительно к OS.

А к примеру что нельзя написать? Драйвер можно. Ядро можно. Загрузку других приложений тоже можно системные библеотеки тоже можно. Только нужна определенная сноровка. Плюс дельфи налогает ограничения по форматам файлов но они преодалимы.


 
oxffff ©   (2008-05-01 23:49) [58]


> Пишем загрузчик PE файлов и грузим Exe


ГЫ. ГЫ  Получается нужно еще к нему прикрутить еще WIN 32 API.


 
Игорь Шевченко ©   (2008-05-01 23:50) [59]

DrPass ©   (01.05.08 23:39) [53]

На Delphi нельзя написать практически ничего, кроме пользовательских приложений, потому что она, зараза, в каждый свой EXEшник или DLL вставляет обращения к вызовам DLL Windows.

Ну вот устроена она так...

Плохиш ©   (01.05.08 23:45) [56]


> Странно, почему в своей OS нельзя сделать свой формат запускаемых
> файлов и библиотек и почему в ней должен быть Windows API?
>


Ну а как же в новой OS иконки в трей запуздыривать, если Windows API нету ?


 
Плохиш ©   (2008-05-01 23:55) [60]


> Игорь Шевченко ©   (01.05.08 23:50) [59]
> Ну а как же в новой OS иконки в трей запуздыривать, если
> Windows API нету ?

Блин, а об этом не подумал 8-O Посыпаю голову пеплом... Кому нужна ОС без возможности запуздырить туда где часики...


 
Pavia ©   (2008-05-01 23:56) [61]


> ГЫ. ГЫ  Получается нужно еще к нему прикрутить еще WIN 32
> API.

Не нужно.


> вставляет обращения к вызовам DLL Windows.

Пишешем свой System и никаких тебе вызовов.

> Ну а как же в новой OS иконки в трей запуздыривать, если
> Windows API нету ?

Для этого есть MyOS API


 
Pavia ©   (2008-05-02 00:00) [62]

И вообще присутствиее трея самнительно так как есть идеи создания совершенно нового интерфейса.


 
DrPass ©   (2008-05-02 00:07) [63]


> Игорь Шевченко ©   (01.05.08 23:50) [59]

Да, конечно - но если мы хотим получить свою ОС, нам нужно будет первым делом написать свою RTL и свой компоновщик. А это позволит отучить Delphi от такой вредной привычки :)


 
Игорь Шевченко ©   (2008-05-02 00:07) [64]


> Пишешем свой System и никаких тебе вызовов.


system (и sysinit) в студию.


 
Игорь Шевченко ©   (2008-05-02 00:09) [65]

DrPass ©   (02.05.08 00:07) [63]

Тогда это будет как бы не Delphi...а инструмент.

Но те, у кого хватит мозгов и терпения написать инструменты, поймут, что затея писать OS на Delphi нелепа с самого начала.


 
Pavia ©   (2008-05-02 00:16) [66]


> system (и sysinit) в студию.

Они у меня сырые даже поддержка строк не реализованна. =(
http://slil.ru/25748829


 
TUser ©   (2008-05-02 00:31) [67]

Можно. Но сначала придется реализовать собственный компилятор языка Delphi, борландовский не катит.


 
DrPass ©   (2008-05-02 00:44) [68]


> Игорь Шевченко ©   (02.05.08 00:09) [65]
> DrPass ©   (02.05.08 00:07) [63]
>
> Тогда это будет как бы не Delphi...а инструмент.

Понятно, но в любом случае при попытке написать свою ОС сначала надо будет и инструменты для нее подготовить, независимо от того, что мы имеем "на старте" - Дельфи, гнус или бейсик. Рассматривай "системный компилятор" как часть новой операционки, которую надо готовить в первую очередь.

> что затея писать OS на Delphi нелепа с самого начала.

Любая затея по написанию ОС в 21 веке нелепа с самого начала. Тут интерес чисто спортивный :)


 
Игорь Шевченко ©   (2008-05-02 01:17) [69]

DrPass ©   (02.05.08 00:44) [68]


> Любая затея по написанию ОС в 21 веке нелепа с самого начала


Не согласен. Вот, Singularity ж пишут.


 
DrPass ©   (2008-05-02 01:26) [70]


> Не согласен. Вот, Singularity ж пишут

Поправлюсь - любая затея по написанию ОС в 21 веке нелепа с самого начала, если это не затея монстра вроде Microsoft :)


 
Поп Гапон   (2008-05-02 04:00) [71]


> {RASkov} ©   (01.05.08 20:59) [13]
>
> > Нереально
>
> +1
> Shell какой-нибудь можно под Вин или Юникс, но не ОС...


И то с 64-битами проблем будет куча(даже с шелом).


 
Поп Гапон   (2008-05-02 04:02) [72]


> Игорь Шевченко ©   (02.05.08 01:17) [69]
>
> DrPass ©   (02.05.08 00:44) [68]
>
> > Любая затея по написанию ОС в 21 веке нелепа с самого
> начала
>
> Не согласен. Вот, Singularity ж пишут.


А она кому-то нужна?


 
@!!ex ©   (2008-05-02 07:22) [73]

> [24] TIF ©   (01.05.08 22:09)

Замечательно, пришел эксперт и ввсе объяснил.


> [25] Игорь Шевченко ©   (01.05.08 22:11)
> @!!ex ©   (01.05.08 21:39) [22]
>
>
> > Если взять за основу оперделение с википедии:
>
>
> > И принять винду - за загрузчик
>
>
> То это будет жонглирование словами
>
> Кстате, по этому поводу много лет велась дискуссия на Королевстве
> Delphi
>
> http://www.delphikingdom.com/asp/talktopic.asp?ID=211

Хм. То что Win9х грузится из под доса - никого не смущает...
А тут - жонглирование словами. хм. странно.


 
VirEx ©   (2008-05-02 10:09) [74]

Вот ведь парадокс: никто не пробовал написать на дельфи ОС, но все спорят.

З.Ы. на дельфи можно написать полноценную ОС, если это OS Edition


 
oxffff ©   (2008-05-02 11:11) [75]


> Pavia ©   (01.05.08 23:56) [61]
>
> > ГЫ. ГЫ  Получается нужно еще к нему прикрутить еще WIN
> 32
> > API.
>
> Не нужно.


Как не нужно. А где загрузчик PE?
Кто таблицы I и E будет заполнять?


 
oxffff ©   (2008-05-02 11:12) [76]


> Кто таблицы I и E будет заполнять?


Точне I? Кто святой дух.


 
oxffff ©   (2008-05-02 11:17) [77]


> Pavia ©   (01.05.08 23:46) [57]
> Зачем что-то формировать. Пишем загрузчик PE файлов и грузим
> Exe который получается после дельфи.


И ради этого этого парсить секции?
Зачем так?

Просто пишешь на ASM код ввиде DB если нет необходимых инструкций в файл. Далее правка сектора на диске с нужным кодом и вперед.
Только еще файловую систему прикрутить нужно.


 
Pavia ©   (2008-05-02 11:30) [78]


> Как не нужно. А где загрузчик PE?
> Кто таблицы I и E будет заполнять?

Все своими ручками надо писать свой API. Код загрузчика PE и будет заполнять.
Пока я на той стадии что заполнять эти таблицы не надо было. В дальнейшем сделаю.
Для загрузки ядра их вообще заполнять не требуется.

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


 
Pavia ©   (2008-05-02 11:33) [79]


> И ради этого этого парсить секции?
> Зачем так?
>
> Просто пишешь на ASM код ввиде DB если нет необходимых инструкций
> в файл. Далее правка сектора на диске с нужным кодом и вперед.
>
> Только еще файловую систему прикрутить нужно.

Распарсить проще чем то, что ты предлогаешь.


 
Тыщ ©   (2008-05-02 18:10) [80]

Pavia ©   (02.05.08 11:30) [78]

Думаю, будет интересно глянуть сюда:
http://japheth.de/HX.html


 
Игорь Шевченко ©   (2008-05-02 18:32) [81]


> Думаю, будет интересно глянуть сюда:
> http://japheth.de/HX.html


На Delphi ? :)


 
Palladin ©   (2008-05-02 18:40) [82]

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


 
Тыщ ©   (2008-05-02 20:15) [83]

Игорь Шевченко ©   (02.05.08 18:32) [81]

Нет, используя эту вещь, можно писать на Delphi под DOS.


 
Игорь Шевченко ©   (2008-05-02 23:20) [84]

Тыщ ©   (02.05.08 20:15) [83]

Как бы не под DOS, а под сабжевый Extender, нес па ?

То есть, Delphi оно как создавало Win32-приложения (ну или .Net - кому как повезло) так и остается в том же качестве.

Я другого не понимаю - а нафига велосипед с квадратными колесами изобретать ? Он же ездить фигово будет...


 
DrPass ©   (2008-05-02 23:33) [85]


> Я другого не понимаю - а нафига велосипед с квадратными
> колесами изобретать ? Он же ездить фигово будет...

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


 
Сергей М. ©   (2008-05-03 00:11) [86]


> Реально ли написать OS


А как же !

Здесь
http://www.rus-os.narod.ru/my-rusos.html
место сбора энтузиастов.


 
Kostafey ©   (2008-05-03 00:25) [87]

> Здесь
> http://www.rus-os.narod.ru/my-rusos.html
> место сбора энтузиастов.

Мля, бред какой-то.
Уж простите за ругательство :)


 
Мазут Береговой ©   (2008-05-03 00:40) [88]

Душевно у вас тут...


 
TIF ©   (2008-05-03 00:41) [89]

Вот опять все перелаялись, передрались, начали друг другу доказывать... Хоттят догнать ветку на королевстве :)))))))))


 
Игорь Шевченко ©   (2008-05-03 00:59) [90]

DrPass ©   (02.05.08 23:33) [85]

У людей обычно возникает желание сделать что-то полезное из интереса.
Вырезание же гланд через анус может и интересно, но никак не полезно, поскольку для вырезания гланд существует иной, более доступный путь, нес па ?


 
Германн ©   (2008-05-03 02:02) [91]


> Игорь Шевченко ©   (03.05.08 00:59) [90]
>
> DrPass ©   (02.05.08 23:33) [85]
>
> У людей обычно возникает желание сделать что-то полезное
> из интереса.
>

Полностью согласен.
Ничего никогда не делал из дурного интереса. Но на прошлой неделе сделал ещё одну ДСП программку для формирования нового типа отчета для жены. Программка простая, но очень много было рутинных копи-пастов из SQL-файлов созданных в DBD. Плюс два раза меня напряг QR. Второй раз очень сильно. (У меня правда QR версии 3.0.8. Может в новых версиях уже нет той ерунды?).


 
DrPass ©   (2008-05-03 02:06) [92]


> Игорь Шевченко ©   (03.05.08 00:59) [90]
> DrPass ©   (02.05.08 23:33) [85]
>
> У людей обычно возникает желание сделать что-то полезное
> из интереса.


> Германн ©   (03.05.08 02:02) [91]
>
> Полностью согласен.

Старые ворчуны ;-) Просто примите как данность - интересным бывает не только полезное и практичное. И это хорошо, мы ж живые люди, а не помешанные на целесообразности андроиды.


 
Германн ©   (2008-05-03 02:09) [93]


> Старые ворчуны ;-) Просто примите как данность - интересным
> бывает не только полезное и практичное.

Женись на Riply. Ваша пара перевернёт весь мир!


 
DrPass ©   (2008-05-03 02:15) [94]


> Германн ©   (03.05.08 02:09) [93]
>
> Женись на Riply. Ваша пара перевернёт весь мир!

Да я б с радостью, я ей даже отдельный компьютер выделю. Только я сказать ей стесняюсь


 
Германн ©   (2008-05-03 02:33) [95]


> DrPass ©   (03.05.08 02:15) [94]
>
>
> > Германн ©   (03.05.08 02:09) [93]
> >
> > Женись на Riply. Ваша пара перевернёт весь мир!
>
> Да я б с радостью, я ей даже отдельный компьютер выделю.
>  Только я сказать ей стесняюсь
>

"Качает, качает, качает. Задира ветер фонари над мостовой.
Шагает, шагает, шагает, Весёлый парень по весенней мостовой.
Листает, листает, листает. Учебник физики листает на ходу.
Не знает, не знает, не знает. Что каждый вечер я за ним иду."

"Льёт ли тёплый дождь. Падает ли снег.
Я в подъезде против дома твоего стою.
Жду, что ты пройдёшь. А быть может нет?
Стоит мне тебя увидеть. Ооо как я счастлив!"

)))))


 
Германн ©   (2008-05-03 02:33) [96]

Блин!
"фонари над головой"!


 
TIF ©   (2008-05-03 02:38) [97]


> я ей даже отдельный компьютер выделю.


Великодушно сказано :-)


 
Petr V. Abramov ©   (2008-05-03 03:16) [98]

а свидетеля возьмите из Фрязино :)


 
Германн ©   (2008-05-03 03:20) [99]

Тебя что-ли?
Халявы захотелось?
:)


 
TIF ©   (2008-05-03 03:28) [100]

Удалено модератором


 
Petr V. Abramov ©   (2008-05-03 03:30) [101]

Удалено модератором


 
Германн ©   (2008-05-03 03:42) [102]

Удалено модератором


 
Petr V. Abramov ©   (2008-05-03 04:00) [103]

Удалено модератором


 
TIF ©   (2008-05-03 04:04) [104]

Удалено модератором


 
Германн ©   (2008-05-03 04:24) [105]

Удалено модератором


 
Германн ©   (2008-05-03 04:27) [106]

Удалено модератором


 
Petr V. Abramov ©   (2008-05-03 04:28) [107]

Удалено модератором


 
Германн ©   (2008-05-03 04:37) [108]

Удалено модератором


 
Petr V. Abramov ©   (2008-05-03 04:56) [109]

Удалено модератором


 
@!!ex ©   (2008-05-03 07:30) [110]

Удалено модератором


 
Kostafey ©   (2008-05-03 12:03) [111]

Понял почему русская ОС не может быть написана.
Избыточных ресурсов у нас нет (временных, финансовых).
На западе они, видимо, есть.


 
Mystic ©   (2008-05-03 12:39) [112]


> Что касается загрузчика, то один из посетителей этого сайта
> писал таковой, правда на паскале, а не на Delphi. MWOS это
> называлось.
> И впрямь загружался.


Вот этот проект, кому интересно. Когда-то было свободное время :)
http://mu.webest.net/prog/mwos.zip

Проект состоит из трех частей.

1) loader.mbr Master Boot Record для дискеты. Написан на Turbo assembler. Загружает выбранный EXE-файл в DOS формате, который должен быть расположен в корне FAT раздела. Имя файла в формате 8.3 можно указать. Также можно указать количество байт, которые необходимо пропустить в этом EXE-файле. Это связано с тем, что формируемый паскалем EXE-файл обычно вначале содержит три инструкции CALL, которые вызывают код инициализации, обращающийся в частности к INT 21h. Нам он не нужен :)

2) loader.exe. Вторая часть загрузчика. Написан на Turbo Pascal. Основная его задача загрузить DLL, написанную на Delphi. Особенности реализации: нельзя использовать ничего из библиотечных функций, что вызывает 21h (DOS-а нет). И вначале надо проинициализировать регистр DS. Библиотека DLL должна экспортировать функцию EntryPoint, которой и передается управление (чтобы опять же исключить код загрузки, который обращается к WinAPI).

3) loader.dll. собственно говоря, база для ядра возможной OS. Работает в защищенном режиме. Кроме того, что работает, вешается на таймер и выводит всякие символы в правом верхнем углу экрана, а также на клавиатуру и печатает Scan-коды нажатых клавиш. Delphi с большими оговорками, так как недоступны функции, которые обращаются к WinAPI. Ну и поскольку нет менеджера памяти (его то я и хотел прикрутить, но не сложилось), то недоступны динамические строки, интерфейсы и прочие типы с автоматическим управлением памятью. кроме того не проинициализирован селектор FS (у нашего потока отсутствует TEB), таким образом исключения также не используются.

Так что чисто теоретически написать OS можно даже с текущим инструментарием. Хотя от некоторой Windows-образности (форматы файлов загрузки, обработка исключений, модель памяти) избавится сложно. Вопрос в том, кому это нужно? Я писал не потому, что лавры Линуса Торвальдса мне не дают покои, а просто был интересен сам процесс :)


 
Ketmar ©   (2008-05-03 13:08) [113]

Удалено модератором


 
Anatoly Podgoretsky ©   (2008-05-03 13:18) [114]

> Kostafey  (03.05.2008 12:03:51)  [111]

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


 
Kostafey ©   (2008-05-03 13:25) [115]

> [114] Anatoly Podgoretsky ©   (03.05.08 13:18)

Ну... и это тоже имеет место быть :)


 
Bertran   (2008-05-03 13:56) [116]

Anatoly Podgoretsky ©   (03.05.08 13:18) [114]


> а еще после оказывается, что всего этого почему то мало,
>  почему то никто кроме кучки энтузиастов ей никто не хочет
> пользоваться.
>


Ясно дело, без CorelDRAW-а и DirectShow кто же захочет. Только фанатики какие-нибудь. Вот когда, лет через двадцать, будет создана русская ОС, на основе POSIX, а Microsoft будет куплена русскими меценатами, вот тогда начнется веселье.


 
VirEx ©   (2008-05-03 15:41) [117]

Anatoly Podgoretsky   ( 03.05.08 13:18)  
----
это да. Достаточно взглянуть на проект колибри ос. Остаются фанатики.


 
Узурап Мамуматкулович   (2008-05-04 03:46) [118]

Удалено модератором


 
Mystic ©   (2008-05-05 11:03) [119]

> Плохо понял, просто после написания загрузчика пропадает
> интерес


Окончательно интерес пропадает после того, как реализована база, подобная MINIX. Т. е. для меня написать еще планировщик задач, менеджер памяти было бы интересно. А вот дальше...


 
tButton ©   (2008-05-07 01:26) [120]

и все-таки не NTшные винды (кроме висты) являются всего-лишь надстройкой на ДОС. надстройку на ДОС на дельфи написать можно.


 
Pavia ©   (2008-05-07 01:47) [121]

С чегое то вдруг только надстройкой? Это были полноценные ОС. В них были свои исполняемые файлы. Свои драйвера. Своя среда. А то что запускались из доса. Ну так это для удобства пользователя. Правдо ядро было не лучшим. Но оно там было, многое было проработанно. Но не все.

Между прочим колибри ОС(менуэт ОС) из себя кроме как оболочка для графики не представляет. Ядро там на зачяточном уровне, посути набор функций собранных в кучу. А ведь тоже осью заветься.


 
tButton ©   (2008-05-07 04:07) [122]

хорошо. это не просто надстройки. это крутые надстройки. только не имеючи ДОСа вы все равно их не запустите =)

да у них свои исполняемые, своя среда, драйвера свои. это ОСи. ни кто же не мешает сделать то же самое на дельфи.


 
Игорь Шевченко ©   (2008-05-07 09:57) [123]

tButton ©   (07.05.08 04:07) [122]

Сам ты надстройка.

RTFM


 
tButton ©   (2008-05-07 12:10) [124]

Windows 98
Материал из Википедии — свободной энциклопедии

По сути, данная операционная система — это обновлённая версия Windows 95, по-прежнему являющаяся гибридным 16/32-разрядным продуктом, основанном на MS-DOS.

на языке оригинала
Like its predecessor, it is a hybrid 16-bit/32-bit monolithic product based on MS-DOS.

Microsoft Windows 1.0
Материал из Википедии — свободной энциклопедии

Windows 1.0 часто считают «оболочкой» для операционной системы MS-DOS (это определение часто применяется и к более поздним версиям Windows). На самом деле, Windows 1.0 запускалась из MS-DOS, её программы могли вызывать функции MS-DOS, а программы с графическим интерфейсом запускались из тех же исполняемых EXE-файлов, что и обычные программы MS-DOS. Однако исполняемые файлы Windows имели другой формат (NE — англ. new executable), который мог обрабатываться только Windows и который, например, позволял подгружать код и данные по запросу. Приложения должны были управлять памятью только с помощью собственной системы управления распределением памяти Windows, которая позволяла использовать виртуальную память.

Определение Windows 1.0 как «оболочки для DOS» исходит из того факта, что она была создана лишь как графическая среда для работы приложений, а не как полнофункциональная ОС. Тем не менее Windows 1.0 включала собственные драйверы для видеокарт, мышей, клавиатур, принтеров и последовательных портов. Предполагалось, что приложения будут вызывать лишь API, построенные на основе этих драйверов. Учитывая, что поддержка графики и периферийных устройств в MS-DOS крайне ограничена, приложениям приходилось обращаться непосредственно к аппаратному обеспечению (или, в некоторых случаях, к BIOS), чтобы выполнить необходимые действия. Таким образом, Windows 1.0 была не просто оболочкой для MS-DOS, а дополняла и частично заменяла её. Уровень замещения MS-DOS повышался в последующих версиях Windows.


 
Mystic ©   (2008-05-07 12:28) [125]

> tButton ©   (07.05.08 12:10) [124]

Надстройка и основана это две большие разницы. Например, C++ основан на языке C :)


 
DVM ©   (2008-05-07 12:32) [126]


> tButton ©   (07.05.08 04:07) [122]
> хорошо. это не просто надстройки. это крутые надстройки.
>  только не имеючи ДОСа вы все равно их не запустите =)

Загрузочные установочные дискеты от NT не требуют доса и не основаны на досе.


 
Игорь Шевченко ©   (2008-05-07 12:40) [127]

tButton ©   (07.05.08 12:10) [124]

Срочно Шульмана читать


 
DrPass ©   (2008-05-07 13:01) [128]


> tButton ©   (07.05.08 01:26) [120]
> и все-таки не NTшные винды (кроме висты) являются всего-
> лишь надстройкой на ДОС. надстройку на ДОС на дельфи написать
> можно.

ОС от надстройки отличается тем, что ОС для доступа к аппаратнуре компьютера использует собственные средства, а надстройка - средства того, над чем она надстроена. Т.к. ни Win98, ни Win95 не используют функции DOS для работы с железом (ну, по крайней мере, если их специально не "попросить"), они являются полноценными ОС. То, каким образом они запускаются, абсолютно несущественно.


 
Anatoly Podgoretsky ©   (2008-05-07 13:51) [129]

> tButton  (07.05.2008 01:26:00)  [120]

Ты такую траву больше не кури и не читай шарлатанов в Сети


 
@!!ex ©   (2008-05-07 14:18) [130]

> [128] DrPass ©   (07.05.08 13:01)

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


 
tButton ©   (2008-05-07 15:51) [131]

> DVM ©   (07.05.08 12:32) [126]
читайте выше. НТ и Висту я исключил из списка.

> Игорь Шевченко ©   (07.05.08 12:40) [127]
принял к сведению, добавил в TODO. а что конкретно не подскажете? чтоб мне не сильно долго искать?

> DrPass ©   (07.05.08 13:01) [128]
еще раз. на дельфи можно написать програмный комплекс, запускаемый из-под ДОС и выполняющий функции ОС?

> Anatoly Podgoretsky ©   (07.05.08 13:51) [129]
два дня уже не курю =)
а шарлатанов привел исключительно в подтверждение своей ТЗ, сформировавшейся несколько лет назад по прочтении литературы неким образом связаной нето с компьютером в целом, нето с OP программированием. ксожалению сейчас ни название книги, ни автора не могу вспомнить. а доступа к библиотеке не имею, бо нахожусь далеко от дома.


 
Mystic ©   (2008-05-07 16:06) [132]

> еще раз. на дельфи можно написать програмный комплекс, запускаемый
> из-под ДОС и выполняющий функции ОС?


Можно. Вот только запускатель придется писать не на Delphi. Или писать свой компилятор Delphi для 16-битного реального режима.


 
DrPass ©   (2008-05-07 16:10) [133]


> @!!ex ©   (07.05.08 14:18) [130]


> Дело в том, что как раз загрузчик - единственная вещь, которую
> нельзя написать на Дельфе

Я это слово в слово писал парой страниц выше :)


 
@!!ex ©   (2008-05-07 19:05) [134]

> [133] DrPass ©   (07.05.08 16:10)

сорри тогда.


 
VirEx ©   (2008-05-07 20:03) [135]

> Дело в том, что как раз загрузчик - единственная вещь, которую
> нельзя написать на Дельфе

зато на ней можно написать программу, которая будет генерировать загрузчик


 
Anatoly Podgoretsky ©   (2008-05-07 20:16) [136]

> VirEx  (07.05.2008 20:03:15)  [135]

Первичный загрузчик, это 512 байт в самом первом секторе, размещаемый по фиксированому абсолютному адресу, от ОС не зависит.
Данный загрузчик можно написать даже в машинных кодах, это относится к процедуре форматирования диска, которая должна записать эти 512 байт в первый сектор.
Поэтому это не относится к самой ОС - эта часть вне ее и одинакова для всех ОС.
А что потом будет вызывать этот загрузчик уже можно писать как угодно, в соответствии с новой ОС и ее файловой системы (систем) и писать на чем угодно, данный загрузчик должен обеспечить загрузку остальных файлов. Поэтому это позволяет ставить на IBM PC абсолютно любую ОС на основе Intel x86 или иметь их несколько, если этот загрузчик будет грузить другой мультизагрузчик.


 
VirEx ©   (2008-05-07 21:13) [137]


> [136] Anatoly Podgoretsky ©   (07.05.08 20:16)

еще в школе это знал, но к чему это?


 
Anatoly Podgoretsky ©   (2008-05-07 22:36) [138]

> VirEx  (07.05.2008 21:13:17)  [137]

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

Ранее это знал почти любой программист, времена ДОС


 
ProgRAMmer Dimonych ©   (2008-05-08 00:29) [139]

> Anatoly Podgoretsky ©   (07.05.08 22:36) [138]
> А это к тому, к утверждению, что на Дельфи загрузчик не
> написать, да не пишут его ни на чем, это просто двоичный
> блок данных, набитый руками и помещеный в программу форматирования
> как константа. Даже если написать на ассемблере его не возможно
> использовать как программу, только как блок данных.

> VirEx ©   (07.05.08 20:03) [135]
> зато на ней можно написать программу, которая будет генерировать
> загрузчик



Страницы: 1 2 3 4 вся ветка

Форум: "Прочее";
Текущий архив: 2008.06.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.84 MB
Время: 0.049 c
11-1189431471
ElectriC
2007-09-10 17:37
2008.06.22
GroupBox в GroupBox e


3-1200900133
MZ
2008-01-21 10:22
2008.06.22
Тип данных в Firebird


11-1190552406
Thaddy
2007-09-23 17:00
2008.06.22
Strip reloc request


15-1210139418
Jeer
2008-05-07 09:50
2008.06.22
С Днем Радио !


2-1211898814
kazar
2008-05-27 18:33
2008.06.22
Разность 2 дат





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский