Phantom OS

Тема в разделе "WASM.HEAP", создана пользователем Monogen, 12 янв 2011.

  1. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Регистрация:
    30 ноя 2008
    Сообщения:
    933
    Имхо, постановка задачи выглядит одновременно чересчур абстрактно но вместе с тем чересчур специализировано.

    "Я напишу вам такую ось которая будет практически мгновенно делать снапшоты для всех программ для восстановления в случае сбоя..."

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

    Если задача стоит о критически важных процессах типа (наверное) как на самолетах то там строго один процесс и ничего лишнего и - как уже сказали - батарея бесперебойников и можно дублировать на нескольких процессорах одновременно.

    Можно также создать апи чтобы задача могла сама сказать что как и в какой последовательности снапшотить.

    И еще раз - я не могу себе представить задачек которые реально нуждаются в таком. Закачка больших файлов? Нормальные качалки сами ведут журналы и потреяют совсем немного. Очень сложные долгие матрасчеты, моделирование, брут? Также уместно сначала требовать скидывать промежуточные данные задачи в лог, ну в крайнем случае как я уже сказал - спецапи которое в теневом режиме заботиться об этом (возможно подгрузит драйвер если нужно).
     
  2. KeSqueer

    KeSqueer Сергей

    Публикаций:
    0
    Регистрация:
    19 июл 2007
    Сообщения:
    1.183
    Адрес:
    Москва
    Если произойдёт сбой, не удастся сохранить состояние процессора. Соответственно, восстановить работу программ станет невозможно. Либо нужно сохранять его состояние для всех потоков ежетактно.
     
  3. newbie

    newbie New Member

    Публикаций:
    0
    Регистрация:
    2 дек 2008
    Сообщения:
    1.246
    шутник :lol:
     
  4. qqwe

    qqwe New Member

    Публикаций:
    0
    Регистрация:
    2 янв 2009
    Сообщения:
    2.914
    Z3N
    старт граф оболочки и дебуг консоль в жит режиме 9.
    [​IMG]
    виден дис-asm, гас из жита, адреса переменных, типы, прочая внутренняя инфа по мере житанья
     
  5. J0E

    J0E New Member

    Публикаций:
    0
    Регистрация:
    28 июл 2008
    Сообщения:
    621
    Адрес:
    Panama
    БЫло такое еще на древнем Spectrum и называлась Magic Button, сбрасывало снэпшот сосотояния, памяти и регистры на дискетку, потом можно было загрузиться с прерванного сосотояния.

    Фантома не смотрел, прочитал тока, что это наследник BeOS, а сталобыть и Amiga Rulez & Wintel Must Die :)
     
  6. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    qqwe
    Что такое п9/инф?

    J0E
    Ага, не сейчас это не просто потомки, а дети лейтенанта Шмидта ;)
    Каждый считает долгом упомянуть своё родство с беос, имя-то на слуху!

    KeSqueer
    К сожалению не верно, восстанавливается система на момент последнего снапшота, а во время этого снапшота можно сохранить состояние процессора.
    Кстати, там единое адресное пространство...

    Насчёт ide и компиляторов.
    Ну, не знаю. Мне студия + VisualAssist больше всего нравиться. Хотел бы пересесть на что-нибудь бесплатное, но ничего подобного не видел. Нравится подсветка локальных переменных и акронимы (Напечатать gfn вместо GetFileName(жутко удобно!)). Если кто-нибудь знает что-то подобное и бесплатное, то дайте ссылки ;)
    А код у студии более понятный имхо. Гцц делает странный код... манипуляции со стеком какие-то странные. И даже не знаю что быстрее ясно как у студии или завороты у гцц.
     
  7. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Сделает он ОС. Это не так трудно. Вопрос в том, почему не сделал?
    А то что сбрасывает всё на диск. Ну так это просто надо заставить писать программистов маленькие программы. И второе чтобы программа сообщала что можно сбрасывать, а с чем повременить. Работа аналогична сборщику мусора.
     
  8. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    Pavia
    Нельзя временить. Автор прямо пишет, что для программиста всё должно быть прозрачно.
    Программы на яве не жрущие тонны памяти? У меня javaw.exe отжирает 60 мегов сходу на одну программу.
     
  9. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    Z3N, пробовал Eclipse + CDT?

    cupuyc сам себе противоречит. Либо попросту не знает элементарных вещей. Например, что 10 миллисекунд чтения/записи порции данных на диск - это ЖД должен быть только-только с прилавка. Обычно же запись может длиться и 50, и 200 миллисекунд. И то, что при вибрациях скорость чтения/записи падает тоже полезно бы знать.
     
  10. NeuronViking

    NeuronViking New Member

    Публикаций:
    0
    Регистрация:
    29 окт 2004
    Сообщения:
    476
    Адрес:
    где-то в Сиднее
    да это все понятно, не понятно пока как он будет это реализовывать с учетом взаимоисключающих требований к производительности (чтобы не нужно было идти спать после нажатия Magic Button ;)) и надежности. наверное это возможно, если саму концепцию многозадачной ОС изменить. А если опираться на общепринятые подходы реализации и принципы архитектуры то добиться "нормальной" производительности с надежностью не получится.


    ПС. "После перезапуска системы она всё равно восстановится в том виде, который имела за несколько секунд до спонтанного выключения." - интэрэсно, а как гражданин определит, что до спонтанного выключения осталось несколько секунд? =))))
     
  11. NeuronViking

    NeuronViking New Member

    Публикаций:
    0
    Регистрация:
    29 окт 2004
    Сообщения:
    476
    Адрес:
    где-то в Сиднее
    бабло не всегда зло. иногда бабло катализатор развития и появления новых технологий ;)
     
  12. NeuronViking

    NeuronViking New Member

    Публикаций:
    0
    Регистрация:
    29 окт 2004
    Сообщения:
    476
    Адрес:
    где-то в Сиднее
    в рамках одного процесса/приложения блокировки может быть и не всегда затратны, но в целом для операционной системы сам механизм lock/unlock (даже без ожиданий) довольно дорогой. грамотные люди вообще стараются так спроектировать данные, чтобы вообще обойтись без блокировок. так что блокировки это всяко зло - это и ресурсы, и производительность, и потенциально опасный код. ну и еще сложный для дальнейшего мейнтенанс (расширение функциональности, модификация, отладка).
     
  13. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    SadKo
    Просто эклипс пробовал, СДТ нет. Спасибо, качаю....

    NeuronViking
    Это не всегда зло, но всегда где-то близко от зла ;)
    Просто туда где много денег всегда притягивает людей которых интересуют только деньги... к сожалению. Х(
     
  14. branvi

    branvi New Member

    Публикаций:
    0
    Регистрация:
    21 янв 2011
    Сообщения:
    40
    Phantom OS - идейно правильная операционная система.
    В будущем разница между оперативной памятью и жестким диском сотрется. Появятся модули, которые будут иметь очень высокую скорость доступа, но смогут сохранять состояние после отключения энергии.
    Кому нужны эти 30-60 секунд загрузки? Каждый раз запускать все заново? Я уже давно использую только гибернацию. Компьютер стартует за 2 секунды.
    Принципиальных теоретических ограничений на реализацию принципа работы системы без перезагрузки нет и сейчас. Можно не отключать питание от оперативной памяти. (Сбрасывать на диск только в случае сбоя в сети.)
    Перезагрузка системы в будущем станет редкой процедурой эквивалентной переустановке системы.
     
  15. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    branvi
    Наконец-то и сам разработчик фантомаса подтянулся ;)
    Слава богу, а то я и забыл ему написать %)
     
  16. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Регистрация:
    17 июн 2003
    Сообщения:
    2.409
    Адрес:
    Fryazino
    Z3N
    А вы значит менеджер?

    branvi
    У SSD проблемы! Чем меньше объем ячейки тем она не стабильнее себя ведет. А по поводу памяти. Сейчас используется более дешёвая память SDRAM. На конденсаторах с которых как известно стекает заряд. Поэтому в такой памяти предусмотрен механизм обновления данных.
    Так что в случае сбоя может оказаться что уже нечего сбрасывать.

    Рост объемов памяти, жестких дисков соизмерим с ростом информации. Хотя последняя как отмечают аналитике растет больше.
    А по свой лени я не закрывают программы. Поэтому в памяти у меня сидит более 500мб с условием скорости HDD 60мб/с будет грузиться более 9 секунд.
    Вывод надо бороться с ленью. И минимизировать все затраты.
     
  17. Z3N

    Z3N New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2009
    Сообщения:
    812
    Pavia
    :S
    C какого испуга?
     
  18. SadKo

    SadKo Владимир Садовников

    Публикаций:
    8
    Регистрация:
    4 июн 2007
    Сообщения:
    1.610
    Адрес:
    г. Санкт-Петербург
    branvi, вот вы предлагаете питать память от аккумулятора. А что мешает поставить UPS. Это же, по сути, аналогичное решение, имеющее ещё и дополнительное преимущество: не надо рестартовать процессор.
     
  19. KeSqueer

    KeSqueer Сергей

    Публикаций:
    0
    Регистрация:
    19 июл 2007
    Сообщения:
    1.183
    Адрес:
    Москва
    branvi
    Без перезагрузки нельзя обновить основные компоненты системы. Апдейты выходят раз в неделю. Раз в неделю, конечно, можно и перезагрузиться, но, всё же, не стоит сравнивать это с переустановкой.
    А так - да, следует смотреть в будущее при разработке.
     
  20. Voodoo

    Voodoo New Member

    Публикаций:
    0
    Регистрация:
    9 апр 2003
    Сообщения:
    297
    Адрес:
    Новосибирск
    KeSqueer
    касательно апдейтов - в erlang уже давно существует hot code swap, обновление кода на рабочей системе.
    хотя, это требует от системы некоторых условий, вроде отсутствия shared state и иммутабельности.