Murzilka #07 |
|
Мысли - Некоторые мысли по поводу осей.
Некоторые мысли по поводу осей. Дан- ная статья была написана довольно давно под впечатлением бесед с самим ( С СА- МИМ!:)) XOR'ом. Он даже говорил, что есть люди, у которых есть подобные идеи и он их опубликует в ближайшем номере "Абзаца", но пока я что-то этих статей не видел. Поэтому я решил не выбрасывать этот текстик в небытие, а использовать его для увеличения об'ема родной "Мур- зилки". ---------------------------------------- Чем плоха is dos? Отвечаю по пунктам, начиная с наиболее серьёзных недостат- ков: О) Несовместимость с Tr dos. Тот, кто думает, что tr dos устарела/не отражает/ не позволяет/и т.д. не хочет принимать об'ективную реальность: всё, что сделано на спеке ( не считая таре loading ) сде- лано под tr dos. И вот так вот просто взять это всё и выбросить ( адаптировать никто ничего не будет ) никто не согла- сится. И даже, если будут писаться проги под is dos или другую не tr dos систему я, например, подумаю приобретать такую программу или нет ( если прога под isdos, то однозначно я её даже у друга бесплатно копировать не стану ); 1) Всё, что сделано в isdos тормозит со страшной силой. Из этого пункта вытекают несколько подпунктов: а) Копирование файлов tr dos/ms dosis dos представляет собой мазохизм, я уже не говорю о попытках переностить файлы из ms dos в tr dos и наоборот посред- ством этой системы. При том, что такие операции приходится проделывать очень часто и с большими объёмами информации - только под is dos никто не работает, по- тому что люди на Спеке не бухгалтерию ведь ведут и не используют его только как печатную машинку/калькулятор. Им нужны графические/музыкальные/и т.д. редакторы/ассемблеры/упаковщики/и всё прочее. Нужно сшивать много файлов в один релиз - а это и в tr dos часто делается в ручную, под is dos это всё невозможно. Серьёзные люди скажут: да ведь это же несерьёзно - сшивать проги в один файл ( игру, например ). Если вы хотите делать игру, создавайте для неё каталог, подкаталоги, указывайте эти подкаталоги в setup ( .ini ? ), в общем устанавливайте ( слово-то какое страшное ) - для это os вам и запрограммирована. А я спектрумист и, к тому же, люблю иногда покодить и если программа < 255 секторов и занимает в каталоге больше 1 файла, то я считаю это леймом ( это, ко- нечно, относится к готовым программам ). Все это, повторяю, в isdos невозможно. б) Я кодер и мне нужен ассемблер. Ска- жу сразу - под isdos ассемблер писать бесполезно. Там загрузка простого тек- стового файла для его просмотра с мно- жественными заездами головки по диску вызывает массу неприятных эмоций. Что же говорить про ассемблер с его include/incbin'ами - даже представить страшно ( уфф - и правда ужас какой-то! ). К тому же при написании вышеупомяну- тый ассемблер сбрасывается сами знаете сколько раз в единицу времени. Теперь представьте, если бы вы каждый раз загружали isdos... 2) Глюки, приводящие ( довольно-таки часто ) к выводу из строя самой системы. А так как авторы оси в своё время хотели зарабатывать на ней денежку ( в чём их, конечно же, никто не упрекает - похваль- ное и понятное желание ) и копирование системы занятие довольно-таки утомитель- ное даже пиратскими копировщиками, не говоря уже о легальном способе, который могли придумать только извращенцы, то все глюки ( сами по себе довольно безо- бидные и характерные для любой и не isdos проги ) опять-таки сильно дей- ствуют на нервы. Конечно, в isdos много плюсов. Однако идеи, заложенные в ней, как мне кажется, не совсем подходят Спектруму. В общем я хочу предложить ряд мыслей по поводу того, какими путями можно соз- давать новую ось. Во-первых, что я хочу от новой оси: 1) Совместимость с trdos - хотя бы на том уровне, чтобы trdos проги без проб- лем работали под новой системой; и про- ги, сделанные уже под новую ось при же- лании можно было запускать из trdos; 2) Многокаталоговость; З) Максимальную скорость работы с дис- ком: это значить никакой фрагментации с кластерами, fat и т.д.; 4) Минимум ограничений на написание прог под новую ось; 5) Возможность выхода из программ прямо в систему ( без сброса компа ), наличие какого-нибудь подобия буфера обмена; 6) Возможность отрытия файлов соответ- ствующими программами. Это минимальные требования. Как всё это реализовывать. Во-первых, основаная проблема - это стандарт: фор- мат диска и связь системы с программами ( вход/выход из проги, адреса рези- дентных программ load file/save file ). Диск должен быть максимально похож на нормальный trdos: корневым каталогом бу- дет считаться обычный каталог trdos, расположенный, как известно, на нулевой дорожке. Подкаталоги можно разместить в конце диска, пусть они растут сверху вниз до пересечения с последним записан- ным файлом. Совместимость с trdos дос- тигнута. Осталось разработать стандарт для работы с программами из системы. Для этого необходимо найти место в памяти для резидентов, обеспечивающих нормаль- ных выход из программы, вход с загрузкой нужного файла и работу программы с дис- ком, если это нужно. А вообще работу с диском каждый программист сможет напи- сать сам, как это делается сейчас под trdos и тогда область резидентов можно будет грохнуть и т.о. останется только подпрограмма выхода в систему. Т.е. не будет практически никаких ограничений. После разработки стандарта саму систему сможет написать любой программист. Нап- ример, можно будет сделать её точной ко- пией jemini comander, но с подкаталогами и прочими наворотами - вобщем кому как захочется. Главное, что возможностей у всех этих прог будет намного больше, чем у всех существующих сейчас boot'ов.
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября