[1] O documento discute escalonamento de processos em sistemas operacionais, com foco em mudança de contexto e algoritmos de escalonamento.
[2] A mudança de contexto é cara, envolvendo salvar e carregar informações dos processos, e ocorre a cada interrupção do relógio. O escalonador decide qual processo executar a seguir.
[3] Algoritmos de escalonamento podem ser preemptivos ou não-preemptivos. Sistemas em batch priorizam throughput, enquanto sistemas interativos priorizam
O documento discute algoritmos de escalonamento de processos em sistemas operacionais, incluindo Round Robin, prioridade e múltiplas filas. Round Robin atribui um quantum de tempo para cada processo antes de alternar para o próximo. Prioridade executa processos com prioridade mais alta primeiro. Múltiplas filas agrupam processos por tipo para execução.
O documento discute aspectos fundamentais de segurança no sistema operacional, abordando proteção de informações contra uso não autorizado, tipos de ameaças como exposição e manipulação de dados, e tipos de invasores como invasores passivos e ativos. Ele também apresenta facetas da segurança como criptografia, assinaturas digitais e ataques como de dentro do sistema e exploração de erros de código.
O documento discute escalonamento de tempo real e threads. Aborda algoritmos de escalonamento estático e dinâmico para tempo real, como Rate Monotonic Scheduling e Earliest Deadline First. Também explica a diferença entre processos e threads, vantagens de threads, e como manipular threads em linguagens como C, Java e no sistema operacional.
O documento descreve os tipos e estruturas de sistemas operacionais. Ele discute sistemas operacionais monotarefa e multitarefa, além de classificações como batch, tempo compartilhado e tempo real. Também aborda as estruturas internas de um sistema operacional, incluindo estruturas monolíticas e em camadas.
1) O documento discute chamadas ao sistema e processos. 2) As chamadas ao sistema permitem que aplicativos realizem instruções privilegiadas e alteram o modo de operação do sistema entre o modo usuário e o modo kernel. 3) Exemplos de chamadas ao sistema incluem ler arquivos e escrever na saída padrão.
O documento discute comunicação entre processos e soluções para o problema da exclusão mútua. Apresenta instruções de teste-e-definição de bloqueio e suas desvantagens. Também aborda primitivas de espera/despertar para resolver problemas de espera ociosa e introduz o problema produtor/consumidor como exemplo de sua aplicação.
O documento discute processos e escalonamento. Ele define processos como o conceito central do sistema operacional, caracterizados por um programa em execução que armazena todas as informações necessárias para executar o programa. Processos podem interagir com o usuário ou ter funções específicas em segundo plano.
O documento discute três tópicos principais sobre comunicação entre processos: 1) Monitores, que fornecem exclusão mútua através de rotinas agrupadas em módulos; 2) Variáveis de condição, que permitem que processos bloqueiem e acordem com base em condições; 3) Troca de mensagens, onde processos se comunicam através de primitivas de envio e recebimento de mensagens.
O documento discute algoritmos de escalonamento de processos em sistemas operacionais, incluindo Round Robin, prioridade e múltiplas filas. Round Robin atribui um quantum de tempo para cada processo antes de alternar para o próximo. Prioridade executa processos com prioridade mais alta primeiro. Múltiplas filas agrupam processos por tipo para execução.
O documento discute aspectos fundamentais de segurança no sistema operacional, abordando proteção de informações contra uso não autorizado, tipos de ameaças como exposição e manipulação de dados, e tipos de invasores como invasores passivos e ativos. Ele também apresenta facetas da segurança como criptografia, assinaturas digitais e ataques como de dentro do sistema e exploração de erros de código.
O documento discute escalonamento de tempo real e threads. Aborda algoritmos de escalonamento estático e dinâmico para tempo real, como Rate Monotonic Scheduling e Earliest Deadline First. Também explica a diferença entre processos e threads, vantagens de threads, e como manipular threads em linguagens como C, Java e no sistema operacional.
O documento descreve os tipos e estruturas de sistemas operacionais. Ele discute sistemas operacionais monotarefa e multitarefa, além de classificações como batch, tempo compartilhado e tempo real. Também aborda as estruturas internas de um sistema operacional, incluindo estruturas monolíticas e em camadas.
1) O documento discute chamadas ao sistema e processos. 2) As chamadas ao sistema permitem que aplicativos realizem instruções privilegiadas e alteram o modo de operação do sistema entre o modo usuário e o modo kernel. 3) Exemplos de chamadas ao sistema incluem ler arquivos e escrever na saída padrão.
O documento discute comunicação entre processos e soluções para o problema da exclusão mútua. Apresenta instruções de teste-e-definição de bloqueio e suas desvantagens. Também aborda primitivas de espera/despertar para resolver problemas de espera ociosa e introduz o problema produtor/consumidor como exemplo de sua aplicação.
O documento discute processos e escalonamento. Ele define processos como o conceito central do sistema operacional, caracterizados por um programa em execução que armazena todas as informações necessárias para executar o programa. Processos podem interagir com o usuário ou ter funções específicas em segundo plano.
O documento discute três tópicos principais sobre comunicação entre processos: 1) Monitores, que fornecem exclusão mútua através de rotinas agrupadas em módulos; 2) Variáveis de condição, que permitem que processos bloqueiem e acordem com base em condições; 3) Troca de mensagens, onde processos se comunicam através de primitivas de envio e recebimento de mensagens.
O documento fornece uma introdução sobre conceitos básicos de sistemas operacionais. Ele discute o que constitui um sistema computacional, a importância de um sistema operacional, as funções de um SO, como usuários e programas interagem com o SO, gerenciamento de memória e processamento, boot do sistema e dispositivos de entrada e saída.
1) O documento discute threads no espaço do núcleo, comunicação interprocessos e regiões críticas.
2) Há diferentes modelos de implementação de threads, incluindo no espaço do núcleo e híbridas, e os algoritmos de escalonamento mais usados são Round Robin e por prioridade.
3) A comunicação interprocessos requer mecanismos para evitar condições de corrida, e regiões críticas garantem a exclusão mútua para acesso compartilhado a recursos.
Este documento discute três tópicos principais:
1) Sistemas de arquivos, incluindo estruturas de arquivos, tipos de arquivos e operações com arquivos.
2) Relógios de software e alarmes, incluindo como simular múltiplos relógios virtuais com um relógio físico.
3) Organização de diretórios, cobrindo organizações de nível único e de dois níveis.
O documento discute dispositivos de entrada e saída em sistemas computacionais. Ele aborda três tópicos principais:
1) E/S via interrupção, onde dispositivos geram interrupções para solicitar atenção da CPU quando operações são concluídas.
2) E/S via acesso direto à memória (DMA), onde dispositivos podem acessar diretamente a memória principal sem envolver a CPU, aumentando a velocidade de transferência de dados.
3) Camadas de software de E/S, onde drivers controlam dispositivos
O documento discute estratégias para lidar com sobrecarga de memória, incluindo swapping e memória virtual. Swapping envolve trocar processos inteiros entre memória principal e disco, enquanto memória virtual permite que programas sejam executados parcialmente carregados na memória. O documento também descreve técnicas como mapas de bits e listas ligadas para gerenciar a alocação dinâmica de memória.
O documento discute os i-nodes, estruturas de dados que armazenam atributos e endereços dos blocos de um arquivo em sistemas de arquivos. I-nodes associam-se a cada arquivo e permitem localizar todos os seus blocos, armazenando informações como tamanho, proprietário e localização no disco. O documento também explica como diretórios e arquivos compartilhados são implementados usando i-nodes.
Este documento discute os conceitos e algoritmos de escalonamento de CPU em sistemas operacionais. Aborda os conceitos básicos de multiprogramação e ciclos de CPU-E/S. Descreve vários algoritmos de escalonamento como FCFS, SJF, prioridade e Round Robin. Discute critérios de avaliação como utilização da CPU, vazão e tempos de resposta e espera. Explica estratégias como filas de vários níveis e escalonamento com múltiplos processadores.
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
O documento discute processos em sistemas operacionais. Aborda conceitos como criação, término e hierarquia de processos, além de estados de processos e escalonamento de processos. Explica diferentes algoritmos de escalonamento como FIFO, Round Robin e múltiplas filas. Também discute threads como forma de dividir um processo em tarefas concorrentes.
O documento discute conceitos fundamentais sobre processos em sistemas operacionais, incluindo:
1) A definição de processo e como eles são abstrações de programas em execução;
2) Como processos são criados, executados e terminados em sistemas operacionais;
3) Como processos se comunicam entre si e os desafios relacionados à condição de disputa.
O documento discute técnicas de sincronização entre processos e threads, incluindo regiões críticas, exclusão mútua, semáforos, monitores e o problema dos leitores e escritores. Aborda modelos de processos e threads, escalonamento, condições de corrida e como evitá-las através de mecanismos de sincronização.
Um processo é um container que fornece recursos e isolamento para um programa em execução. Um processo pode estar em vários estados como new, ready, running, waiting ou terminated. Um sistema operacional usa threads para permitir a execução paralela de tarefas dentro de um mesmo processo.
1) O documento discute processos e threads em sistemas operacionais modernos, abordando tópicos como criação e término de processos, estados de processos, comunicação entre processos e uso de threads.
2) É explicado que um processo é uma entidade dinâmica que consiste em um programa em execução e seus recursos, e que threads permitem múltiplas execuções dentro do mesmo processo.
3) Problemas de condição de corrida ocorrem quando processos acessam recursos compartilhados simultaneamente e são evitados por
O documento discute vários algoritmos de escalonamento de processos em sistemas operacionais. Aborda os conceitos de escalonador de CPU, escalonamento preemptivo e não-preemptivo, e características a serem consideradas na seleção de um algoritmo de escalonamento, como utilização da CPU, número de processos completados e tempos de resposta, retorno e espera. Em seguida, explica em detalhes algoritmos como FCFS, SJF, escalonamento por prioridades, Round Robin e escalonamento por múltiplas filas.
O documento descreve hardware de disco e relógios. Ele explica que um disco rígido consiste em pratos giratórios com cabeças de leitura/gravação e que cada superfície é dividida em trilhas e setores. Também discute os processos de formatação de baixo e alto nível para preparar o disco para uso.
O documento discute processos e threads no sistema operacional. Aborda conceitos como processos, threads, comunicação entre processos, estados de processos e implementação de processos e threads no kernel.
O documento discute os conceitos básicos de escalonamento de CPU, incluindo: 1) o papel do escalonador em determinar qual processo pronto será executado na CPU disponível; 2) os tipos de escalonamento preemptivo e não preemptivo; 3) o uso de interrupções por tempo para evitar monopolização da CPU.
Introduzir o problema da seção críticas, cujas soluções podem ser utilizadas para garantir consistência no acesso a dados compartilhados
Apresentar soluções em software e hardware para o problema da seção crítica
Introduzir o conceito de transação atômica e descrever os mecanismos utilizados para garantir atomicidade
O documento discute os conceitos e algoritmos de escalonamento de processos em sistemas operacionais. Aborda os componentes básicos de escalonamento, tipos de escalonadores, critérios de rendimento e algoritmos como FCFS, SJF, por prioridades e Round Robin. Explica como esses algoritmos distribuem o acesso aos recursos entre os processos para otimizar o rendimento do sistema.
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSilvano Oliveira
O documento discute os conceitos de sistemas operacionais, abordando tópicos como gerência de processos, escalonamento de processos, algoritmos como FIFO, Round Robin e prioridades. A bibliografia inclui livros sobre sistemas operacionais e suas implementações e conceitos.
O documento fornece uma introdução sobre conceitos básicos de sistemas operacionais. Ele discute o que constitui um sistema computacional, a importância de um sistema operacional, as funções de um SO, como usuários e programas interagem com o SO, gerenciamento de memória e processamento, boot do sistema e dispositivos de entrada e saída.
1) O documento discute threads no espaço do núcleo, comunicação interprocessos e regiões críticas.
2) Há diferentes modelos de implementação de threads, incluindo no espaço do núcleo e híbridas, e os algoritmos de escalonamento mais usados são Round Robin e por prioridade.
3) A comunicação interprocessos requer mecanismos para evitar condições de corrida, e regiões críticas garantem a exclusão mútua para acesso compartilhado a recursos.
Este documento discute três tópicos principais:
1) Sistemas de arquivos, incluindo estruturas de arquivos, tipos de arquivos e operações com arquivos.
2) Relógios de software e alarmes, incluindo como simular múltiplos relógios virtuais com um relógio físico.
3) Organização de diretórios, cobrindo organizações de nível único e de dois níveis.
O documento discute dispositivos de entrada e saída em sistemas computacionais. Ele aborda três tópicos principais:
1) E/S via interrupção, onde dispositivos geram interrupções para solicitar atenção da CPU quando operações são concluídas.
2) E/S via acesso direto à memória (DMA), onde dispositivos podem acessar diretamente a memória principal sem envolver a CPU, aumentando a velocidade de transferência de dados.
3) Camadas de software de E/S, onde drivers controlam dispositivos
O documento discute estratégias para lidar com sobrecarga de memória, incluindo swapping e memória virtual. Swapping envolve trocar processos inteiros entre memória principal e disco, enquanto memória virtual permite que programas sejam executados parcialmente carregados na memória. O documento também descreve técnicas como mapas de bits e listas ligadas para gerenciar a alocação dinâmica de memória.
O documento discute os i-nodes, estruturas de dados que armazenam atributos e endereços dos blocos de um arquivo em sistemas de arquivos. I-nodes associam-se a cada arquivo e permitem localizar todos os seus blocos, armazenando informações como tamanho, proprietário e localização no disco. O documento também explica como diretórios e arquivos compartilhados são implementados usando i-nodes.
Este documento discute os conceitos e algoritmos de escalonamento de CPU em sistemas operacionais. Aborda os conceitos básicos de multiprogramação e ciclos de CPU-E/S. Descreve vários algoritmos de escalonamento como FCFS, SJF, prioridade e Round Robin. Discute critérios de avaliação como utilização da CPU, vazão e tempos de resposta e espera. Explica estratégias como filas de vários níveis e escalonamento com múltiplos processadores.
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
O documento discute processos em sistemas operacionais. Aborda conceitos como criação, término e hierarquia de processos, além de estados de processos e escalonamento de processos. Explica diferentes algoritmos de escalonamento como FIFO, Round Robin e múltiplas filas. Também discute threads como forma de dividir um processo em tarefas concorrentes.
O documento discute conceitos fundamentais sobre processos em sistemas operacionais, incluindo:
1) A definição de processo e como eles são abstrações de programas em execução;
2) Como processos são criados, executados e terminados em sistemas operacionais;
3) Como processos se comunicam entre si e os desafios relacionados à condição de disputa.
O documento discute técnicas de sincronização entre processos e threads, incluindo regiões críticas, exclusão mútua, semáforos, monitores e o problema dos leitores e escritores. Aborda modelos de processos e threads, escalonamento, condições de corrida e como evitá-las através de mecanismos de sincronização.
Um processo é um container que fornece recursos e isolamento para um programa em execução. Um processo pode estar em vários estados como new, ready, running, waiting ou terminated. Um sistema operacional usa threads para permitir a execução paralela de tarefas dentro de um mesmo processo.
1) O documento discute processos e threads em sistemas operacionais modernos, abordando tópicos como criação e término de processos, estados de processos, comunicação entre processos e uso de threads.
2) É explicado que um processo é uma entidade dinâmica que consiste em um programa em execução e seus recursos, e que threads permitem múltiplas execuções dentro do mesmo processo.
3) Problemas de condição de corrida ocorrem quando processos acessam recursos compartilhados simultaneamente e são evitados por
O documento discute vários algoritmos de escalonamento de processos em sistemas operacionais. Aborda os conceitos de escalonador de CPU, escalonamento preemptivo e não-preemptivo, e características a serem consideradas na seleção de um algoritmo de escalonamento, como utilização da CPU, número de processos completados e tempos de resposta, retorno e espera. Em seguida, explica em detalhes algoritmos como FCFS, SJF, escalonamento por prioridades, Round Robin e escalonamento por múltiplas filas.
O documento descreve hardware de disco e relógios. Ele explica que um disco rígido consiste em pratos giratórios com cabeças de leitura/gravação e que cada superfície é dividida em trilhas e setores. Também discute os processos de formatação de baixo e alto nível para preparar o disco para uso.
O documento discute processos e threads no sistema operacional. Aborda conceitos como processos, threads, comunicação entre processos, estados de processos e implementação de processos e threads no kernel.
O documento discute os conceitos básicos de escalonamento de CPU, incluindo: 1) o papel do escalonador em determinar qual processo pronto será executado na CPU disponível; 2) os tipos de escalonamento preemptivo e não preemptivo; 3) o uso de interrupções por tempo para evitar monopolização da CPU.
Introduzir o problema da seção críticas, cujas soluções podem ser utilizadas para garantir consistência no acesso a dados compartilhados
Apresentar soluções em software e hardware para o problema da seção crítica
Introduzir o conceito de transação atômica e descrever os mecanismos utilizados para garantir atomicidade
O documento discute os conceitos e algoritmos de escalonamento de processos em sistemas operacionais. Aborda os componentes básicos de escalonamento, tipos de escalonadores, critérios de rendimento e algoritmos como FCFS, SJF, por prioridades e Round Robin. Explica como esses algoritmos distribuem o acesso aos recursos entre os processos para otimizar o rendimento do sistema.
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSilvano Oliveira
O documento discute os conceitos de sistemas operacionais, abordando tópicos como gerência de processos, escalonamento de processos, algoritmos como FIFO, Round Robin e prioridades. A bibliografia inclui livros sobre sistemas operacionais e suas implementações e conceitos.
Regiões críticas dos Sistemas OperacionaisAbadia Cardoso
O documento discute os conceitos de regiões críticas, sincronização e comunicação entre processos em sistemas operacionais. Aborda modelos de processos, problemas de concorrência, algoritmos de garantia de exclusão mútua como semáforos e monitores, e técnicas de comunicação interprocessos como passagem de mensagens e compartilhamento de dados.
Process aware interrupt scheduling and accountingGustavo Carvalho
O documento descreve algoritmos para contabilidade e escalonamento de interrupções considerando o processo associado. O algoritmo de contabilidade mede o tempo de execução de bottom-halves para ajustar o tempo de sistema cobrado de cada processo. O algoritmo de escalonamento prioriza interrupções associadas a processos de maior prioridade que o processo ativo. Experimentos mostram que as abordagens melhoram o desempenho de processos concorrentes em relação ao kernel Linux padrão.
O documento discute o conceito de escalonamento no processamento de sistemas computacionais. Escalonamento refere-se à organização da execução de processos pelo processador de acordo com algoritmos do sistema operacional. O escalonamento pode ocorrer em diferentes níveis e deve levar em conta objetivos como justiça, produtividade, tempo de resposta e uso equilibrado de recursos.
O documento discute os conceitos de processo e como os sistemas operacionais executam múltiplas tarefas simultaneamente através da criação e gerenciamento de processos. Processos representam a execução de um programa e podem ser criados, suspensos, destruídos e ter suas prioridades alteradas através de operações do sistema operacional. Processos podem criar subprocessos e passar informações uns aos outros.
O documento discute algoritmos de escalonamento de processos em sistemas operacionais. Ele fornece exemplos do algoritmo Round-Robin, definindo-o e descrevendo seu funcionamento. Além disso, apresenta perguntas e respostas sobre estados de processos e características de algoritmos de escalonamento.
O documento discute algoritmos para sincronização de relógios lógicos e físicos em sistemas distribuídos, incluindo o algoritmo de Lamport para relógios lógicos e algoritmos centralizados e distribuídos para relógios físicos. Também aborda algoritmos para exclusão mútua, detecção e prevenção de deadlocks e controle de concorrência.
O documento discute os conceitos e algoritmos de escalonamento de processos em sistemas operacionais. Aborda tópicos como critérios de escalonamento, algoritmos como FCFS, SJF e Round Robin, escalonamento em multiprocessadores e tempo real.
O documento discute escalonamento de processos em tempo real. Aborda conceitos como processos críticos e não críticos, algoritmos de escalonamento estáticos e dinâmicos e um modelo simples de processo. Também apresenta técnicas como atribuição de prioridade por taxa monotônica, teste de escalonabilidade baseado na utilização da CPU e análise do tempo de resposta.
O documento discute técnicas de escalonamento de processos em sistemas operacionais, comparando algoritmos como FCFS, SJF preemptivo e não preemptivo, Round Robin e por prioridade. O objetivo do escalonamento é maximizar a utilização da CPU e melhorar a performance do sistema considerando métricas como tempo de espera, tempo de resposta e throughput.
Algoritmo de escalonamento Fuzzy Round RobinMarcos Castro
O documento descreve vários algoritmos de escalonamento de CPU, incluindo Round Robin. Propõe o uso da lógica fuzzy para aprimorar o algoritmo Round Robin, usando dois sistemas de inferência fuzzy para determinar o melhor tempo quantum e decidir sobre preempção de processos.
O documento discute os conceitos fundamentais de gerenciamento de processadores e escalonamento de processos em sistemas operacionais. Ele explica as funções básicas do escalonamento, tipos de escalonamento como FIFO, por prioridades e circular, e discute aspectos como preempção e starvation.
O documento discute conceitos de concorrência em sistemas operacionais, incluindo: (1) a diferença entre sistemas monoprogramáveis e multiprogramáveis e as vantagens da multiprogramação; (2) o mecanismo de troca de contexto entre processos; e (3) o mecanismo de interrupções e exceções para lidar com eventos assíncronos no sistema.
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosRobson Ferreira
O documento discute estados de processos, escalonamento de processos e tipos de escalonadores. Estados de processos são atribuídos pelo sistema operacional para organizar quais processos serão executados. O escalonamento de processos seleciona quais processos prontos serão executados pela CPU usando escalonadores de curto, médio e longo prazo.
O documento descreve o KURT Real-Time Linux, uma modificação do kernel Linux que permite escalonamento de eventos em tempo real com latência de 10 microsegundos. Ele adiciona novas políticas de escalonamento às já existentes no Linux e possui dois modos de funcionamento: normal e tempo real.
Categorias de Escalonamento e Objetivos do Algorítmo EscalonadorSofia Trindade
O documento discute categorias de algoritmos de escalonamento e seus objetivos. Explora sistemas em lote, interativos e tempo real, e como os algoritmos de escalonamento variam de acordo com cada ambiente para atingir objetivos como eficiência, tempo de resposta e cumprimento de prazos.
Definir formalmente o conceito de processo
Descrever as várias funcionalidades relacionadas à manipulação de processos pelo sistema operacional, incluindo escalonamento, criação, terminação e comunicação
Apresentar as principais formas de comunicação utilizadas por sistemas cliente-servidor
O documento discute a gerência do processador em sistemas operacionais, incluindo o surgimento de sistemas multiprogramáveis, a política de escalonamento e suas funções básicas. Também descreve o escalonador, dispatcher e critérios comuns de escalonamento como tempo de CPU, espera e resposta.
O documento discute processos e threads em sistemas operacionais, incluindo: (1) o que é um processo e como é representado no sistema, (2) os diferentes tipos e estados de processos, e (3) como o escalonador do sistema operacional agenda qual processo receberá tempo de CPU.
Semelhante a (ACH2044) Sistemas Operacionais - Aula 05 (20)
O documento discute estimativas de erro em modelos de aprendizagem de máquina. Explica que o erro esperado no conjunto de teste tende a ser maior que no conjunto de treino, devido ao ajuste do modelo aos dados de treino. Também aborda medidas como viés e variância para avaliar estimadores, e como o erro quadrático médio equilibra ambos para medir o desvio total esperado entre a estimativa e o valor real.
O documento discute a avaliação de desempenho de classificadores treinados. Explica que é necessário testar o modelo em um conjunto de dados independente para medir seu desempenho em dados novos. Também apresenta métricas como taxa de erro e curva de aprendizagem para avaliar quantitativamente o modelo.
O documento descreve o algoritmo de máquina de vetor de suporte (SVM), explicando como ele busca encontrar o hiperplano separador de margem máxima entre os dados de treinamento de duas classes. O SVM define fronteiras lineares ótimas para dados linearmente separáveis, maximizando a distância entre o hiperplano separador e os exemplos de treinamento mais próximos, chamados de vetores de suporte. O problema é formulado como um problema de otimização para encontrar os parâmetros ω e b que maximizam essa distância de separação.
O documento descreve as redes neurais e o perceptron. Ele explica que as redes neurais se inspiram nos neurônios biológicos e como o perceptron funciona como a unidade básica de uma rede neural, recebendo sinais de entrada e aplicando uma função de ativação. Também discute possíveis funções de ativação como a função degrau e sigmóide e como os pesos das conexões, incluindo o viés, determinam se um perceptron é ativado ou não.
O documento discute árvores de decisão e florestas aleatórias. Ele explica que árvores de decisão são uma das formas mais simples de aprendizado de máquina, representando uma sequência de regras "se...então" para classificar ou prever saídas com base em atributos de entrada. O documento também descreve características como nós internos representando testes de atributos e folhas especificando saídas, e discute expressividade e variações de árvores de decisão.
O documento discute aprendizado supervisionado bayesiano. Ele introduz o aprendizado bayesiano como um método probabilístico e descreve que o aprendizado supervisionado tem como objetivo classificação ou regressão para mapear entradas em saídas com base em exemplos.
O documento descreve a regra de Bayes e redes Bayesianas. Ele fornece um exemplo detalhado sobre como calcular a probabilidade de uma mulher ter câncer de mama dado um resultado positivo em um mamograma usando a regra de Bayes. Ele também define brevemente o que são redes Bayesianas, que representam dependências probabilísticas entre variáveis aleatórias através de um grafo direcionado acíclico.
O documento discute o tratamento de incerteza em inteligência artificial. Aborda como a probabilidade e a teoria da decisão podem ser usadas para tomar decisões racionais quando os resultados são incertos, levando em conta a probabilidade de cada resultado e sua utilidade segundo as preferências de quem decide.
O documento discute representação do conhecimento através de ontologias, incluindo taxonomias e herança. Ontologias organizam o conhecimento em categorias hierárquicas e permitem raciocinar sobre objetos classificados. Categorias podem ser representadas como predicados ou objetos. A herança permite que propriedades sejam herdadas por subcategorias.
O documento descreve o funcionamento do algoritmo de backward chaining em programação lógica, começando com uma explicação geral do processo de raciocínio de trás para frente a partir de um objetivo. Em seguida, apresenta formalmente o algoritmo de backward chaining, explicando cada parte do processo de forma recursiva para encontrar substituições que satisfaçam a query dada uma base de conhecimento. Por fim, exemplifica o algoritmo em uma base de conhecimento sobre venda de armas.
O documento descreve os passos para executar resolução e encadeamento para frente em lógica de primeira ordem. Primeiro, as expressões lógicas devem ser convertidas para forma clausal sem quantificadores. Em seguida, as variáveis devem ser substituídas durante a resolução usando o processo de unificação. Por fim, a resolução é executada para derivar novas conclusões.
O documento descreve as bases de dados em lógica de primeira ordem, como interagir com elas fazendo buscas (queries) por meio de sentenças lógicas em LPO, e como qualquer query que possa ser inferida logicamente pela base de dados será respondida afirmativamente. As bases de dados contêm axiomas com informações básicas e teoremas derivados dos axiomas, e o documento discute técnicas como forward chaining, backward chaining e resolução para realizar inferência nas bases de dados.
O documento descreve uma aula sobre lógica de primeira ordem. Apresenta os elementos básicos da lógica de primeira ordem, incluindo termos, predicados e a gramática formal para construir sentenças. Também explica como modelos e interpretações funcionam na lógica de primeira ordem, diferentemente da lógica proposicional.
O documento discute inferência em lógica proposicional, incluindo tipos de provas como verificação de modelos e aplicação de regras de inferência. Ele explica como aplicar regras de inferência como modus ponens e modus tollens para derivar novas sentenças a partir de premissas, formando uma prova.
O documento descreve um algoritmo de busca retroativa para resolver problemas de satisfação de restrições, utilizando forward checking e heurísticas como valores restantes mínimos, grau e valor menos restritivo. O algoritmo é demonstrado passo a passo em um exemplo de coloração de grafos, definindo variáveis, valores e propagando escolhas.
O documento descreve problemas de satisfação de restrições (CSPs), definidos por um conjunto de variáveis, domínios de valores para cada variável, e restrições sobre combinações de valores de variáveis. Apresenta exemplos de agendamento de aulas e coloração de mapas como CSPs, definindo suas variáveis, domínios e restrições.
O documento discute algoritmos genéticos e representação de cromossomos. Ele explica que os cromossomos podem ser representados de várias formas, incluindo binária, valores inteiros e reais. A representação binária é a mais simples, onde o cromossomo consiste de uma sequência de bits. A mutação e o cruzamento ocorrem durante o algoritmo genético para gerar novas soluções.
O Que é Um Ménage à Trois?
A sociedade contemporânea está passando por grandes mudanças comportamentais no âmbito da sexualidade humana, tendo inversão de valores indescritíveis, que assusta as famílias tradicionais instituídas na Palavra de Deus.
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 11, Central Gospel, Os Mortos Em Cristo, 1Tr24, Pr Henrique, EBD NA TV, Revista ano 11, nº 1, Revista Estudo Bíblico Jovens E Adultos, Central Gospel, 2º Trimestre de 2024, Professor, Tema, Os Grandes Temas Do Fim, Comentarista, Pr. Joá Caitano, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Com. Extra Pr. Luiz Henrique, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptxLuizHenriquedeAlmeid6
Slideshare Lição 11, Betel, Ordenança para exercer a fé, 2Tr24, Pr Henrique, EBD NA TV, 2° TRIMESTRE DE 2024, ADULTOS, EDITORA BETEL, TEMA, ORDENANÇAS BÍBLICAS, Doutrina Fundamentais Imperativas aos Cristãos para uma vida bem-sucedida e de Comunhão com DEUS, estudantes, professores, Ervália, MG, Imperatriz, MA, Cajamar, SP, estudos bíblicos, gospel, DEUS, ESPÍRITO SANTO, JESUS CRISTO, Comentários, Bispo Abner Ferreira, Com. Extra Pr. Luiz Henrique, 99-99152-0454, Canal YouTube, Henriquelhas, @PrHenrique
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
(ACH2044) Sistemas Operacionais - Aula 05
1. Aula 05 – Escalonamento de Processos
Norton Trevisan Roman
24 de agosto de 2017
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 1 / 35
2. Mudan¸ca de Contexto
`A mudan¸ca de um processo a outro d´a-se o nome
de mudan¸ca de Contexto
O escalonador deve se preocupar com a eficiˆencia da CPU,
pois o chaveamento de processos ´e complexo e custoso:
Afeta desempenho do sistema e satisfa¸c˜ao do usu´ario;
De nada adianta ocupar 100% da CPU se 90% ´e gasto com
escalonamento
Linux:
As opera¸c˜oes de troca de contexto para Intel x86 est˜ao
definidas no arquivo arch/ia64/kernel/process.c (fontes)
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 2 / 35
3. Mudan¸ca de Contexto
Tarefa cara:
Deve-se salvar as
informa¸c˜oes do processo
que est´a deixando a CPU
em seu BCP
Salvar o conte´udo dos
registradores
Carregar as informa¸c˜oes
do processo que ser´a
colocado na CPU
Copiar do BCP o conte´udo
dos registradores;
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 3 / 35
4. Mudan¸ca de Contexto
Feita a cada vez que se interrompe a CPU
Ativando o tratador de interrup¸c˜oes (interrupt handler)
As ativa¸c˜oes peri´odicas do tratador de interrup¸c˜ao, pelo
clock, s˜ao chamadas de ticks do rel´ogio
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 4 / 35
5. Mudan¸ca de Contexto
Componentes envolvidos
Despachante (Dispatcher):
Armazena e recupera o contexto
Atualiza as informa¸c˜oes no BCP
Processo relativamente r´apido (0,1ms)
Escalonador (Scheduler):
Escolhe a pr´oxima tarefa a receber o processador
Parte mais demorada
Por isso muitos SOs executam o escalonador apenas quando h´a
necessidade de reordenar a fila de processos prontos. Nesse
caso, o despachante sempre ativa o primeiro processo da fila.
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 5 / 35
6. Mudan¸ca de Contexto
Passos de uma mudan¸ca de contexto
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 6 / 35
7. Escalonamento de Processos
Situa¸c˜oes nas quais escalonamento ´e necess´ario:
Um novo processo ´e criado;
Quando um processo cria outro, qual executar? Pai ou filho?
Um processo chegou ao fim e um processo pronto
deve ser executado
Se nenhum estiver pronto, ´e executado um processo ocioso
gerado pelo sistema (no Unix isso n˜ao ocorre, pois sempre
h´a o init pronto)
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 7 / 35
8. Escalonamento de Processos
Situa¸c˜oes nas quais escalonamento ´e necess´ario:
Quando um processo ´e bloqueado (dependˆencia de
E/S), outro deve ser executado;
O bloqueio ´e feito via trap – chamada ao SO
O processo bloqueado ´e colocado na fila de bloqueados
Quando uma interrup¸c˜ao de E/S ocorre o
escalonador deve decidir por:
Executar o processo que estava esperando esse evento;
Continuar executando o processo que j´a estava sendo
executado; ou
Executar um terceiro processo que esteja pronto para ser
executado.
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 8 / 35
9. Escalonamento de Processos
Preemp¸c˜ao:
Quando um processo pode, por algum motivo, perder
seu uso da CPU.
Tempo de execu¸c˜ao de um processo ´e imprevis´ıvel:
Se o hardware do clock gera interrup¸c˜oes em intervalos entre
50 a 60 hz (ocorrˆencias por segundo), uma decis˜ao de
escalonamento pode ser tomada a cada interrup¸c˜ao ou a
cada k interrup¸c˜oes (veremos mais tarde)
A decis˜ao depende do algoritmo de escalonamento
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 9 / 35
10. Escalonamento de Processos
Algoritmos de escalonamento podem ser divididos
em duas categorias, dependendo de como essas
interrup¸c˜oes s˜ao tratadas:
Preemptivo
N˜ao-Preemptivo
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 10 / 35
11. Escalonamento de Processos
Preemptivo
Suspende o processo sendo executado;
Contempla a preemp¸c˜ao das tarefas
Provoca uma interrup¸c˜ao for¸cada de um processo para que
outro possa usar a CPU
A preemp¸c˜ao pode surgir t˜ao somente porque a
fatia de tempo do primeiro processo acabou
Requer a existˆencia de uma interrup¸c˜ao de rel´ogio ao fim da
fatia de tempo, para que o controle sobre a CPU seja
devolvido ao escalonador
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 11 / 35
12. Escalonamento de Processos
N˜ao-Preemptivo
Permite que o processo sendo executado continue
executando
S´o parando caso termine de executar, solicite uma opera¸c˜ao
de entrada/sa´ıda, ou libere explicitamente o processador
(voltando `a fila de prontos)
N˜ao contempla as preemp¸c˜oes
O escalonador n˜ao interrompe os processos que est˜ao em
execu¸c˜ao
Nenhuma decis˜ao de escalonamento ´e tomada
durante as interrup¸c˜oes do rel´ogio
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 12 / 35
13. Algoritmos de Escalonamento: Categorias
Sistemas em Batch (Lote):
Usu´arios n˜ao esperam por respostas r´apidas
Algoritmos preemptivos ou n˜ao-preemptivos
Pouca alternˆancia entre processos → melhor desempenho
Sistemas Interativos:
Intera¸c˜ao constante do usu´ario
Processo interativo → espera comando e executa comando
Algoritmos preemptivos → evitam que um processo se
aposse da CPU
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 13 / 35
14. Algoritmos de Escalonamento: Categorias
Sistemas em Tempo Real:
Processos s˜ao executados mais rapidamente
Tempo ´e crucial → sistemas cr´ıticos
Comunica¸c˜ao Interprocesso
Com graus diferentes, comunica¸c˜ao e sincronismo
entre processos ´e importante
Especialmente em sistemas interativos
Obtidos por meio de Pipes, sem´aforos, monitores etc
(veremos mais adiante)
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 14 / 35
15. Algoritmos de Escalonamento: Objetivos
Objetivos comuns a todos os sistemas:
Justi¸ca (Fairness): cada processo deve receber uma
parcela justa de tempo da CPU
Processos da mesma categoria devem receber a mesma fatia
de tempo
Balanceamento: diminuir a ociosidade do sistema
Manter todas as partes do sistema ocupadas
Cumprimento das pol´ıticas do sistema – prioridade
de processos
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 15 / 35
16. Algoritmos de Escalonamento: Objetivos
Sistemas em Batch (Lote):
Vaz˜ao (throughput): maximizar o n´umero de jobs
executados por unidade de tempo (e.g. hora)
Tempo de espera: minimizar o tempo gasto na fila
de prontos
Eficiˆencia: CPU deve estar 100% do tempo ocupada
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 16 / 35
17. Algoritmos de Escalonamento: Objetivos
Sistemas em Batch (Lote):
Mean Turnaround time (tempo m´edio de retorno):
minimizar o tempo m´edio entre a entrada e o
t´ermino
Tempo entre a cria¸c˜ao do processo e seu encerramento,
incluindo processamento e espera
Indica quanto tempo, em m´edia, o usu´ario espera pelo fim
de um trabalho
Pode ocorrer que tenha grande vaz˜ao, e pequeno tempo de
retorno – quando o algoritmo de escalonamento prioriza jobs
pequenos, os grandes podem nunca ser executados
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 17 / 35
18. Algoritmos de Escalonamento: Objetivos
Sistemas Interativos:
Tempo de resposta: minimizar o tempo entre a
emiss˜ao de um comando e a obten¸c˜ao do resultado
Requisi¸c˜oes do usu´ario devem ter precedˆencia sobre trabalho
em segundo plano
Proporcionalidade: satisfazer as expectativas do
usu´ario
Satisfazer a intui¸c˜ao que o usu´ario tem sobre quanto tempo
as coisas devem durar
Nem sempre ´e poss´ıvel
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 18 / 35
19. Algoritmos de Escalonamento: Objetivos
Sistemas em Tempo Real:
Cumprimento dos prazos, evitando assim perda de
dados
Previsibilidade: Prevenir perda da qualidade dos
servi¸cos oferecidos
Importante em alguns sistemas
Ex: evitar a degrada¸c˜ao da qualidade em sistemas
multim´ıdia (por algum atraso no cumprimento de prazo de
algum processo)
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 19 / 35
20. Escalonamento em Batch: Algoritmos
First-Come First-Served (ou FIFO)
Shortest Job First (SJF)
Shortest Remaining Time Next (SRTN)
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 20 / 35
21. Escalonamento em Batch: Algoritmos
First-Come First-Served
Processos s˜ao executados na CPU seguindo a ordem
de requisi¸c˜ao
H´a fila ´unica de processos prontos
Cada processo roda o tempo que quiser
Novos processos entram no final da fila
Se um processo que est´a rodando ´e bloqueado (E/S), o
primeiro na fila ´e o pr´oximo a executar
Quando um processo bloqueado fica pronto, ´e recolocado no
final da fila
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 21 / 35
22. Escalonamento em Batch: Algoritmos
First-Come First-Served
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 22 / 35
23. Escalonamento em Batch: Algoritmos
First-Come First-Served: Exemplo
Fila de processos prontos (chegada ao sistema e dura¸c˜ao prevista)
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 23 / 35
24. Escalonamento em Batch: Algoritmos
First-Come First-Served: Exemplo
Tempo m´edio de execu¸c˜ao (turnaround m´edio):
T =
t1 + t2 + t3 + t4
4
=
(5 − 0) + (7 − 0) + (11 − 1) + (14 − 3)
4
=
33
4
= 8, 25s
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 24 / 35
25. Escalonamento em Batch: Algoritmos
First-Come First-Served
N˜ao-preemptivo
N˜ao se interrompe processos (no m´aximo bloqueiam em
E/S)
Vantagem: F´acil de entender e programar
Desvantagem:
N˜ao leva em conta a importˆancia das tarefas nem seu
comportamento em rela¸c˜ao aos recursos
Ineficiente quando se tem processos que demoram na sua
execu¸c˜ao
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 25 / 35
26. Escalonamento em Batch: Algoritmos
First-Come First-Served
Desvantagem: Ex
Fila com um processo que demora 1s por vez, e faz E/S, e
outro r´apido que executa 1000 E/S
O primeiro executa 1s e bloqueia (E/S). O outro executa
rapidamente e bloqueia (mantendo a fila)
O primeiro desbloqueia, e roda mais 1s, seguido pelo
segundo
O outro est´a de fato fazendo 1 E/S por segundo → termina
em 1000s. Se houvesse preemp¸c˜ao do inicial, a cada 10ms,
ele levaria 10ms × 1000 = 10s somente.
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 26 / 35
27. Escalonamento em Batch: Algoritmos
Shortest Job First
N˜ao-preemptivo
Sup˜oe que se sabe de antem˜ao o tempo de
execu¸c˜ao de todos os processos
Menor processo da fila de processos prontos ´e
executado primeiro
Se algum bloquear por E/S, voltar´a `a fila ordenado
Execu¸c˜ao na ordem normal Execu¸c˜ao na ordem shortest job first
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 27 / 35
28. Escalonamento em Batch: Algoritmos
Shortest Job First
Menor turnaround (m´edio):
O menor tempo m´edio esperado para um job terminar
Ex:
A → (tempo) a
B → b + a
C → c + b + a
D → d + c + b + a
Tempo m´edio-turnaround (4a+3b+2c+d)/4
Se a<b<c<d tem-se o m´ınimo tempo m´edio → fazemos
quem contribui mais para a m´edia ser o menor
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 28 / 35
29. Escalonamento em Batch: Algoritmos
Shortest Job First
Menor turnaround (m´edio) – Ex:
Em ordem: Menor job primeiro:
Turnaround A = 8 Turnaround B = 4
Turnaround B = 12 Turnaround C = 8
Turnaround C = 16 Turnaround D = 12
Turnaround D = 20 Turnaround A = 20
M´edia → 56/4 = 14 M´edia → 44/4 = 11
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 29 / 35
30. Escalonamento em Batch: Algoritmos
Shortest Job First
Desvantagem:
Todos os processos precisam ser conhecidos de antem˜ao
Se processos curtos come¸carem a chegar, os longos podem
demorar a serem executados (ap´os seu bloqueio volunt´ario)
→ inani¸c˜ao (starvation)
Processos precisam estar dispon´ıveis simultaneamente →
pode ocasionar problemas
Ex: 5 processos: A → E
Com tempo de execu¸c˜ao {2,4,1,1,1}
Tempos de chegada {0,0,3,3,3}
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 30 / 35
31. Escalonamento em Batch: Algoritmos
Shortest Job First
Desvantagem:
Como somente A e B est˜ao dispon´ıveis no in´ıcio, a ordem
fica {A,B}+{C,D,E}
A → (tempo) 2 = 2
B → 4 + 2 = 6
C → 1 + (4 + 2 - 3) = 4
D → 1 + 1 + (4 + 2 - 3) = 5
E → 1 + 1 + 1 + (4 + 2 - 3) = 6
(2+6+4+5+6)/5 = 4,6
Se todos estivessem dispon´ıveis simultaneamente, a ordem
seria {C,D,E,A,B} → (1×5 + 1×4 + 1×3 + 2×2 + 4)/5
= 4
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 31 / 35
32. Escalonamento em Batch: Algoritmos
Utilidades Inusitadas: Filas de bancos
Por vezes, al´em da distin¸c˜ao priorit´ario/n˜ao priorit´ario,
encontramos outra:
At´e 3 contas e mais de 3 contas
A ideia ´e passar mais rapidamente os clientes que tˆem pouco
tempo de uso de caixa
O cliente com muitas contas j´a espera uma demora
Objetivo:
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 32 / 35
33. Escalonamento em Batch: Algoritmos
Utilidades Inusitadas: Filas de bancos
Por vezes, al´em da distin¸c˜ao priorit´ario/n˜ao priorit´ario,
encontramos outra:
At´e 3 contas e mais de 3 contas
A ideia ´e passar mais rapidamente os clientes que tˆem pouco
tempo de uso de caixa
O cliente com muitas contas j´a espera uma demora
Objetivo: Minimizar o turnaround m´edio
Algoritmo:
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 32 / 35
34. Escalonamento em Batch: Algoritmos
Utilidades Inusitadas: Filas de bancos
Por vezes, al´em da distin¸c˜ao priorit´ario/n˜ao priorit´ario,
encontramos outra:
At´e 3 contas e mais de 3 contas
A ideia ´e passar mais rapidamente os clientes que tˆem pouco
tempo de uso de caixa
O cliente com muitas contas j´a espera uma demora
Objetivo: Minimizar o turnaround m´edio
Algoritmo: Shortest Job First
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 32 / 35
35. Escalonamento em Batch: Algoritmos
Utilidades Inusitadas: Filas de bancos
Por vezes, al´em da distin¸c˜ao priorit´ario/n˜ao priorit´ario,
encontramos outra:
At´e 3 contas e mais de 3 contas
A ideia ´e passar mais rapidamente os clientes que tˆem pouco
tempo de uso de caixa
O cliente com muitas contas j´a espera uma demora
Objetivo: Minimizar o turnaround m´edio
Algoritmo: Shortest Job First
Deve-se, de tempos em tempos, liberar os maiores, para evitar
inani¸c˜ao
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 32 / 35
36. Escalonamento em Batch: Algoritmos
Shortest Remaining Time Next
Vers˜ao preemptiva do Shortest Job First
Processos com menor tempo restante s˜ao
executados primeiro
Precisamos saber previamente seus tempos
Se um processo novo chega e seu tempo de execu¸c˜ao (total)
´e menor do que o tempo que ainda falta ao processo
corrente na CPU, a CPU suspende o processo corrente e
executa o processo que acabou de chegar
Sen˜ao insere-o no local apropriado na fila de prontos
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 33 / 35
37. Escalonamento em Batch: Algoritmos
Shortest Remaining Time Next: Exemplo
Tempo m´edio de execu¸c˜ao (turnaround m´edio):
T =
t1 + t2 + t3 + t4
4
=
(14 − 0) + (2 − 0) + (6 − 1) + (9 − 3)
4
=
27
4
= 6, 75s
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 34 / 35
38. Escalonamento em Batch: Algoritmos
Shortest Remaining Time Next
Desvantagem:
Processos que consomem mais tempo podem demorar muito
para serem finalizados se muitos processos pequenos
chegarem! → inani¸c˜ao (starvation)
Desvantagem tamb´em apresentada pelo Shortest
Job First
Exceto que, pela preemp¸c˜ao no Shortest Remaining Time
Next, o processo, mesmo rodando, ser´a interrompido
No Shortest Job First se deu a sorte de come¸car a rodar, vai
at´e o fim
Norton Trevisan Roman Aula 05 – Escalonamento de Processos 24 de agosto de 2017 35 / 35