Операционные системы
Сообщений 1 страница 9 из 9
Поделиться22009-06-07 00:53:06
мыло и телефон Кузнецова
Поделиться32009-06-07 03:02:52
Видеозапись лекции: kuz.avi
Поделиться42009-07-23 08:18:42
Вопрос к тем, кто уже разбирался с лабораторными работами по ОС (хоть я и сомневаюсь, что такие люди существуют). Кто-нибудь понял, что вообще надо делать в этих лабах? Там даже ни порядка выполнения работы, ни толковых методуказаний нет.
Отредактировано garafutdinov (2009-07-23 11:00:53)
Поделиться52009-12-03 09:47:37
Не мыть голову недели три. Поработать недельки 3 в Луниксе. Взламать пара тройку серверов. и на тебя взайдет благодать. Ты поимешь как сделать это задание,и что это за задание. И сделаешь его за 5 минут. Все пошел мыть голову.
Поделиться62009-12-03 18:17:44
Не мыть голову недели три. Поработать недельки 3 в Луниксе. Взламать пара тройку серверов. и на тебя взайдет благодать. Ты поимешь как сделать это задание,и что это за задание. И сделаешь его за 5 минут. Все пошел мыть голову.
Точно подмечено, про то, что не надо мыть голову! Непонятно, правда, в чем причина. Возможно, поверхностно-активные вещества шампуня проникают через кости черепа и блокируют активность нейронов в коре головного мозга. А возможно, почесывания головы улучшают кровообращение.
Но яйца (ну или у кого что) желательно мыть. Потому что их почесывание улучшает кровообращение не в том месте, что явно отвлекает от учебного процесса.
Отредактировано Dad (2009-12-03 18:28:17)
Поделиться72009-12-28 13:03:35
Ну вот, лабораторные по ОС успешно сданы.
Если кому-то еще интересно, как к ним подступиться, скажу пару слов.
Есть программка на C - симулятор микроядерной ОС. Состоит из нескольких модулей, исходники которых описаны в соответствующих парах .c/.h-файлов. Среди них - ядро ОС (cmic.h/.c) - используется во всех лабах, менеджер памяти и проч. Помимо модулей ОС должен быть модуль пользовательского приложения, которое совершает те или иные системные вызовы - в зависимости от специфики задания. В первой лабе это cm_tst.h/.c, в последующих его нужно создавать самому.
Модули взаимодействуют друг с другом посредством системных вызовов. В пользовательском модуле совершается запрос к тому или иному модулю, в вызываемом модуле описан обработчик этого запроса, который выполняет необходимые действия и посылает ответ модулю, его вызвавшему. Основная задача во всех лабах - написать обработчики нужных запросов и вызывать их из пользовательского модуля. Ну и выводить некоторый результат на экран, конечно.
Лаба 1. Вариант у всех один. В пользовательском модуле (cm_tst.h/.c) совершается запрос к менеджеру памяти (cm_mem.h/.c) на запись в память некоторого символа. Задача - реализовать обработчик чтения из памяти этого символа и, собственно, совершить этот запрос на чтение.
Системный вызов - в файле cm_tst.c. Обработчик - в cm_mem.c.
Лаба 2. Работа с файловой системой. Есть суперблок с кучей всяких данных о состоянии ФС. Есть файлы, каждый из которых имеет свой инод. Инод также содержит кучу информации о файле. Файл состоит из блоков. Задания такого типа - создать файл, увеличить/уменьшить файл и т.д. При выполнении любой операции с ФС надо менять нужные поля суперблока и инода. Например, при создании файла нужно в списке инодов пометить инод с заданным номером как занятый, уменьшить на 1 число свободных инодов, пометить все блоки файла как занятые и т.д.
Системный вызов - в файле пользовательского модуля, который надо создать самому. Обработчик - в cm_s5fs.c.
Лаба 3. Виртуальная память. Самая сложная, но есть несколько легких вариантов. Например, 1ый, он даже в примере разбирается. Память разбита на области, область - на страницы. Своп не затрагивал, мне с вариантом повезло.
Системный вызов - в файле пользовательского модуля (создать самому). Обработчик - в cm_mm.c, cm_mem.c, cm_swap.c, в зависимости от задания. Насколько понял, модуль работы с ФС (cm_s5fs.h/.c) в данной лабе вообще не нужен, зачем он там валяется, загадка.
Работы выполнять в линуксе или cygwin. Я делал в цыгвине. Насколько верно, не знаю, одно могу сказать - это приняли.
http://ifolder.ru/15698119
Пароль: asu06
Спасибо Жене Едигареву за помощь.
Отредактировано garafutdinov (2009-12-28 13:05:05)
Поделиться82009-12-28 18:11:38
Спасибо за сведения!
Вопрос: на консультации Кузнецов говорил о том что нужно сделать 2 лабы для допуска. Зачем 3 делать? Или за 3 дается автоматом экзамен? Что вообще нужно для автомата?
Поделиться92009-12-28 18:36:15
Вопрос: на консультации Кузнецов говорил о том что нужно сделать 2 лабы для допуска. Зачем 3 делать? Или за 3 дается автоматом экзамен? Что вообще нужно для автомата?
3я лаба - автомат. И я советую ее сделать, потому что предмет сложный, лучше от экзамена откосить. *шёпотом* В принципе готовые лабораторные есть еще у Жени, Ильи и Маши. Можете попросить.