User Tag List

Страница 35 из 47 ПерваяПервая ... 313233343536373839 ... ПоследняяПоследняя
Показано с 341 по 350 из 466

Тема: Алан Кокс представил Unix-подобную ОС Fuzix, ядро которой потребляет около 40 Кб ОЗУ

  1. #341

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от bigral Посмотреть сообщение
    64k? а какой толк от него будет? прийдется пересылать блоки между страницами только через регистры процессора (которых галяк), ну или через тормознутый i/o... (и тогда надо будет иметь копию кода для этого i/o в каждой странице) или тогда надо будет лепить какой-то еще memory-memory "копировщик" кроме Z80 на шину...
    64к это условно.
    На Орионе например переключается только 60к (а верхние 4к "склеенные" для всех страниц). Такая же модель памяти была исходной у Кокса при написании FUZIX. Достаточно удобно получается. Учитывая, что Юзиксу надо в общей памяти максимум 1к ("общей памяти"), то окно может быть и до 63кб размером. При этом каждое переключение контекста - это ldir примерно 2х400 байт ОЗУ + сохранение/восстановление регистров ЦПУ. Несравнимо с ldir Nх16к (в случае если делать процессы больше 16к при окне диспетчера 16к).

    Но даже если переключать 3 окна по 16к - нижние 48k (а верхние 16к - "склеенные", в них кстати можно разместить непереключаемые общие для всех процессов бинари, тот же libc частично, или эмулятор CP/M), то 48к на процесс - это и то очень прилично.

    Удобство в том, что пофиг сколько у тебя окон и какой размер страниц. Например, в моей реализации с 60-к страницами без перекомпиляции прекрасно работают бинарники однатысяча девятьсот мохнатого года от 32к-страничного Юзикса. Т.е. у нас будет кросплатформенность (точнее крос-клоновость) "вопреки всему"
    Последний раз редактировалось Error404; 10.04.2015 в 17:38.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  2. #342

    Регистрация
    12.07.2006
    Адрес
    г. Киев, Украина
    Сообщений
    2,147
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    95
    Поблагодарили
    82 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Удобство в том, что пофиг сколько у тебя окон и какой размер страниц. Например, в моей реализации с 60-к страницами без перекомпиляции прекрасно работают бинарники однатысяча девятьсот мохнатого года от 32к-страничного Юзикса. Т.е. у нас будет кросплатформенность (точнее крос-клоновость) "вопреки всему"
    А ну так это другое совсем, это "максимальное адресуемое пространство для процесса", ясное дело чем жирнее оно тем проще писать прогу (уже обсосали 100 раз, факт что большенство алгоритмов в литературе и компиляторов в жизни не учитывают лимитов адресного пространства).

    К стати тут уже движутся работы в направлении прикручивания link-ера поддерживающего overlays. https://github.com/EtchedPixels/FUZI...oc/SDCCBanking
    Последний раз редактировалось bigral; 10.04.2015 в 19:50.

  3. #343

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,213
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,644
    Поблагодарили
    572 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Какой-нибудь прогресс?
    С уважением, Станислав.

  4. #344

    Регистрация
    21.07.2010
    Адрес
    Ukraine
    Сообщений
    276
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Какой-нибудь прогресс?
    Да никакой, уже более 30 лет
    Запуск на Спектруме мультизадачной операционной системы изначально не возможен без аппаратных доработок и замены процессора на более быстрый. Ну не побежит дедушка Z80 так, как к примеру на FPGA:



    Т.к. начало поддержано не было (ссылка) дальнейшая работа над проектом была свернута. Так, что не видать здесь мультизадачной ОС еще н-нацать лет

  5. #345

    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    484
    Спасибо Благодарностей отдано 
    135
    Спасибо Благодарностей получено 
    16
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Какой-нибудь прогресс?
    Пилю printf на асме. Основная проблема, из-за которой встала работа - катастрофическая нехватка памяти. А львиная доля её приходится на printf() и scanf(). Надеюсь, за счет использования асма и упрощения формата хотя бы килобайта 4 выиграть. Думаю, это позволит продолжить работу над портированием, если "портаторы" не потеряют интерес к тому времени.
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

  6. #346

    Регистрация
    12.07.2006
    Адрес
    г. Киев, Украина
    Сообщений
    2,147
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    95
    Поблагодарили
    82 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sergey Посмотреть сообщение
    А львиная доля её приходится на printf() и scanf().
    всегда удивлялся нафига такая сложная функция в ядре системы??? неужели обычного putchar() getchar() было им мало для реализации требуемого функционала?

  7. #346
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #347

    Регистрация
    06.05.2006
    Адрес
    Ливны, Орловская обл
    Сообщений
    1,169
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  9. #348

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MVV Посмотреть сообщение
    Да никакой, уже более 30 лет
    Запуск на Спектруме мультизадачной операционной системы изначально не возможен без аппаратных доработок и замены процессора на более быстрый. Ну не побежит дедушка Z80 так, как к примеру на FPGA:

    :
    на 7 МГц вполне нормально работает - сужу по uzix, они почти не отличаются с эхотагом, юзикс даже понавороченнее будет. архитектуру только пишите так, чтобы при переключении контекстов был минимум пересылок по памяти
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  10. #349

    Регистрация
    12.07.2006
    Адрес
    г. Киев, Украина
    Сообщений
    2,147
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    95
    Поблагодарили
    82 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NovaStorm Посмотреть сообщение
    А он так или иначе нужен ведь, почему бы и в ядре не попользоваться тогда?
    Как по мне дак совсем не обязательно такому куску как ЯДРО, уметь печатать и форматировать текст так круто как может printf() вполне себе элементарного get/put хватало бы в какую-нибудь виртуальную "консоль", а тут выходит вот такой пример (утрированный), есть грубо говоря 3 куска кода занимающих всю память, 1-й ядро, 2-й printf(), 3-й прога LS например... они как не крути всю память зажрали, если printf() часть ядра то ясное дело что для LS нет маневра, даже тогда если LS решит токо половину printf-a использовать... вот и вся логика.

    А вообще со времен прочтения про modula2 для pdp11 пришло понимание того что надо "уметь" разбивать прогу любой длинны и сложности на куски размером с 1 страницу (для zx это 16kB), тогда можно будет имея пачку свободных страничек + какой-то рабочий буфер выполнять и код ядра и код задач несмотря на ограниченное адресное пространство.

    ---------- Post added at 05:45 ---------- Previous post was at 05:16 ----------

    Цитата Сообщение от Error404 Посмотреть сообщение
    на 7 МГц вполне нормально работает - сужу по uzix, они почти не отличаются с эхотагом, юзикс даже понавороченнее будет. архитектуру только пишите так, чтобы при переключении контекстов был минимум пересылок по памяти
    Я так понимаю что "некоторые" варианты pdp11, (такие как тот же f11 применявшийся в pdp11/23) работают в той же "скоростной категории" что и z80, просто потому что это все те же 5мкм и соответственно примерно равные частоты, а битность на скорость влияет не так сильно как частота и кэши. Так вот многозадачность там работает, в том плане что может сидеть там паралельно человек 5 и набивать текст ed-ом и потом, компилировать его и играть там в rogue... Про графику забудьте, даже в самых простых динамических играх типа manic miner 90% скорости процессора потраченно на графику, так что надо вешать к спектруму еще один Z80 + память (шото типа general sound) и пускать тогда уже unix на нем, такая идея обкатанна на acon bbc b с его tube интерфейсом и множеством видов "second processor"-ов.

  11. #350

    Регистрация
    16.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,082
    Записей в дневнике
    11
    Спасибо Благодарностей отдано 
    173
    Спасибо Благодарностей получено 
    493
    Поблагодарили
    343 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Между тем, в мире появился первый человек, получающий за разработку FUZIX зарплату
    https://github.com/EtchedPixels/FUZI...ment-105659998

    А у меня появилось стойкое ощущение, что в ZX128 оно больше не влазит.
    Граф Дракула наш кумир, патамушта он вомпир!
    VKINK 9 : BORDER NOT PI YTINK 9 Channel

Страница 35 из 47 ПерваяПервая ... 313233343536373839 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Куплю БК 0010 или подобную машинку в Украине
    от LeBohdan в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 06.07.2008, 23:29
  2. SDCC вокруг да около
    от andrews в разделе Программирование
    Ответов: 8
    Последнее: 26.03.2008, 08:16
  3. Ответов: 16
    Последнее: 02.08.2005, 12:20
  4. Ответов: 10
    Последнее: 18.02.2005, 17:45

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •