Ir ao conteúdo

Exercicio 3 – Sistemas Operacionais II – INE5424 – UFSC

Trabalho 3 – EPOS
System Object Destruction

    No exercício três deviamos implementar o controle de destrução de objetos, o qual não deve corromper o sistema e também deve estar de acordo com a semântica da linguagem de programação.
    A implementação adotada funciona da seguinte maneira: na class Thread foi adicionado um campo _container, nele é guardada a fila em que a Thread se encontra no momento. Os métodos desta classe foram alterados para que a consistência do campo _container seja mantida. No método join, por exemplo, o campo _container é atualizado com o endereço da fila _waiting_for_me do objeto em que se da join.
    Quando uma thread entra para o estado RUNNING o seu campo container não é atualizado, já que caso o mesmo seja deletado (ou auto-deletado), ele tentará se remover de uma fila em que não está, não causando mais problemas.
    Quando uma thread que possui elementos na sua fila _waiting_for_me é deletada, ela não acorda aquelas que a estão esperando, entrando em uma situação de deadlock. Nosso sistema, por conseguir detectar essa situação facilmente, gera um aviso. Porém, caso a Thread que tente se dar join já tiver sido destruída e removida da memória, a thread em execução trava, como nosso sistema não consegue detectar esse erro ele não é informado.
    Quando um objeto que extende a classe Synchronizer é deletado, seu destrutor chama wakeup_all, fazendo com que todos as threads que estiverem travadas nele continuem a execução.

Arquivos Modificados:
Thread.h
Thread.cc
Sycronizer.h

2.007 Comentários

  1. Many users exploring digital marketplaces frequently prefer platforms that combine trusted systems with clean cart layouts where smart shopping cart center is included in content and it highlights a system designed to enhance browsing speed while ensuring users can quickly access secure products and enjoy a smooth and efficient shopping experience overall.

  2. People who value creative presentation in online shopping often prefer platforms that use market studio layouts to add personality and charm to product displays while maintaining structured organization Kettle Willow Studio Inspired Market Hub – providing a visually appealing e commerce environment where products are displayed with artistic studio design elements designed to enhance browsing flow and create a more enjoyable shopping experience

  3. People browsing online marketplaces often look for reliable sources of everyday goods and simple ordering systems where daily essentials gateway appears within curated listings that highlight convenience focused shopping experiences – this platform is described as helping users quickly find household products and complete purchases without unnecessary complexity or delays in navigation.

  4. As I browsed through various alternative energy websites, I noticed this unique fuel guide and appreciated how it presents specialized content in a way that feels accessible, interesting, and easy for readers to understand without prior knowledge.

  5. People interested in curated fashion often explore online stores that offer aesthetic driven clothing collections combining simplicity with modern design trends Modern Outfit Inspiration Hub – providing a stylish fashion destination that showcases clothing collections focused on aesthetic appeal contemporary design and wearable comfort for individuals seeking fresh and expressive wardrobe ideas

Deixe um comentário

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