Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.184.237] |
|
Страницы: (2) [1] 2 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Почитал здешние топики и понял, сейчас только ленивый не пишет свою операционную систему. Вот и решил предложить свой вариант, написал
его истественно на Бейсике, чтоб излишне мозг не напрягать )) Называется она "Дурацкая ОСь" или сокращенно DUR-DOS Поддерживаются 4 команды VER - вывод версии ОС DATA - вывод даты из хренометра на материнской плате CLS - очистка дисплея HELP - вывод списка DUR-DOS команд Операционка DUR-DOS состоит из 2 файлов - MBR.EXE и STARTME.EXE Запускается она с дискеты (чтоб не портить винчестер) MBR.EXE - Это так называемый bootloader, при запуске, он обращается к дисководу и записывет в первый 2 сектора (1024 байт) загрузчик ОS. STARTME.EXE - командный процессор, его название фиксированно, изменить его можно только подправив исходники MBR.EXE В командном процессоре, описываются команды DUR-DOS. Установка DUR-DOS 1) Подготовить чистую, отформатированную дискету 1.44 мбайт и вставить ее в дисковод 2) Запустить MBR.EXE, если загрузочный раздел создасться успешно, появится сообщение: DUR DOS 1.0 Create bootloader Floppy will boot startme.exe now 3) Cкопировать на дискету STARTME.EXE 4) Перезагрузить компьютер, установив в BIOS загрузку с дискеты. 5) После успешной загрузки появится сообщение и курсор: DUR DOS - 1.0 Copyright: Pashkov Alexander Commands: VER DATA CLS HELP 6) Можно вводить команды и юзать DUR-DOS Оба исходника написаны на PowerBASIC ver 3.50, bootloader сделал для нас Georg Potthast. Новые команды надо добавлять в STARTME.BAS и перекомпилировать его. Ограничения - нельзя юзать INT21, так-как прога работает на "голом железе", в ответ будет "тишина". Нет никаких драйверов, и значит есть доступ только к памяти. Не возможно читать файлы с диска, нужно писать свой драйвер дисковода. Сейчас собираюсь этим занятся, писать естественно буду на бейсике )) Если есть желание поделится мыслями, пишите... Прикреплённый файлdur_dos.zip (24.79 Кбайт, скачиваний: 273) |
Сообщ.
#2
,
|
|
|
Alex221
Цитата Alex221 @ Называется она "Дурацкая ОСь" или сокращенно DUR-DOS Это все, что ты сумел вынести из топика "идеи для Shareware"? Тяжело, видимо, когда нечем заняться... Сочувствую. |
Сообщ.
#3
,
|
|
|
Цитата Это все, что ты сумел вынести из топика "идеи для Shareware"? Тяжело, видимо, когда нечем заняться... Сочувствую. Вчера много пива выпил.. Сории, вот и назвал ее DUR DOS. Но ведь она же работает! Добавлено Вообще, если говорить серьезно, этот исходник можно использовать не только для написания примитивной операционки, вот только некоторые направления: 1) Создание специализированных контролеров, на базе устаревших 286/386/486 материнских плат. Стоят они на радиорынке - копейки, а применение им можно найти разнообразное. DUR-DOS прошивается в микросхему ПЗУ на 64 кбайт, и грузится от туда. Например - охранная система. Многи коммерческие охранные системы имеют COM порт, для диагностики и выдачи тревоги. Подключаем 386 компьютер к такому порту, в DUR-DOS дописывает функцию обработки прерываний от СОМ портов и в случае взлома, DUR-DOS может позвонить вам по телефону (используя модем) и писком сообщить - Воры! Воры!!! Стоит такая система, будет очень дешево. Старый корпус АТ, материнка 386, старый ISA модем, мультикарта с COM портами. Во весь этот древний хлам, можно вдохнуть вторую жизнь. 2) Защищенные приложения, для запуска программ не нужна ОС. Работаем на "голом железе", а значит нам не страшны вирусы, троянские кони и т.п. 3) Ресурсоемкие задачи, отсуствие ос позволяет полностью контролировать процессор, имеем полную гарантию, что выполнение программы не прервет другой процесс. А значит, можем обрабатывать прерывания от портов в "реальном времени", опять же пригодится для различных контроллеров. Короче применений не по детски много... |
Сообщ.
#4
,
|
|
|
DUR-DOS плохое название, поэтому пусть называется BASIC 0S
Приделал оконный интерфейс с "горячими" клавишами. Теперь при загрузке BASIC 0S фон окрашивается в голубой цвет, как рабочий стол Windows. В верхней строке окна список функций ОС в виде меню (пока только для красоты), в нижней строке горячие клавиши для показа хелпа, запуска текстового редактора, управления принтером. Драйвер для FAT12, не такая уж тривиальная вещь, пока смог только читать/сохранять отдельные сектора на диске. Можно будет сделать поддержку HDD, если получится разобратся с LBA - адресацией. Хочу сделать запуск *.СOM программ, правда после того как напишу менеджер памяти. Добавлено Процесс установки на дискету аналогичен DUR-DOS... Прикреплённый файлbasic_os.zip (48.53 Кбайт, скачиваний: 252) |
Сообщ.
#5
,
|
|
|
Ну и скажи, зачем тебе ось на бейсике? Я имею ввиду не предназначение, а эффективность. Бейсик крайне медлителен в операциях с экраном. Никакого нормального графического интерфейса будет сделать невозможно. А консоль... Скажу сразу, идея написания оси на бейсике пришла мне где-то классе в 8-ом именно во времена далеких 386. Но забросил эту идею по двум причинам. 1 - не было знаний, 2 - обидно видеть, как Бейсик меддленно, по линии прорисовывает экран...
|
Сообщ.
#6
,
|
|
|
Цитата LBertone @ Ну и скажи, зачем тебе ось на бейсике? Я имею ввиду не предназначение, а эффективность. Бейсик крайне медлителен в операциях с экраном. Никакого нормального графического интерфейса будет сделать невозможно. А консоль... Скажу сразу, идея написания оси на бейсике пришла мне где-то классе в 8-ом именно во времена далеких 386. Но забросил эту идею по двум причинам. 1 - не было знаний, 2 - обидно видеть, как Бейсик меддленно, по линии прорисовывает экран... LBertone, а почему ты думаешь что компилятор PowerBASIC`а тормозит? Ты запускал мой пример? Разве можно сказать, что он хоть на йоту тормозит... PowerBASIC, превосходит по качеству создаваемого кода многие Паскаль и С компиляторы для DOS. Доказательство тому, что откомпилированные PowerBASIC программы, могут работь на "голом железе", без поддержки операционной системы. А к примеру, TURBO PASCAL или TURBO C, не могут создавать "настоящий" native код, т.к. без спросу, вставляют где ни поподя, вызовы функций DOS, через INT21. А на счет, твоей операционки на бейсике, ты наверное ее на интерпритаторе писал, вот все и тормозило... |
Сообщ.
#7
,
|
|
|
Alex221, очень понравилась идея, будешь развивать проект?
|
Сообщ.
#8
,
|
|
|
Цитата Alex221, очень понравилась идея, будешь развивать проект? Думаю да, сейчас мало времени, но к середине мая вплотную займусь.. |
Сообщ.
#9
,
|
|
|
Запусти на старой машине какую-нибудь серьезную графику и поймешь, Who is Who...
|
Сообщ.
#10
,
|
|
|
Цитата LBertone @ Запусти на старой машине какую-нибудь серьезную графику и поймешь, Who is Who... Насколько старой должны быть машина? И какой сложности графика.. Предложение непонятное... |
Сообщ.
#11
,
|
|
|
Под древностью я понимаю 386.
Ты так и хочешь исполизовать псевдографику, или склеишь что-нибудь оконное? Какие файловые системы она будет поддерживать? В каком режиме будет работать - реальном или защищенном? Как будут распознаваться устройства? Где будут содержаться драйверы - в ядре, или отдельными файлами? Будет ли организована многозадачность? А мышь...? Вообщем пока больше вопросов, чем ответов. Не хочу грузить тебя кучей вопросов и прочими цитатами, как это любит делать trainer. Думаю у тебя и без того времени мало... |
Сообщ.
#12
,
|
|
|
Цитата Под древностью я понимаю 386. Попробовал мой пример на ADM 486 - 100 МГЦ, не тормозит... Цитата Ты так и хочешь исполизовать псевдографику, или склеишь что-нибудь оконное? Окна из псевдографики, как в FAR`е. Цитата В каком режиме будет работать - реальном или защищенном? На этапе работы bootloader`а в реальном, после загрузки ядра можно переключится в защищенный. Цитата Как будут распознаваться устройства? Где будут содержаться драйверы - в ядре, или отдельными файлами? Пока можно "жестко" прошить следующие устройства. 1. Клавиатура. 2. EGA/VGA видеоадаптеры. 3. COM порты (Мышь, модемы, внешние усройства) 4. LPT порт. (Принтер, внешние устройства) 5. работа с FAT12 для чтения/записи файлов с дискеты. 6. ATA контроллер, с ним пожно работать через INT13 Поддержка других устройств для такой простой ОС, бессмысленна, как мне кажется. |
Сообщ.
#13
,
|
|
|
Alex221 Вопрос, конечно, не в тему, но где достать нормальный (читай полнофункциональный) компилятор с редактором PowerBasic v3?? Я искал, не нашел... Если есть и не жалко скинь на мыло? (или если мало весит сюда). Я просто давно егопытаюсь найти... но чето никак... Заранее thanks.
|
Сообщ.
#14
,
|
|
|
Цитата Seriy-Coder @ Alex221 Вопрос, конечно, не в тему, но где достать нормальный (читай полнофункциональный) компилятор с редактором PowerBasic v3?? Я искал, не нашел... Если есть и не жалко скинь на мыло? (или если мало весит сюда). Я просто давно егопытаюсь найти... но чето никак... Заранее thanks. весит больше 5 мегов вроде, мне SCINER на мыло присылал Добавлено и еще вопрос не в тему: Alex221, ты свою ОСь так и отлаживаешь, через дискету или используешь прогу для создания виртуальных машин? Добавлено кстати, я так и не смог записать твою ОСь на дискету. После запуска MBR.EXE на экране появляется только: Цитата DUR DOS 1.0 Create bootloader После прошествия около 5 минут ничего не изменяется |
Сообщ.
#15
,
|
|
|
Цитата весит больше 5 мегов вроде, мне SCINER на мыло присылал У меня весит 800 кбайт... Цитата После прошествия около 5 минут ничего не изменяется Испорченная дискета... |