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

7.626 Comentários

  1. ThanhSueva ThanhSueva

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

  2. LanceLep LanceLep

    Текст посвящён распространённым мифам о зависимости и их развенчанию. Мы предоставим научно обоснованную информацию и дадим рекомендации по выбору эффективного способа борьбы с зависимым поведением.
    Узнать больше – «Похмельная служба» в Москве

  3. MichaelFut MichaelFut

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

  4. При острых интоксикациях, абстинентных синдромах или тяжелых состояниях, вызванных злоупотреблением алкоголем или наркотическими веществами, каждая минута играет роль. Нарколог на дом в клинике «БалтикМед» приезжает с необходимым оборудованием и медикаментами для стабилизации состояния, проведения инфузионной терапии и профилактики осложнений. Это позволяет избежать транспортировки пациента в критическом состоянии и сократить время начала лечения.
    Исследовать вопрос подробнее – вызвать врача нарколога на дом

  5. GeorgeCoilt GeorgeCoilt

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

  6. ArchieCah ArchieCah

    Текст посвящён распространённым мифам о зависимости и их развенчанию. Мы предоставим научно обоснованную информацию и дадим рекомендации по выбору эффективного способа борьбы с зависимым поведением.
    Интересует подробная информация – стоп алко москва

  7. MarioSanda MarioSanda

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

  8. Eugenedaync Eugenedaync

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

  9. WalterDek WalterDek

    В этой статье мы обсудим процесс восстановления после зависимостей, акцентируя внимание на различных методах и подходах к реабилитации. Читатели узнают, как создать план выздоровления и использовать полезные ресурсы для достижения устойчивых изменений.
    Хочешь знать всё? – [url=https://kardioportal.ru/vyvod-iz-zapoya-osobennosti-alkogolnoy-zavisimosti-i-effektivnye-metody]стоп алко казань[/url]

  10. LarryNob LarryNob

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

  11. GeorgeCoilt GeorgeCoilt

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

  12. I truly appreciate this post. Your article has proven useful to me. Hit me up! Nice write up. I used online service I have been looking everywhere for this! Your points are really well formed and laid out. You are obviously very knowledgeable. Thanks for writing this. Great read. I truly appreciate this post. I truly appreciate this post. This information is magnificent. Interesting content. I enjoyed reading what you had to say. I truly appreciate this post. Hit me up!

Deixe um comentário

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