01 - SO I - Fundamentos de Sistemas Operativos

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Num sistema operativo, qual é a implicação direta da abstração de recursos físicos?

  • As aplicações interagem diretamente com os recursos físicos, ignorando a camada de abstração, para otimizar o desempenho.
  • Os recursos físicos são transformados em entidades lógicas, facilitando a alocação e o controle por parte do sistema operativo. (correct)
  • Aumenta a dependência do sistema operativo em relação ao hardware subjacente, dificultando a portabilidade.
  • A complexidade na gestão de interrupções de hardware aumenta, exigindo rotinas de tratamento mais sofisticadas.

Num sistema operativo de tempo real, qual é a consequência imediata da falha em cumprir um prazo predefinido para a execução de uma tarefa?

  • Um sinal é enviado ao utilizador, alertando sobre o atraso, mas a execução da tarefa continua sem interrupção.
  • O sistema operativo ajusta dinamicamente os prazos das tarefas subsequentes para evitar sobrecarga.
  • O sistema operativo executa uma rotina de manipulação de exceções, que pode resultar na degradação da funcionalidade ou falha do sistema. (correct)
  • A tarefa é automaticamente movida para um estado de baixa prioridade, minimizando o impacto no desempenho geral.

Em um sistema operativo com arquitetura monolítica, a inclusão de um novo driver de dispositivo obriga a recompilação de todo o núcleo do sistema, o que pode introduzir instabilidade temporária.

True (A)

Qual das seguintes afirmações descreve o principal benefício da virtualização de hardware em sistemas operativos modernos?

<p>Permitir a execução de múltiplos sistemas operativos em um único hardware físico, otimizando a utilização de recursos. (C)</p> Signup and view all the answers

Como a arquitetura de microkernel lida com a implementação de novos serviços do sistema, e qual é o impacto no núcleo do sistema operacional?

<p>Em um microkernel, os novos serviços são adicionados como processos de espaço de usuário, minimizando a necessidade de modificar o núcleo e aumentando a estabilidade.</p> Signup and view all the answers

O processo de converter recursos físicos em representações lógicas é conhecido como ______________, fornecendo uma camada de isolamento entre aplicações e hardware.

<p>abstração</p> Signup and view all the answers

Combine os seguintes algoritmos de escalonamento de processos com suas principais características:

<p>FIFO (First In, First Out) = Processos são executados na ordem de chegada, sem priorização. Round Robin = Cada processo recebe um quantum de tempo fixo, retornando à fila ao final do quantum. Prioridade = Processos são executados com base em um nível de prioridade atribuído.</p> Signup and view all the answers

Em um sistema de arquivos hierárquico, qual é o impacto de se atribuir permissões restritivas a um diretório pai?

<p>Impede o acesso aos arquivos e subdiretórios filhos, mesmo que estes possuam permissões mais permissivas. (D)</p> Signup and view all the answers

O uso de spooling em um sistema de impressão implica que os dados são enviados diretamente para a impressora sem nenhuma forma de armazenamento intermediário.

<p>False (B)</p> Signup and view all the answers

Qual das seguintes opções descreve com precisão a função do kernel em um sistema operacional?

<p>Fornecer uma camada de abstração para o hardware e gerenciar os recursos do sistema. (B)</p> Signup and view all the answers

Como as chamadas de sistema (System Calls) facilitam a transição entre o modo utilizador e o modo kernel em um sistema operativo?

<p>Chamadas de sistema fornecem uma interface segura para que programas de espaço de usuário solicitem serviços privilegiados do kernel, gerenciando a transição e garantindo a segurança.</p> Signup and view all the answers

Em sistemas operativos, o ______________ é uma técnica que envolve a troca temporária de páginas ou segmentos de memória entre a RAM e o disco rígido para simular mais memória do que fisicamente disponível.

<p>swap</p> Signup and view all the answers

Combine os seguintes estados de um processo com suas respectivas descrições:

<p>Novo = O processo está sendo criado. Pronto = O processo está pronto para ser executado pela CPU. Em Execução = O processo está sendo executado pela CPU. Bloqueado = O processo está aguardando um evento. Terminado = O processo concluiu sua execução.</p> Signup and view all the answers

Qual é o principal objetivo da gestão de memória virtual em sistemas operativos?

<p>Permitir que os processos utilizem mais memória do que a fisicamente disponível, através de técnicas como swapping e paginação. (B)</p> Signup and view all the answers

Em sistemas operativos modernos, a principal razão para implementar drivers de dispositivos no espaço do utilizador é aumentar o desempenho do sistema, evitando as sobrecargas associadas às transições para o espaço do kernel.

<p>False (B)</p> Signup and view all the answers

Em um sistema operativo com arquitetura cliente-servidor (microkernel), qual é a forma predominante de comunicação entre os componentes do sistema?

<p>Troca de mensagens, garantindo isolamento e modularidade. (D)</p> Signup and view all the answers

Em que tipo de cenários a utilização de sistemas operativos de tempo real (Real Time Operating Systems - RTOS) é mandatório?

<p>Sistemas de tempo real são essenciais em aplicações críticas onde a resposta a eventos deve ocorrer dentro de prazos estritos e previsíveis, como em sistemas de controle industrial, aeroespacial e dispositivos médicos.</p> Signup and view all the answers

A técnica de ______________, utilizada na gestão de E/S, permite que dados de entrada/saída sejam colocados em uma fila para serem processados posteriormente, minimizando o tempo de espera dos processos.

<p>spooling</p> Signup and view all the answers

Combine cada conceito com a sua respetiva descrição.

<p>Autenticação = Processo de verificação da identidade do utilizador. Autorização = Processo de concessão de acesso aos recursos do sistema com base nas permissões e privilégios atribuídos ao utilizador autenticado. Sessão de Utilizador = Período durante o qual um utilizador está autenticado e ativo no sistema. Início de Sessão (Login) = Processo de autenticação que inicia uma sessão de utilizador. Encerramento de Sessão (Logout) = Processo que termina a sessão de utilizador, garantindo que os recursos são libertados e a segurança é mantida.</p> Signup and view all the answers

Qual das seguintes arquiteturas de sistema operativo oferece maior flexibilidade para adicionar novas funcionalidades sem comprometer a estabilidade do núcleo?

<p>Microkernel (B)</p> Signup and view all the answers

Em sistemas operativos com swapping, uma alta taxa de page faults indica que o sistema tem memória física suficiente e está operando de forma eficiente.

<p>False (B)</p> Signup and view all the answers

Num sistema operativo que usa paginação, qual é a principal vantagem de utilizar uma tabela de páginas multinível?

<p>Diminuir o espaço necessário para armazenar a tabela de páginas, especialmente em espaços de endereço grandes. (C)</p> Signup and view all the answers

Explique como o conceito de isolamento de processos contribui para a segurança geral de um sistema operativo.

<p>O isolamento de processos impede que um processo aceda ou interfira na memória ou recursos de outro processo, limitando os danos que um processo malicioso ou com falhas pode causar ao sistema.</p> Signup and view all the answers

Em sistemas operativos, o modo de execução ______________ permite acesso total aos recursos do sistema, enquanto o modo ______________ restringe o acesso para proteger a estabilidade do sistema.

<p>kernel, utilizador</p> Signup and view all the answers

Atribua cada tipo de driver de hypervisor à sua respetiva descrição.

<p>Hypervisor Tipo 1 (Nativo) = Corre diretamente sobre o hardware, gerindo totalmente os recursos físicos. Hypervisor Tipo 2 (Hóspede) = Corre sobre um sistema operativo existente, não gerindo diretamente o hardware.</p> Signup and view all the answers

Qual dos seguintes aspetos é mais crítico para garantir a segurança em um sistema operativo multiutilizador?

<p>Implementar políticas robustas de autenticação e autorização. (D)</p> Signup and view all the answers

Em arquiteturas monolíticas, a falha em um único componente do sistema operativo pode potencialmente levar à falha de todo o sistema.

<p>True (A)</p> Signup and view all the answers

Num sistema operativo com escalonamento preemptivo, o que acontece quando um processo de alta prioridade fica pronto para execução?

<p>O processo em execução é interrompido e o processo de alta prioridade começa a ser executado imediatamente. (B)</p> Signup and view all the answers

Como os sistemas operativos lidam com a concorrência para evitar condições de corrida e garantir a integridade dos dados?

<p>Sistemas operativos usam mecanismos de sincronização, como semáforos, mutexes e bloqueios, para controlar o acesso a recursos partilhados e prevenir condições de corrida.</p> Signup and view all the answers

Flashcards

Sistema Operativo

Conjunto de programas que gerencia os recursos do sistema e fornece uma interface entre hardware e utilizador.

Alocação de Recursos

Distribui os recursos do sistema (CPU, memória, E/S) de forma eficiente entre os processos.

Maximização do Desempenho

Implementa políticas de otimização para garantir que os recursos são utilizados de forma a maximizar o desempenho geral do sistema.

Abstração do Hardware

Obtém-se uma máquina virtual mais fácil de operar com operações uniformizadas que esconde a complexidade do hardware.

Signup and view all the flashcards

Permissões

Distinguir o que cada utilizador pode fazer com os ficheiros e diretórios como leitura, escrita e execução.

Signup and view all the flashcards

Privilégios

Distinguir o nível de Acesso que um utilizador tem aos recursos do sistema. Como instalar software ou alterar configurações.

Signup and view all the flashcards

Núcleo (Kernel)

Parte central do sistema operativo Gerir processos, memória, dispositivos e ficheiros.

Signup and view all the flashcards

Núcleo Monolítico

Tipo de arquitetura, todo o código do núcleo é executado no modo kernel.

Signup and view all the flashcards

Microkernel

Tipo de arquitetura, apenas as funções essenciais são executadas no modo kernel.

Signup and view all the flashcards

Interface Gráfica (GUI)

Utiliza janelas, ícones e menus para permitir a interação do utilizador com o sistema.

Signup and view all the flashcards

Linha de Comandos (CLI)

Permite que os utilizadores interajam com o sistema através de comandos de texto.

Signup and view all the flashcards

Estrutura de Ficheiros

Organização hierárquica de ficheiros e diretórios.

Signup and view all the flashcards

Funções do Sistema de Ficheiros

Armazenamento, recuperação, nomeação, partilha e proteção de ficheiros.

Signup and view all the flashcards

Alocação de Memória

Distribuição de memória para processos em execução.

Signup and view all the flashcards

Paginação

Técnica que divide a memória em blocos menores (páginas) para facilitar a gestão.

Signup and view all the flashcards

Segmentação

Técnica que divide a memória em segmentos de tamanhos variáveis, de acordo com as necessidades dos processos.

Signup and view all the flashcards

Drivers de Dispositivos

Programas que permitem ao sistema operativo comunicar com o hardware.

Signup and view all the flashcards

Interrupções

Sinais que indicam ao processador que um evento necessita de atenção imediata.

Signup and view all the flashcards

Processo

Um programa em execução, que inclui o código do programa, os dados e o contexto de execução.

Signup and view all the flashcards

Processo Bloqueado

Estado de um processo que está em espera de um evento como uma operação de E/S.

Signup and view all the flashcards

Escalonamento de Processos

Determinar a ordem de execução dos processos para otimizar o uso da CPU.

Signup and view all the flashcards

Pipes

Canal de comunicação unidirecional entre processos.

Signup and view all the flashcards

Autenticação

Processo de verificação da identidade do utilizador com um nome de utilizador e palavra-passe.

Signup and view all the flashcards

Autorização

Processo de concessão de acesso aos recursos do sistema com base nas permissões e nos privilégios de cada utilizador.

Signup and view all the flashcards

Sessão de Utilizador

Período durante o qual um utilizador está autenticado e ativo no sistema.

Signup and view all the flashcards

Modo Kernel

Nível de privilégio mais alto. Tem acesso total a todos os recursos do sistema.

Signup and view all the flashcards

Modo Utilizador

Nível de privilégio mais baixo, Acesso restrito aos recursos do sistema.

Signup and view all the flashcards

Arquitetura Monolítica

O sistema operativo é desenvolvido como um único bloco, com todos os serviços integrados no núcleo.

Signup and view all the flashcards

Arquitetura Microkernel

Apenas as funções essenciais estão no núcleo, outras operam em modo utilizador.

Signup and view all the flashcards

Arquitetura em Camadas

O sistema é dividido em camadas, cada uma com funções específicas.

Signup and view all the flashcards

Máquina Virtual

Permite simular vários sistemas operativos ou máquinas independentes num único hardware físico.

Signup and view all the flashcards

Study Notes

  • Os sistemas operativos são um conjunto de programas que gerem os recursos do sistema e fornecem uma interface entre a máquina, o utilizador e as aplicações.
  • Simplificam o uso dos recursos lógicos, abstraindo a complexidade do hardware.
  • Um sistema operativo cria uma "máquina virtual", que é independente do hardware.
  • Sistemas operativos garantem a manutenção e evolução, sendo seguros, fiáveis e otimizados.

Utilizadores e Funções Principais

  • Um sistema operativo é um intermediário entre o equipamento físico e o utilizador.
  • Os "utilizadores" podem ser pessoas ou programas, ambos usufruindo dos serviços do sistema operativo.
  • Um utilizador-pessoa interage diretamente com a máquina.
  • Um utilizador-programa emprega os recursos partilhados pelo sistema.
  • Um utilizador é o operador humano que interage com o computador
  • Uma aplicação, programa ou processo é aquele que corre externamente ao sistema operativo.

Tipos de Sistemas Operativos e Classificação

  • Os sistemas operativos são classificados com base na relação entre o tempo da máquina e o tempo real.
  • Nos sistemas de tempo virtual, o tempo real não é um fator crítico.
  • Nos sistemas de tempo real, o tempo real é relevante para assegurar o cumprimento de tarefas dentro de prazos predefinidos.
  • Classificação adicional baseia-se no número de processadores e na sua utilização.
  • Sistemas paralelos partilham memória e relógio entre múltiplos microprocessadores.
  • Sistemas distribuídos operam com memória e relógios independentes para cada microprocessador.

Objetivos dos Sistemas Operativos

  • Gerir eficientemente a máquina.
  • Alocar recursos como CPU, memória e dispositivos de E/S de forma eficiente entre processos.
  • Implementar políticas de otimização para maximizar o desempenho geral.
  • Os utilizadores que efetuam a gestão eficiente da máquina efetuam a virtualização do hardware.
  • Abstrair o hardware fornecendo uma máquina virtual com operações uniformizadas e interfaces simples para utilizadores e programadores.
  • Fornecer serviços úteis aos "utilizadores."
  • Facilitar a interação do utilizador com o sistema através de interfaces gráficas ou de linha de comandos.
  • Disponibilizar para os programas um conjunto de recursos acessíveis através de uma interface de programação.
  • Garantir a estabilidade da máquina, determinar a utilização adequada dos recursos.
  • Verificar a validade das operações e o cumprimento de regras e permissões.
  • Assegurar que utilizadores e programas não interfiram uns com os outros.
  • Proporcionar mecanismos de deteção e recuperação de falhas.
  • Garantir a segurança e proteção dos dados dos utilizadores contra acessos não autorizados.
  • Isolar processos para manter a integridade do sistema.

Componentes Essenciais do Sistema Operativo

  • Núcleo (Kernel): Parte central que gere operações básicas (processos, memória, dispositivos e ficheiros).
  • Tipos de núcleo:
    • Monolítico: todo o código é executado no modo kernel.
    • Microkernel: apenas as funções essenciais são executadas no modo kernel, com outras em modo utilizador.
  • Interface de Utilizador: Permite a interação do utilizador com o sistema.
    • Interface Gráfica (GUI): Usa janelas, ícones e menus.
    • Linha de Comandos (CLI): Usa comandos de texto.
  • Gestão de Processos:
    • Criação e terminação.
    • Algoritmos de escalonamento.
    • Mecanismos de comunicação entre processos (IPC).
  • Gestão de Dispositivos:
    • Drivers de dispositivos para a comunicação.
    • Gestão de interrupções.
  • Sistemas de Ficheiros:
    • Possui estrutura hierárquica.
    • Oferece funções de armazenamento, recuperação, nomeação, partilha e proteção de ficheiros.
  • Gestão de Memória:
    • Alocação de memória: Distribui memoria em processos em execução.
    • Paginação: Divide a memoria em blocos menores
    • Segmentação: Divide a memoria em segmentos de tamanhos variados.

Estados de um Processo:

  • Novo: A ser criado.
  • Pronto: Preparado para executar.
  • Em Execução: A ser executado pela CPU.
  • Bloqueado: À espera de um evento.
  • Terminado: Concluído.

Escalonamento de Processos

  • Objetivo: Otimizar o uso da CPU.
  • Algoritmos de escalonamento:
    • FIFO: Executados na ordem de chegada.
    • Round Robin: Executados com tempo fixo e colocados no final da fila.
    • Prioridade: Baseados na prioridade de cada processo.

Comunicação entre Processos (IPC)

  • Objetivo: Troca de informações.
  • Mecanismos de IPC:
    • Pipes: Comunicação unidirecional.
    • Mensagens: Envio de mensagens.
    • Memória Partilhada: Acesso partilhado à memória.

Gestão de Dispositivos (Periféricos)

  • Programas (drivers) possibilitam o sistema operar e comunicar com o hardware.
  • Sinais (interrupções) indicam ao processador eventos que requerem ação imediata.
  • Os tipos de interrupções podem ser de hardware ou software.

Modelo de Interação do Sistema

  • O sistema operativo atua como a única entidade responsável pelo hardware, mantendo a interação com o utilizador e as aplicações indireta.
  • As tarefas incluem a configuração, controlo, gestão de erros, e notificação de eventos do hardware.
  • Device drivers são subprogramas que gerem de periféricos.

Interação Utilizador

  • O utilizador percebe o sistema de maneira indireta.
  • Tipicamente interage através de uma interface (explorer, shell, terminal, etc).
  • O interface facilita utilização do sistema.

Contas de Utilizador

  • Definição: Uma conta com nome de utilizador (username) e palavra passe (password).
  • Tipos de Contas:
    • Administrador: Privilégios elevados.
    • Utilizador Comum: Privilégios limitados.
  • Permissões: leitura (read), escrita (write) e execução (execute).
  • Privilégios: Nível de acesso que um utilizador tem aos recursos do sistema.

Autenticação e Autorização

  • Autenticação: Validação da identidade do utilizador.
  • Autorização: Concessão de acesso a recursos baseado em permissões.
  • Gestão de Sessões: Início (login) e término (logout) de sessão, mantendo a segurança e libertando recursos.

Níveis de Privilégios

  • Modos para garantir segurança e estabilidade:
    • Modo Kernel: Maior privilégio, acesso total.
    • Modo Utilizador: Menor privilégio, acesso restrito.
  • A transição é feita via chamadas de sistema e interrupções.

Modo Kernel vs. Modo Utilizador

  • Modo Kernel:
    • É o nível de privilégio mais alto para o SO.
    • Acesso completo permitindo operações críticas e segurança.
  • Modo Utilizador:
    • Nível de privilégio mais baixo.
    • Acesso restrito para proteger de ameaças ou erros e executar aplicações.

Transição entre Modos

  • Chamadas de Sistema:
    • Mecanismos por onde programas requerem serviços do núcleo.
  • Interrupções:
    • Sinalizam ao processador eventos importantes.
    • A transição é feita entre hardware e software.

Operações em Cada Modo

  • Modo Kernel:
    • Gerir memória.
    • Gerir processos.
    • Gerir dispositivos.
  • Modo Utilizador:
    • Executar aplicações.
    • Solicitar serviços ao núcleo.

Importância dos Níveis de Privilégios

  • Segurança: Protege contra ameaças.
  • Estabilidade: Garante operações sólidas.
  • Eficiência: Permite operações eficientes e isoladas.

Arquitetura de Sistemas Operativos

  • Organiza e gere hardware/software.
  • Descreve elementos, como o núcleo, a gestão de processos, memória, ficheiros e dispositivos.
  • Tipos principais de arquiteturas incluem:
    • Monolítica
    • Microkernel
    • Camadas
    • Máquina virtual

Sistemas Monolíticos

  • Sem estrutura modular, tudo num bloco.
  • Procedimentos e funções podem interagir livremente.
  • Chamadas de sistema diretas no modo núcleo.

Vantagens e Desvantagens, Sistemas Monolíticos

  • Podem ser mais rápidos em desempenho, a comunicação é direta sem requerer troca de mensagens.
  • Implementação mais simples com interfaces mais diretas.
  • Difícil manutenção e isolamento de responsabilidades.
  • Escalabilidade limitada, aumentando o risco de erros.

Arquiteturas em Camadas

  • Cada camada tem função específica e interage com camadas adjacentes.
  • Há isolamento de funções e organização clara e compreensível.
  • Depuração é facilitada dentro de cada camada.
  • Dificuldade: Definir hierarquia e gerir a sobreposição de funções.

Arquiteturas em Camadas - Implementação

  • Camadas típicas incluem gestão de memória, comunicação e E/S, etc.
  • Otimização de desempenho e proteção de processos.

Arquiteturas em Camadas - Modo de Operação e Evolução

  • A Ordem correta deve ser implementada na memória. Arquiteturas mistas são aquelas que começam como monolíticas e constroem-se para arquitetura mista.
  • Apresentam dificuldades como determinar hierarquia e sobreposição de funções.

Máquinas Virtuais

  • Baseiam-se na virtualização do hardware, simulando várias máquinas com seus SOs individuais.
  • Grande parte(s) do sistema operativo é movido para um nível superior, ganhando uma simplicidade e estabilidade
  • Evolução: Originárias de sistemas de tempo partilhado, separando multiprogramação e virtualização do hardware.
  • Hypervisors são sistemas operativos focados em virtualização, sem funcionalidades habituais de SOs.
  • Tipos de Hypervisor:
  • Hypervisor Tipo 1 (Nativo): Corre diretamente sobre o hardware e gere os recursos físicos.
  • Hypervisor Tipo 2 (Hóspede): Corre sobre um existente como VirtualBox.

Máquinas Virtuais - Vantagens e Desvantagens

  • As máquinas virtuais facilitam o desenvolvimento de novos sistemas.
  • O Isolamento virtual opera de forma independente.
  • Há dificuldade de implementação.
  • O desempenho se torna virtual e pode aumentar a carga no sistema.

Conceitos Importantes - Máquinas Virtuais

  • Modo Núcleo: A gestão do SO tem acesso total ao hardware.
  • Modo Núcleo Virtual: Simula o acesso ao núcleo para sistemas operativos convidados.
  • Modo Utilizador Virtual: Simulação de acesso para aplicações.

Máquinas Virtuais - Desvantagens do Hypervisor

  • Hypervisor 1: Menor facilidade na interação com partes do utilizador. O acesso é remotamente através de outra máquina.
  • Hypervisor 2: Forte dependência em sistemas e pode ser menos completo e menor poder.

Arquitetura Cliente-Servidor (Microkernel)

  • O sistema operativo é divididos em unidades funcionais.
  • Os serviços tem sido proporcionados por programas.
  • A requisição está estruturada através de mensagens.
  • É um conceito simples e otimista de implementação e tem uma complexidade mínima.

Arquitetura Cliente-Servidor (Microkernel) II

  • Facilidade a sistemas distribuídos e a separação entre núcleo e a separrabilidade.
  • A comunicação pode efetuar sobrecargas.
  • A implementação é de vários processos complexos.

Cliente-Servidor (Microkernel): Filosofia de Construção

  • A construção efetua-se na política, definindo o recurso. E o mecanismo que implementa o método de núcleo.
  • Funções de Mecanismo são o Escalonamento, o Despacho e Gerência de Comunicações.
  • Modelo de Aplicação Windows NT.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

Use Quizgecko on...
Browser
Browser