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

10.944 Comentários

  1. JamesTeavy JamesTeavy

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

  2. DerekViami DerekViami

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

  3. Давно искал инфу и наконец-то наткнулся на реальный опыт. Авторы реально шарят в вопросе, никаких банальных советов из интернета. Рекомендую заглянуть, чтобы не совершать глупых ошибок, как я в прошлый раз. Вот мелбет скачать на андроид мелбет скачать на андроид — переходите, там вся суть. Если останутся вопросы, пишите прямо там в комментариях, админ отвечает быстро.

  4. Willieemime Willieemime

    В этой статье мы обсудим процесс восстановления после зависимостей, акцентируя внимание на различных методах и подходах к реабилитации. Читатели узнают, как создать план выздоровления и использовать полезные ресурсы для достижения устойчивых изменений.
    Связаться за уточнением – клиника плюс

  5. Nelsonvethy Nelsonvethy

    Эта публикация обращает внимание на важность профилактики зависимостей. Мы обсудим, как осведомленность и образование могут помочь в предотвращении возникновения зависимости. Читатели смогут ознакомиться с полезными советами и ресурсами, которые способствуют здоровому образу жизни.
    Это ещё не всё… – оказание наркологической помощи на дому

  6. Давно хотел найти толковое место, где реально не грузят лишней теорией. Особенно когда речь про частную школу онлайн — тут ведь без фанатизма и воды. У меня сын как раз перешел на удаленку, так что намучились мы знатно. В общем, посмотрите по ссылке: lbs что это https://shkola-onlajn-55.ru Я кстати ещё пару месяцев назад вообще думал, что это всё несерьёзно. Оказалось — реально работает. У них и программа грамотная. Сам теперь советую знакомым. Удачи!

  7. IsraelSat IsraelSat

    В этой статье обсуждаются актуальные медицинские вопросы, которые волнуют общество. Мы обращаем внимание на проблемы, касающиеся здравоохранения и лечения, а также на новшества в области медицины. Читатели будут осведомлены о последних событиях и смогут следить за тенденциями в медицине.
    Неизвестные факты о… – вывод из запоя стационар самара

  8. RandyHaums RandyHaums

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

  9. Robertfat Robertfat

    Эта публикация содержит ценные советы и рекомендации по избавлению от зависимости. Мы обсуждаем различные стратегии, которые могут помочь в процессе выздоровления и важность обращения за помощью. Читатели смогут использовать полученные знания для улучшения своего состояния.
    Более того — здесь – частный наркологический центр

  10. Manuelsnulp Manuelsnulp

    Этот обзор посвящен успешным стратегиям избавления от зависимости, включая реальные примеры и советы. Мы разоблачим мифы и предоставим читателям достоверную информацию о различных подходах. Получите опыт многообразия методов и найдите подходящий способ для себя!
    Смотрите также… – нарколог вывод из запоя

  11. Deneyip de begenen cok oldu. Baz? siteler cal?sm?yor. En sonunda dogru adrese ulast?m.

    Spor bahisleriyle ilgilenenler bilir. Su an en sorunsuz cal?san 1xbet yeni giris adresi tam olarak soyle: 1xbet güncel 1xbet güncel. Herkesin bildigi gibi — 1xbet guncel adres arayanlar buraya baks?n.

    Sorunsuz baglant? icin bu link yeterli. Kim ne derse desin — cekim konusunda s?k?nt? yasamad?m. Gonul rahatl?g?yla girebilirsiniz…

Deixe um comentário

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