Рассуждения о полезности написания собственной ОСи
Что-то тут уже флуд пошел...
smartsoft, друг мой, а вам не кажется, что вся эта тема - изначально флуд. "мы наш мы новый мир построим, кто был ничем, тот станет Гейтс!!!"...
/* Кстати, вот я ламо такое, не могу придумать ни одной задачи, которую нельзя было бы решить в Винде. */
А я не могу быть уверен ни в одной проге, что под виндой она не грохнется вместе с самой означенной здесь виндой :( ;)
Написание софта ради софта, как правило бессмысленно и никому не нужно. Даже самому создателю. Незнание ОС, как и уголовного кодекса не освобождает от ответсвенности.
А теперь серьезно.
Создание новой ОС должно ответить (на мой взгляд) во первых на два вопроса: зачем и почему. Что неудовлетворяет в существующих ОС. Чем они плохи. Зачем нужна новая. Вот и эта тема выливается в "вечный" (и по моему опять же бессмысленный спор) какая ОС лучше. UNIX или WINDOWS. Да обе они нормальные. У каждой свои достоинства и недостатки. Мат. часть нужно учить в первую очередь. У меня сын лет так в 13-14 задумал написать WINIX. Ну понятно, что это такое и чем это кончилось. Единственный плюс, хоть в архитектуре ОС разобрался. В спорах истина конечно рождается, но хоть кто нибудь может составить спецификации ОС, которая на его взгляд сможет конкурировать с UNIX и WINDOWS, или хотя бы просто высказать свой взгляд на то, какой должна быть современная ОС? По моему уж если начинать, то с этого.
>Показалось, что написано у Танненбаума слишком прямолинейно и реализация смотрит сугубо в одну сторону - UNIX.
с чего ты взял? в книге Современные ОС ни какого уклона на никсы нет, а сама книга по себе паршивенькая, фиии... Настаяшая мечта осьлдевелопера это книги антонимы Unix изнутри (Вахалия), Внтуренннне устройства и тра та та виндоус 2000 (Руссинович и Соломон). во =)
в книге Современные ОС ни какого уклона на никсы нет, а сама книга по себе паршивенькая
именно поэтому, скоммуниздив у Танненбаума идею из книги (не из этой правда), Торвальдс склепал свою одиозную ОСь...
Андрей, незнаю я таких :P
а зря...
ЗЫ: весело флеймим.
Кхм...
Во первых: в вашем профиле (если вы не знаете, то его может посмотреть любой, щелкнув на соответствующую ссылку в любом из ваших сообщений) указана точная дата рождения: June 18, 1984. Или хотите сказать, что я ее сам выдумал? Писав свое сообщение я опирался именно на это, а не на то, что написано под вашим ником (там написать можно все, что угодно). Кстати там написано "бывалый", при чем здесь "новичок" я вообще не понимаю!
Во вторых: выражайтесь точнее, если хотите избегать подобных конфликтов. Вы ведь написали именно так: "инета тогда и не было".
Ну и в третьих: обзываться просто некрасиво! Я ведь вас ни как не обозвал, и не в чем не обвинял.
З.Ы. "Я вообще-то металлург по профессии" - а я байкер по призванию, и что дальше?
Я программированием с 10 лет занимаюсь, 11 лет будет в апреле (не связано с днем рождения).
А вообще, извиняюсь, я ваш ник прочитал как "студент-недоучка". А призвание и профессия - разные вещи (как мне мой опыт подсказывает) :)
Да, и еще, в дате рождения частенько врут (не в моем случае).
Envel не тупи, может ты еще и копию свидетельства о рождение пришлёшь? :D глотни пива и забудь ;)
Сессия, блин...
ЗЫ: меня всегда умиляют начинающие хацкеры, которые написали три мега проги: вечно падающий кейлоггер, траян по шаблону на VB и "HelloWorld" под Linux (!), после этого решившие, что они крутые и могут тявкать на дядю Билли...
Как я понял, Вы и меня считаете элементом вышеописанного множества?
Я вот лично против дяди ничего не имею, а вот против компании - да: неприятна их политика. А народ там весёлый... Например в каком-то файле (не помню точно в каком), относящемся к PhotoEdt из XP-шного офиса есть такая вещица:
Leha, Leha
Tj mogyg!
Moget dage
zlo e*
Хотя, это кто-нибудь руссификаторв мог впихнуть...
ЗЗЫ: интересно, сколько человек в этой ветке от корки до корки прочитало и осмыслило "Операционные системы" Танненбаума? или равную по глубине материала литературу? думаю человека 2...
А я вот не читал. В чём сссуть?
Как я понял, Вы и меня считаете элементом вышеописанного множества?
.....
А я вот не читал. В чём сссуть?
1. я на личности не переходил... ;)
2. сссуть - в уяснении теории изложенной человеком высокой квалифкации... как говорит один уважаемый мною человек: "знание принципов компенсирует незнание фактов"
1. я на личности не переходил... ;)
Но всё же на что-то намекали?:x
"знание принципов компенсирует незнание фактов"
Гениально! Это теперь станет моим жизненным кредо!:D Я серьёзно: всегда придерживался такого же мнения, но мой скудный разум мешал его сформулировать.
З.Ы.: А в электронном виде есть? Как давно издавалась последний раз?
ну-ну друг мой... я никогда ни на что не намекаю.
а насчет кредо... - а вы не согласны?
V_oron i
ну-ну друг мой... я никогда ни на что не намекаю.
Тогда я ничего не понимаю! (о как рифмуется :D)
а насчет кредо... - а вы не согласны?
Боже упаси! (да позволено это будет сказать старому атеисту :angel:. Повторю: абсолютно согласен. Соглашался раньше. В метро мне пришла идея: оно не годится для физики. Принципы (теоремы, законы) изначально приходят из эксперимента. Реже доказываются чисто теоритические положения, да и те, в конечном результате, получаются из опыта. А результат эксперимета - факт.
З.Ы.: С каждам днём всё сложнее и сложнее становится беседовать на темы не касающиеся "куска" кремния. :(
Кстати, вот я ламо такое, не могу придумать ни одной задачи, которую нельзя было бы решить в Винде. Подскажите, может у меня тогда стимул к изучению Линукса появится.;)
А я знаю одну задачу которую нельзя сделать в Винде - это перешить биос. В Линуксе тоже наверно нельзя этого сделать.
И еще эмулировать перезапуск компютера, для проверки работоспособности только что прошитого биоса.
Всякая задача которая неможет быть запущена, из-за того что она должна использовать прямой доспуп к железу, который Виндовс не допускает, по проблемам своей безопасности.
Всяка задача критичная к даже кратковременым прерыванием своей работы.
Я думаю что если писать Ось, то не надо писать клоны Виндовсов и Юниксов, так мы не сможем конкурировать с тысячами програмистов пишущих эти Оси.
У меня есть идея какую Ось стоит писать, Ось не для постаяного использования, а для спициальны задач, таких как я написал выше, тех которые требуют полной отдачи от системы. При этом чтоб она была защищеной и 32-разрядной. Сделаную не по принципу "В целях безопасности как можно больше урезать в правах задачи", а "Дать по больше прав задачи". Такая Ось не будет конкурировать с сущиствующими осями, а займет свою нишу.
У меня есть идея какую Ось стоит писать, Ось не для постаяного использования, а для спициальны задач, таких как я написал выше, тех которые требуют полной отдачи от системы.
<skipped>
Такая Ось не будет конкурировать с сущиствующими осями, а займет свою нишу.
Ага. Давайте будем писать ОСь спициально для перепрошивки BIOS! А еще круче - ОС для BIOS!
А я знаю одну задачу которую нельзя сделать в Винде - это перешить биос.
И еще эмулировать перезапуск компютера, для проверки работоспособности только что прошитого биоса.
Сам понял, что сказал?
Во первых перепрошить можно, а во вторых - эмулировать как? раком? А проверка вообще то осуществляется подсчетом контрольной суммы.
Сам понял, что сказал?
Во первых перепрошить можно, а во вторых - эмулировать как? раком? А проверка вообще то осуществляется подсчетом контрольной суммы.
Эмулировать рестарт, нужно после проверки контрольной сумы. Это осуществляется в защищеном режиме с эмуляцией не защищеного с передачей управления на адрес перезапуска.
Хотя не знаю как это на практике получится.
Ага. Давайте будем писать ОСь спициально для перепрошивки BIOS! А еще круче - ОС для BIOS!
Почему же только для перепрошивки, есть еще много задач которые она сможет решать, работа с диском (прямое коректирование секторов, сканирование ошибок, дефрагментация низкого уровня (при этом ось не будет им мешать).
Хорошо на ней будет писать CD-диски, не будет загружать процесор задачи паразиты.
Ось будет обладать почти 100% запуском дос програм с дополнительными возможностями - убивания програмы в случае ее разрушения или зависания, без перезапуска, замораживание и запись задачи на диск, с последущем чтением и продолжением загруженой задачи.
Использование оси в качестве аварийной для востановления основной
Эмулировать рестарт, нужно после проверки контрольной сумы. Это осуществляется в защищеном режиме с эмуляцией не защищеного с передачей управления на адрес перезапуска.
Хотя не знаю как это на практике получится.
Почему же только для перепрошивки, есть еще много задач которые она сможет решать, работа с диском (прямое коректирование секторов, сканирование ошибок, дефрагментация низкого уровня (при этом ось не будет им мешать).
Хорошо на ней будет писать CD-диски, не будет загружать процесор задачи паразиты.
Ось будет обладать почти 100% запуском дос програм с дополнительными возможностями - убивания програмы в случае ее разрушения или зависания, без перезапуска, замораживание и запись задачи на диск, с последущем чтением и продолжением загруженой задачи.
Использование оси в качестве аварийной для востановления основной
Дикий кал
Тебе подойдет DOS Extender одним словом.
PS: Большому кораблю большое плавание.............
Хорошо на ней будет писать CD-диски, не будет загружать процесор задачи паразиты.
Знаешь, это очень актуально, особенно если учитывать, что все современные приводы поддерживают UDMA 33.
есть еще много задач которые она сможет решать, работа с диском (прямое коректирование секторов, сканирование ошибок, дефрагментация низкого уровня (при этом ось не будет им мешать).
Есть у меня знакомый чел - он такими задачками занимается под DOS'ом, и никаких проблем не знает.
Хорошо на ней будет писать CD-диски, не будет загружать процесор задачи паразиты.
Так незачем разводить паразитов! Та же винда 2000 нормально пашет на 20-ти процессах (включая эксплорер, который можно вырубить).
Если ненужна тебе прога - тормозни ее, и делов.
с дополнительными возможностями - убивания програмы в случае ее разрушения или зависания, без перезапуска,
Попахивает *nix-овым kill [-9] pid.
замораживание и запись задачи на диск, с последущем чтением и продолжением загруженой задачи.
А идея свопинга (файл pagefile.sys, или *nix-swap раздел) вам не знакома? Это где про сброс остановленного процесса в файл подкачки или специальный раздел.
Использование оси в качестве аварийной для востановления основной
Извиняюсь, но помоему для виндов полно всяких реаниматоров. Мне например хватает средства автоматического восстановления с установочного диска - даже реаниматоров не надо. Все дано добрым дядей Гейтсом! Если этого не хватит, то есть там еще одна штука - консоль восстановления называется: вот и восстанавливайте сколько душе угодно.
С *nix-ами примерно таже ситуация.
ЗЫ: помоему, гораздо лучше вместо изобретения велосипеда изучить возможности существующего.
Использование оси в качестве аварийной для востановления основной
К слову сказать, у меня со времен сборки этого компьютера в отдельном разделе стоит Windows ME в качестве резервной. Не переустанавливалась более двух лет. Работает с глюками, конечно, но работает! Правда резервная система резервная и есть - я ею не так часто пользуюсь.
Есть еще два загрузочных диска - DOS с полным набором программ, в том числе поддержкой длинных имен файлов и Windows XP - с консолью восстановления.
А я знаю одну задачу которую нельзя сделать в Винде - это перешить биос.
бред. еще как перешивается. легким движением руки.
и вообще - к вопросу о специализированных ОС. если пошевелить серыми клеточками, то станет ясно что ВСЕ ОС давным давно - специализированные. и все потуги сделать из Solaris - рабочую станцию для верстки текстов, а из Windows 2000 - бездисковый роутер - не более чем изыски энтузиастов.
А что там за звездочки справа от темы появляются? :)
По, пока не подтвердившимся, результатам исследований наших ученых, звездочки - рейтинг темы, на основе голосования (Слово пишется слитно!!!).
По, пока не подтвердившимся, результатам исследований наших ученых, звездочки - рейтинг темы, на основе голосования (Слово пишется слитно!!!).
«… и вот показываются одна, две, три звёздочки! Ну, лучше, конечно же, пять…»
/ «Лектор» /
Пипл, у меня идея, а давайте интереса ради напишем ОСь... ну как идейка?
не ты первый, не ты последний! пару лет назад на этом самом форуме была такая же идея создания оси! объеденились люди и решили написать ось. был создан сайт с форумом где обсуждались все вопросы по созданию оси, но на этом всё и закончилось, потому что:
1. не сошлись на структуре ядра (макро или мини)
2. язык написания (асм или с++)
3. расстояние (по интернету не так уж просто писать ОС как кажется)
4. ну было еще очень много непоняток
в конце-концов просто разделились на 2 команды, но не у первой не у второй ничего не получилось
Есть у меня знакомый чел - он такими задачками занимается под DOS'ом, и никаких проблем не знает.
Так незачем разводить паразитов! Та же винда 2000 нормально пашет на 20-ти процессах (включая эксплорер, который можно вырубить).
Если ненужна тебе прога - тормозни ее, и делов.
Попахивает *nix-овым kill [-9] pid.
А идея свопинга (файл pagefile.sys, или *nix-swap раздел) вам не знакома? Это где про сброс остановленного процесса в файл подкачки или специальный раздел.
Извиняюсь, но помоему для виндов полно всяких реаниматоров. Мне например хватает средства автоматического восстановления с установочного диска - даже реаниматоров не надо. Все дано добрым дядей Гейтсом! Если этого не хватит, то есть там еще одна штука - консоль восстановления называется: вот и восстанавливайте сколько душе угодно.
С *nix-ами примерно таже ситуация.
ЗЫ: помоему, гораздо лучше вместо изобретения велосипеда изучить возможности существующего.
разреши заметить, что ты на все 100% прав :))
а че за люди че за оси? первый раз слышу =)
а че за люди че за оси? первый раз слышу =)
Господа модераторы. Предлагаю добавить оценку 0 - Флуд. Этой теме именно такая подходит.
PS хотя и это тоже флуд.
PS хотя и это тоже флуд.
Флудеры... (c) Лохматый.
Впредь прошу не срываться на желающих написать свою ОС. Может Windows не получится, зато автор получит массу опыта и знаний.
При написани обычной Оси все что может та Ось, которую смогут написать, уже сделана в других осях, и ращитывать на то что их ось станет конкурентной с ныне существующими не приходится.
Так что встает вопрос:
Написание какой оси более бесполезно? И ответ на него очень спорный.
Я себе представляю свою Ось так: Малая, где-то пару мегабайт полный пакет в жатом виде. Не графическая. При входе в Ось сразу входиш в диспечер задач, где записаны все задачи которые можно запустить, которые уже запущены, их параметры(доступ к каким портам, к каким действиям, к каким частям диска разрешина, разрешино ли задичи запускатся с другими задачами, может ли задача запускатся не один раз, и как она будет запускатся при повторном запуске, будет ли останавливатся задача при потере активности, сохроняймые даные, для задачи). В диспечере будут запускатся, менятся параметры, добавлятся, загружатся из файла параметров задачи. Менятся параметры системы. И только диспечер сможет это делать. От задач вся эта информация, кроме сохроняймых даных для этой задачи, будет закрыт и одна задача не сможет запускать другую.
В дескрепторе будут запускатся, менятся параметры, добавлятся, загружатся из файла параметров задачи. Менятся параметры системы. И только дескрептор сможет это делать.
На счет идеи - в принципе ничего против не имею, но можно как нибудь с вышеприведенным подробнее и яснее. Как в дескрипторе может что то запускаться? Дескриптор это описатель чего либо - процесса или файла например. И что он может сделать? Конечно есть еще дескрипторы постраничного доступа к памяти, но это помоему сюда не относится, да и назначение у них не то.
одна задача не сможет запускать другую
Интересно, и что же это получится? Как можно создать более-менее работоспособную и действенную ОС, без взаимодействия процессов? Или предлагается спрашивать у пользователя разрешение на запуск каждой задачи?
ЗЫ: пожалуйста обратите внимание на орфографию того, что пишите.
Вы пишете что написание такой не стандартной Оси бесполезно, и все задачи которая она должна решать, решаются или в Dos-е или в других Осях. Но если сравнивать написание такой Оси и написание обычной Оси при малом количестве програмистов:
При написани обычной Оси все что может та Ось, которую смогут написать, уже сделана в других осях, и ращитывать на то что их ось станет конкурентной с ныне существующими не приходится.
Так что встает вопрос:
Написание какой оси более бесполезно? И ответ на него очень спорный.
Я себе представляю свою Ось так: Малая, где-то пару мегабайт полный пакет в жатом виде. Не графическая. При входе в Ось сразу входиш в диспечер задач, где записаны все задачи которые можно запустить, которые уже запущены, их параметры(доступ к каким портам, к каким действиям, к каким частям диска разрешина, разрешино ли задичи запускатся с другими задачами, может ли задача запускатся не один раз, и как она будет запускатся при повторном запуске, будет ли останавливатся задача при потере активности, сохроняймые даные, для задачи). В дескрепторе будут запускатся, менятся параметры, добавлятся, загружатся из файла параметров задачи. Менятся параметры системы. И только дескрептор сможет это делать. От задач вся эта информация, кроме сохроняймых даных для этой задачи, будет закрыт и одна задача не сможет запускать другую.
у меня к тебе, а вернее к тому, что ты написал иммется пара вопросов =):
1. в каком смысле твоя ос должна быть жатой??? :))
2. если ты говоришь, что ты сразу после входа в ос попадаешь в диспетчер задач, то о каких запущенных задачах идет речь??
3. из написанного тобой становится понятно, что, твоя "пару мб" занимающая ось, должна быть многозадачной (т.е. встроенный шедулер и т.п.). Вопрос: настолько ли это нужно писать многозадачную ос, если она ничего толком делать не должна?
4. "их параметры(доступ к каким портам, к каким действиям, к каким частям диска разрешина, разрешино ли задичи запускатся с другими задачами, может ли задача запускатся не один раз, и как она будет запускатся при повторном запуске, будет ли останавливатся задача при потере активности, сохроняймые даные, для задачи)." шедулер должен быть крутым :))) уж даже очень ;)
5. "разрешино ли задичи запускатся с другими задачами" это как??
6. "будет ли останавливатся задача при потере активности" так зачем тогда многозадачность?? в досе такая фигня была и ничего (например волков коммандёр).
7. насчет "дескрептора" (дискриптор): ты вообще в курсе что это такое?? :О
8. "И только дескрептор сможет это делать" - а по-моему это шедулер делать должен.
9. "одна задача не сможет запускать другую." а вот это уж слишком =)
у меня к тебе, а вернее к тому, что ты написал иммется пара вопросов =):
Ну... Зря вы его так распекли ;). Может человек испытывает проблемы с русским языком - тогда это несмешно совсем.
"разрешино ли задичи запускатся с другими задачами" это как?? - это в принципе понять еще можно, наверно типа того, что нельзя одновременно запускать программу "убийства" процесса, и запускать сам процесс имхо.
А так - в основном я с вами согласен.