Ersh
Зарегистрирован: 20.01.2004 Сообщения: 107
|
Добавлено: Чт Фев 05 2004 14:20 Заголовок сообщения: |
|
|
сталкивался, даже сам делал, где-то год назад...
Значит так, работу операционной системы мы отображали, с помощью процессов. То есть есть кнопочка начать процесс, соответсвенно есть поля: приоритет процесса, его имя, сколько виртуальной памяти он использует и т.д.(другие что-то не вспоминаються, но их было немало, айди процесса менять нельзя он сам присваиваеться). Дальше, есть график каокй процесс сколько использовал времени процессора, так же можно останавливать и запускать заново эти процессы, то бишь переводить их в состаяния ожидания, и убивать их, естветсвенно.
Все это дело надо организовывать на классах, структуру сам придумай, на память так не помню, но понятное дело должно быть имя процесса, его айди, потом его состояние, активный, не активный, сколько времени процессора он использовал и т.д...
Потом есть несколько очередей, одна - ожидание процессора, второая для "спящих" процессов. В цикле проходишь по первой очереди, находишь процесс с наименьшим приоритетом, увеличиваешь время использованное процессом на сколько надо, увеличиваешь приоритет, когда приоритет у процесса станет максимальным опять ему присваиваешь значение заданое вначале, максимальный приоритет считаеться в заисомости от количества процессов.
А вот с файловой системой там все гораздо сложнее, там тебе и структуру ее надо показать, соответсвенно у тебя должны быть класс файловая система, класс кластер, класс диреектория, класс файл.
Соответственно ты должен будешь показать весь этот массив, и сделать хотя бы одну комманду, к примеру, dir, которая будет показывать все дирректории и фаилы содержащиеся у тебя в этой дирректории. _________________ Анархия - мать порядка!!!!!!!!! |
|