Цитата:
Сообщение от Vitamin
1)(в случае спека не совсем актуально- чтением занимается процессор) или ввода пользователем чего-нибудь. имеет смысл использовать свободное время с пользой.
Это к вопросу о DMA USC. =)
Цитата:
3) делать ядро из модулей (типа линуха). в начальной поставке идет универсальное ядро, поддерживающее всевозможное железо или минимальную конфигурацию, работающую где угодно. юзер на целевой машине конфигурирует сборщик, определяя нужные ему возможности и выкидывая ненужные. ядро пересобирается. все довольны.
Или из библиотек - как на амиге. Кстати - у меня собственно есть подробные описания амигаоса в виде тамошних *.guide - могу выложить - и попытаться даже в хтмл сконвертить - стоит?
Цитата:
5) если углубляться дальше, то нужно затронуть тему диспетчеризации процессов. с целью уточнения, проконсультировался с преподом у себя в универе. согласно выдвинутым требованиям, он предложил схему с двумя классами процессов- реального времени и разделения времени. процессы реального времени выполняются каждый квант диспетчеризации по цепочке. это могут быть процессы времени, обслуживания ау и проч. остальные процессы распределяются согласно своим приоритетам в оставшееся свободное время.
См. моё предложение в предыдущем посте - комментарии?
Цитата:
6) менеджмент памяти. вот тут возникают довольно большие проблемы. в частности изза страничной организации памяти. нижнюю память можно отдать на откуп системы для хранения структур, таблиц и проч. а в верхних страницах хранить процессы. проблема в диспетчере, который должен обеспечивать контроль всей доступной верхней памяти (пусть с точностью до блока в 256 байт)- сложности в ее переменном количестве и возможности разделения одной области памяти несколькими процессами. в принципе эта проблема почти решена, дело за реализацией чтобы проверить идею.
Тут имхо как раз основные проблемы
Мелкие проги будут себя хорошо чувствовать в страничках (по 16кб), а крупные ? Например, уровня аласма - полностью без использования памяти #0000-#BFFF ? Даже написать такое - мазохизм будет... И вообще, как ты себе представляешь работу с выделенной памятью? Например, хочешь ты выделить память под хранение переменных к-л проги, вот дали тебе кусок, скажем, 256 байт - а дальше что - постоянные ld a,(ix+n) или ld h,'addr, ld l,переменная ld a,(hl)? А если эта память в другой странице - не в той, где код работает?