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

17.509 Comentários

  1. Коллега курсы медсестры заканчивала. А на деле куча нюансов. Высшее медицинское образование — и бесконечное обучение. Аккредитация врачей — процедура, через которую проходят все. Баллы НМО — а не разовая формальность. Советую глянуть источник: отработка ординатуры отработка ординатуры Там и про ординатуру сколько лет учиться для всех, кто связан с медициной. Разбираться лучше заранее.

  2. online texas holdem real money australia, best rated online
    pokies new zealand and united kingdom slots machines, or free cash bonus
    no deposit casino canada

    Here is my web blog … american roulette wheel odds; Phoebe,

  3. JordanSix JordanSix

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

  4. AnthonyGem AnthonyGem

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

  5. Полный объем помощи зависит от клинической картины. Иногда достаточно разового визита, а после продолжительного запоя может понадобиться повторный осмотр, несколько капельниц или лечение в клинике. Нарколог не должен использовать одинаковый набор медикаментов для каждого больного: состав и дозы определяются медицинскими показаниями.
    Узнать больше – vyvod-iz-zapoya

  6. Двоюродный брат в Минздраве служит. И разговор зашёл про работу. Цифровое здравоохранение — а сейчас без прохождения аккредитации. Электронный рецепт на лекарства — это уже привычная реальность. Советую глянуть источник: центр телемедицины центр телемедицины И про Искусственный интеллект в медицине для врачей. Не отмахивайтесь от этого.

  7. Pedromes Pedromes

    Чтобы заказать помощь на дому в Красноярске, передают данные для оформления услуги. Заказать услугу можно для дома, а подробнее порядок уточняется у центра. Наркологическая услуга на дому предполагает работу врача по адресу обращения. Врач уточняет данные, нарколог выбирает лечение, затем проводится вывод запоя.
    Ознакомиться с деталями – https://vyvod-iz-zapoya-krasnoyarsk70.ru/

Deixe um comentário

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