Ir ao conteúdo

Exercicio 2 – Sistemas Operacionais II – INE5424 – UFSC

Trabalho 2 – EPOS
Implementação de Idle-waiting

    A implementação do exercicio 2, consiste em alteração da classe Syncronizer, onde na versão inicial a mesma utiliza yield gerando uma carga desnecessária para o processador. A alteração deve ser semelhante a realizada no exercicio um, fazendo com que não seja gasto recursos sem necessidade.
    Durante as discussões sobre a implementação imaginamos uma nova váriavel dentro de cada Thread para monitorar se a mesma está em uma estrutura como Semaphoro, Mutex ou váriavel condicional. Assim sendo possivel a verificação se está ou não, permitindo que nós façamos as devidas verificações para que o método resume e suspend não possam ser chamados quando a mesma estivesse esperando. Após algum tempo discutindo e analise dos códigos foi imaginada uma abordagem que em vez de criar uma váriavel nova para cada Thread seria necessário simplesmente a criação de um novo estado, denominado por nós de WAITING. Junto a isso foi criada uma fila para cada “Synchronizer”, que possui os processos que estão esperando para serem acordados. Os métodos que acordam os outros processos (wakeup e wakeup_all) foram implementados de forma não bloqueante, ou seja, as threads acordadas são apenas colocadas na fila “_ready”, sem troca imediata de contexto.
    Outras alterações também foram realizadas nos arquivos synchronizer.h, thread.cc, condition.h e semaphore.h, para que os mesmos funcionem corretamente com o novo estado WAITING. Por exemplo, no arquivo Thread.cc as implementações de Join, Resume e exit foram alteradas para a utilização deste novo estado, neste arquivo também foram criados novos métodos denominados sleep e wakeup. Que basicamente tratam a parte de colocar para dormir e botar neste novo estado e também na fila do “Synchronizer”. As devidas alterações foram realizadas nos demais arquivos, para que os mesmos funcionem com o novo estado WAITING.
    Também implementamos o busy waiting no “Synchronizer”, para o usuário poder escolher entre busy e idle waiting alterando uma variável booleana.

Arquivos Modificados:
synchronizer
condition.h
semaphore
thread

16.411 Comentários

  1. Williamreort Williamreort

    Вывод из запоя решает задачу острой стабилизации, но лечение алкоголизма на этом не заканчивается. Если запои повторяются, необходимо работать с тягой, психическими и социальными причинами проблемы. Комплексная программа может включать лечение зависимости, кодирование, психотерапию, наблюдение нарколога и реабилитацию. Такой подход дает больше возможностей сохранить трезвость и постепенно восстановиться.
    Подробнее – скорая вывод из запоя

  2. Домашнее лечение подходит пациентам, чье состояние позволяет безопасно проводить процедуры вне стационара. Нарколог оценивает клинический статус, последствия употребления алкоголя или наркотиков и необходимость госпитализации. Если запой продолжается несколько дней, самочувствие ухудшается или появляются симптомы абстинентного синдрома, лучше не откладывать обращение за медицинской помощью.
    Получить больше информации – врач нарколог на дом в Луганске

  3. best online poker usa real money, slot machines united states for sale what is lay and
    buy in craps (Bonita) can us citizens play online poker in united
    states, or top 5 online pokies united states

  4. JulianRaw JulianRaw

    В этой статье рассматриваются актуальные вопросы, связанные с развитием медицинской науки и её внедрением в повседневную практику. Особое внимание уделено вопросам профилактики, ранней диагностики и использованию технологий для улучшения здоровья человека.
    Посмотреть всё – булимия это простыми

  5. AndreRoame AndreRoame

    После оформления обращения специалист берет с собой необходимое оборудование и набор лекарственных средств. В машине выездной бригады могут находиться тонометр, расходные материалы, инфузионные растворы и медикаменты, разрешенные для оказания помощи в домашних условиях. Никаких препаратов без осмотра и показаний применять не следует.
    Узнать больше – нарколог на дом анонимно

  6. Современные методы лечения подбираются по медицинским показаниям. В клинике могут рассматриваться медикаментозное кодирование, методы с применением психотерапии и комбинированные программы. У каждого способа есть особенности, показания и противопоказания. Некоторые методы воздействуют на фармакологической основе, другие направлены на формирование психологической установки и изменение отношения к спиртному. Самый подходящий вариант определяет нарколог, а при наличии эмоциональных и поведенческих нарушений к работе может подключаться психиатр, психолог или психотерапевт.
    Ознакомиться с деталями – http://kodirovanie-ot-alkogolizma-moskva15.ru/

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *