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

11.403 Comentários

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

  2. Llevo casi medio ano con 888starz y para que mentir entre con la mosca detras de la oreja, porque aqui en Espana uno se cansa de sitios que se caen cada dos por tres. El registro no me llevo ni dos minutos, los datos basicos y fuera, y el deposito minimo esta en 1-2 euros, que para probar viene de lujo.

    De slots hay una barbaridad — andan por unos 10.000 titulos entre Pragmatic Play, NetEnt, Play’n GO, Betsoft y Yggdrasil. Yo tiro mucho de Gates of Olympus y Sweet Bonanza, aunque de vez en cuando pruebo alguna de Microgaming. Lo que me raya es que encontrar un juego concreto es un lio cuando hay tantisimo.

    La parte de crupier real es de Evolution, basicamente y se nota la diferencia: ruletas con crupieres de verdad, los game shows tipo Crazy Time para el que le guste el show. El paquete de bienvenida va sobre el 100% con 150 tiradas, con un rollover de x40, nada raro comparado con otros. Tambien hay algun free spin sin deposito, yo miraria lo que hay vigente en 888starz telegram antes de meter dinero.

    El tema de sacar pasta me ha ido mejor de lo que pensaba. Retire hace poco por Skrill y entro casi al momento. Por Visa o Mastercard se va a dos o tres dias, eso ya es cosa del banco. Tienen Neteller, cripto si no te asusta el tema.

    En el telefono va suave, la app de Android existe si bien la version web hace el mismo apano. El chat de ayuda responde en espanol, tardaron unos 10 minutos la vez que tuve un lio con la verificacion. Licencia de Curazao, asi que no es un.es regulado y eso cada uno que lo valore. Por ahora no me ha fallado, y sin volverse loco con los bonos.

Deixe um comentário

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