MATÉRIA: SISTEMA OPERACIONAL (S.O)
PROFESSOR: ARMANDO RIVAROLA, LICENCIADO EM
COMPUTAÇÃO
QUANDO FALAMOS EM
SISTEMA OPERACIONAL
PENSAMOS EM?
ALGUNS EXEMPLOS
Windows, Linux, MacOS.
PARA CELULAR
IOS, Android.
Agora pense !
PARA QUE SERVE O
S.O?
PORQUE USAR O
S.O?
PARA QUE SERVE O S.O?
Um Sistema Operacional é responsável pelo
controle do funcionamento do computador, é
ele quem inicializa o hardware do computador,
fornece rotinas básicas para controle de
dispositivos, fornece gerência, escalonamento
e interação de tarefas, mantém a integridade
de sistema, entre outras tarefas.
PORQUE USAR O S.O?
 Porque utilizar um sistema operacional
 – Gerenciamento de processos
 – Gerenciamento da memória
 – Gerenciamento de arquivos
 – Gerenciamento de periféricos e dispositivos de
entrada
 e saída
 – Ambiente de rede e distribuído
 – Segurança
GERENCIAMENTO DE PROCESSOS :
 O sistema operacional é responsável pelo ciclo de
 execução dos processos: carga, execução e
finalização
 Dividir o tempo de processamento entre os
processos ativos (escalonamento)
– Algoritmos!!!
 Como escalonar de um processo para o outro?
– Arquitetura de computadores!!!
 Prover a comunicação entre processos
– Estrutura de dados !!!
 Prover a sincronização entre processos
– Algoritmos e métodos!!!
GERENCIAMENTO DE MEMÓRIA:
 O sistema operacional deve gerenciar a memória
disponível no computador
– Alocação da memória entre os diferentes processos
 Arquitetura de computadores
– Proteção da memória entre diferentes processos
 Arquitetura de computadores
 Memória virtual: utilizar a memória secundária para
aumentar a memória disponível.
– O que acontece quando um processo não está na
memória principal?
– Quais são os processos que serão temporariamente
armazenados na memória secundária?
 Algoritmos e arquitetura de computadores
GERENCIAMENTO DE ARQUIVOS:
 Como armazenar os arquivos de maneira eficiente?
– Métodos e algoritmos
 Como acessar os arquivos de maneira eficiente?
– Métodos e algoritmos
 Como prover confiabilidade de armazenamento?
– Métodos e algoritmos
 Como prover um modelo comum para diferentes
tipos de armazenamento?
– Discos rígidos, cartões de memória
GERENCIAMENTO DE PERIFÉRICOS:
 • Diferentes tipos de periféricos
– Dispositivos de entrada
– Dispositivos de saída
– Dispositivos síncronos
• Monitor
– Dispositivos assíncronos
• Teclado
– Métodos de acesso:
• Polling: espera ativa
• Interrupção
SISTEMAS DE REDE E DISTRIBUÍDOS:
 Crescente aumento do número de serviços
remotos
– Concorrência
– Segurança
 Servidores de arquivos
 Servidores de impressão
 Servidores de autenticação
 Transparência
– Acesso e Concorrência – Localização
– Replicação – Falhas
– Mobilidade – Escalabilidade
SEGURANÇA:
 Autenticação de usuários
 Proteção e níveis de acesso
– Diferentes usuários com diferentes níveis de
acesso
 Criptografia
 Vírus e proteção do sistema operacional
BREVE INTRODUÇÃO
 Apresentando os Sistemas Operacionais, alguns
conceitos importantes, um breve histórico de sua
evolução e uma classificação de seus tipos.
 Os processos computacionais, sua ocorrência e as
principais questões associadas ao seu controle.
 Falamos sobre o escalonamento de processos
enquanto
 O gerenciamento de memória.
 Finalmente o gerenciamento de dispositivos
periféricos.
OBJETIVOS DE UM SISTEMA OPERACIONAL
 Oferecer os recursos do sistema de forma
simples e transparente;
 Gerenciar a utilização dos recursos
existentes buscando seu uso eficiente em
termos do sistema;
 Garantir a integridade e a segurança dos
dados armazenados e processados no
sistema e também de seus recursos físicos.
PROCESSOS
O QUE É UM PROCESSO COMPUTACIONAL?
 Um processo computacional ou simplesmente
processo pode ser entendido como uma atividade
que ocorre em meio computacional, usualmente
possuindo um objetivo definido, tendo duração
finita e utilizando uma quantidade limitada de
recursos computacionais.
 A interatividade é o aspecto que considera se o
usuário utiliza diretamente o sistema
computacional, podendo receber as respostas
deste, sem intermediação e dentro de intervalos de
tempo razoáveis.
 O tempo de resposta (response time) é, desta
forma, uma medida de interatividade, que
representa o intervalo de tempo decorrido entre um
pedido ou solicitação de processamento (por
exemplos, a entrada de um comando ou execução
de um programa) e a resposta produzida pelo
sistema (realização das operações solicitadas ou
finalização do programa após sua execução
completa).
 Já a produtividade (throughput) é uma medida de
trabalho relativa do sistema, expressa usualmente
em tarefas completas por unidade de tempo, ou
seja, é uma medida que relaciona o trabalho
efetivamente produzido e o tempo utilizado para
realização deste trabalho. Unidades possíveis do
throughput são: programas por hora, tarefas por
hora, jobs por dia etc.
 Throughput = taxa de transferência
 Jobs = emprego
RECURSOS E AMBIENTE OPERACIONAL
 O hardware do computador, ou seja, sua parte
física, determina suas capacidades brutas, isto é,
seus verdadeiros limites. Todos os elementos
funcionais do computador são considerados
recursos do sistema computacional e são,
geralmente, representados pelos dispositivos que o
compõe e que podem ser utilizados pelos usuários,
ou seja:
 monitores de vídeo, teclado, mouse, mesas
digitalizadoras, portas de comunicação serial e
paralela, placas de rede ou comunicação,
impressoras, scanners, unidades de disco flexível
ou rígido, unidades de fita, unidades
leitoras/gravadoras de CD, DVDs etc.
PROCESSOS
 Um processo computacional ou
simplesmente processo pode ser entendido
como uma atividade que ocorre em meio
computacional, usualmente possuindo um
objetivo definido, tendo duração finita e
utilizando uma quantidade limitada de
recursos computacionais.
 Esta definição traz algumas implicações:
PROCESSOS
 Apenas as atividades que acontecem num
sistema computacional são compreendidas
como sendo processos computacionais.
 Outro ponto importante é a duração finita,
pois isto implica que um processo
computacional, por mais rápido ou curto
que possa ser tem sempre uma duração
maior que zero, ou seja, não existem
processos instantâneos.
PROCESSOS
 Além disso, um processo utiliza ao menos
um dos recursos computacionais existentes
para caracterizar seu estado.
 Simplificando, podemos entender um
processo como um programa em execução,
o que envolve o código do programa, os
dados em uso, os registradores do
processador, sua pilha (stack) e o contador
de programa além de outras informações
relacionadas a sua execução.
PROCESSOS
 Desta forma, temos que a impressão de um
documento é um processo computacional assim
como a cópia de um arquivo, a compilação de um
programa ou a execução de uma rotina qualquer.
Todas as atividades, manuais ou automáticas, que
ocorrem dentro de um computador podem ser
descritas como processos computacionais.
 Atualmente quase todos os computadores são
capazes de realizar diversas tarefas ao mesmo
tempo, onde cada uma destas tarefas pode
representar um ou mesmo mais processos.
PROCESSOS
 O termo processo (process) é muitas vezes
substituído pelo termo tarefa (task ) e pode assumir
um dos seguintes significados:
• um programa em execução;
• uma atividade assíncrona;
• o espírito ativo de um procedimento;
• uma entidade que pode utilizar um processador ou,
• uma unidade que pode ser despachada para
execução.
EXERCÍCIOS
 1) Para que serve um sistema operacional?
 2) Para que usamos um sistema operacional?
 3) O que o sistema operacional faz no
gerenciamento de processo?
 4) O que o sistema operacional faz no
gerenciamento de memória?
 5) O que o sistema operacional faz no
gerenciamento de periféricos?
 6) Quais são os 3 sistemas operacionais mais
conhecidos?
 7) O que é um processo computacional?
 8) O que é a interatividade, tempo de resposta e
produtividade? Fale sobre o papel de cada uma
delas.
 9) O que se entende por processo?

Aula so 1a

  • 1.
    MATÉRIA: SISTEMA OPERACIONAL(S.O) PROFESSOR: ARMANDO RIVAROLA, LICENCIADO EM COMPUTAÇÃO
  • 2.
    QUANDO FALAMOS EM SISTEMAOPERACIONAL PENSAMOS EM?
  • 3.
    ALGUNS EXEMPLOS Windows, Linux,MacOS. PARA CELULAR IOS, Android.
  • 4.
    Agora pense ! PARAQUE SERVE O S.O? PORQUE USAR O S.O?
  • 5.
    PARA QUE SERVEO S.O? Um Sistema Operacional é responsável pelo controle do funcionamento do computador, é ele quem inicializa o hardware do computador, fornece rotinas básicas para controle de dispositivos, fornece gerência, escalonamento e interação de tarefas, mantém a integridade de sistema, entre outras tarefas.
  • 6.
    PORQUE USAR OS.O?  Porque utilizar um sistema operacional  – Gerenciamento de processos  – Gerenciamento da memória  – Gerenciamento de arquivos  – Gerenciamento de periféricos e dispositivos de entrada  e saída  – Ambiente de rede e distribuído  – Segurança
  • 7.
    GERENCIAMENTO DE PROCESSOS:  O sistema operacional é responsável pelo ciclo de  execução dos processos: carga, execução e finalização  Dividir o tempo de processamento entre os processos ativos (escalonamento) – Algoritmos!!!  Como escalonar de um processo para o outro? – Arquitetura de computadores!!!  Prover a comunicação entre processos – Estrutura de dados !!!  Prover a sincronização entre processos – Algoritmos e métodos!!!
  • 8.
    GERENCIAMENTO DE MEMÓRIA: O sistema operacional deve gerenciar a memória disponível no computador – Alocação da memória entre os diferentes processos  Arquitetura de computadores – Proteção da memória entre diferentes processos  Arquitetura de computadores  Memória virtual: utilizar a memória secundária para aumentar a memória disponível. – O que acontece quando um processo não está na memória principal? – Quais são os processos que serão temporariamente armazenados na memória secundária?  Algoritmos e arquitetura de computadores
  • 9.
    GERENCIAMENTO DE ARQUIVOS: Como armazenar os arquivos de maneira eficiente? – Métodos e algoritmos  Como acessar os arquivos de maneira eficiente? – Métodos e algoritmos  Como prover confiabilidade de armazenamento? – Métodos e algoritmos  Como prover um modelo comum para diferentes tipos de armazenamento? – Discos rígidos, cartões de memória
  • 10.
    GERENCIAMENTO DE PERIFÉRICOS: • Diferentes tipos de periféricos – Dispositivos de entrada – Dispositivos de saída – Dispositivos síncronos • Monitor – Dispositivos assíncronos • Teclado – Métodos de acesso: • Polling: espera ativa • Interrupção
  • 11.
    SISTEMAS DE REDEE DISTRIBUÍDOS:  Crescente aumento do número de serviços remotos – Concorrência – Segurança  Servidores de arquivos  Servidores de impressão  Servidores de autenticação  Transparência – Acesso e Concorrência – Localização – Replicação – Falhas – Mobilidade – Escalabilidade
  • 12.
    SEGURANÇA:  Autenticação deusuários  Proteção e níveis de acesso – Diferentes usuários com diferentes níveis de acesso  Criptografia  Vírus e proteção do sistema operacional
  • 13.
    BREVE INTRODUÇÃO  Apresentandoos Sistemas Operacionais, alguns conceitos importantes, um breve histórico de sua evolução e uma classificação de seus tipos.  Os processos computacionais, sua ocorrência e as principais questões associadas ao seu controle.  Falamos sobre o escalonamento de processos enquanto  O gerenciamento de memória.  Finalmente o gerenciamento de dispositivos periféricos.
  • 14.
    OBJETIVOS DE UMSISTEMA OPERACIONAL  Oferecer os recursos do sistema de forma simples e transparente;  Gerenciar a utilização dos recursos existentes buscando seu uso eficiente em termos do sistema;  Garantir a integridade e a segurança dos dados armazenados e processados no sistema e também de seus recursos físicos.
  • 15.
    PROCESSOS O QUE ÉUM PROCESSO COMPUTACIONAL?  Um processo computacional ou simplesmente processo pode ser entendido como uma atividade que ocorre em meio computacional, usualmente possuindo um objetivo definido, tendo duração finita e utilizando uma quantidade limitada de recursos computacionais.
  • 16.
     A interatividadeé o aspecto que considera se o usuário utiliza diretamente o sistema computacional, podendo receber as respostas deste, sem intermediação e dentro de intervalos de tempo razoáveis.  O tempo de resposta (response time) é, desta forma, uma medida de interatividade, que representa o intervalo de tempo decorrido entre um pedido ou solicitação de processamento (por exemplos, a entrada de um comando ou execução de um programa) e a resposta produzida pelo sistema (realização das operações solicitadas ou finalização do programa após sua execução completa).
  • 17.
     Já aprodutividade (throughput) é uma medida de trabalho relativa do sistema, expressa usualmente em tarefas completas por unidade de tempo, ou seja, é uma medida que relaciona o trabalho efetivamente produzido e o tempo utilizado para realização deste trabalho. Unidades possíveis do throughput são: programas por hora, tarefas por hora, jobs por dia etc.  Throughput = taxa de transferência  Jobs = emprego
  • 18.
    RECURSOS E AMBIENTEOPERACIONAL  O hardware do computador, ou seja, sua parte física, determina suas capacidades brutas, isto é, seus verdadeiros limites. Todos os elementos funcionais do computador são considerados recursos do sistema computacional e são, geralmente, representados pelos dispositivos que o compõe e que podem ser utilizados pelos usuários, ou seja:  monitores de vídeo, teclado, mouse, mesas digitalizadoras, portas de comunicação serial e paralela, placas de rede ou comunicação, impressoras, scanners, unidades de disco flexível ou rígido, unidades de fita, unidades leitoras/gravadoras de CD, DVDs etc.
  • 19.
    PROCESSOS  Um processocomputacional ou simplesmente processo pode ser entendido como uma atividade que ocorre em meio computacional, usualmente possuindo um objetivo definido, tendo duração finita e utilizando uma quantidade limitada de recursos computacionais.  Esta definição traz algumas implicações:
  • 20.
    PROCESSOS  Apenas asatividades que acontecem num sistema computacional são compreendidas como sendo processos computacionais.  Outro ponto importante é a duração finita, pois isto implica que um processo computacional, por mais rápido ou curto que possa ser tem sempre uma duração maior que zero, ou seja, não existem processos instantâneos.
  • 21.
    PROCESSOS  Além disso,um processo utiliza ao menos um dos recursos computacionais existentes para caracterizar seu estado.  Simplificando, podemos entender um processo como um programa em execução, o que envolve o código do programa, os dados em uso, os registradores do processador, sua pilha (stack) e o contador de programa além de outras informações relacionadas a sua execução.
  • 22.
    PROCESSOS  Desta forma,temos que a impressão de um documento é um processo computacional assim como a cópia de um arquivo, a compilação de um programa ou a execução de uma rotina qualquer. Todas as atividades, manuais ou automáticas, que ocorrem dentro de um computador podem ser descritas como processos computacionais.  Atualmente quase todos os computadores são capazes de realizar diversas tarefas ao mesmo tempo, onde cada uma destas tarefas pode representar um ou mesmo mais processos.
  • 23.
    PROCESSOS  O termoprocesso (process) é muitas vezes substituído pelo termo tarefa (task ) e pode assumir um dos seguintes significados: • um programa em execução; • uma atividade assíncrona; • o espírito ativo de um procedimento; • uma entidade que pode utilizar um processador ou, • uma unidade que pode ser despachada para execução.
  • 24.
    EXERCÍCIOS  1) Paraque serve um sistema operacional?  2) Para que usamos um sistema operacional?  3) O que o sistema operacional faz no gerenciamento de processo?  4) O que o sistema operacional faz no gerenciamento de memória?  5) O que o sistema operacional faz no gerenciamento de periféricos?  6) Quais são os 3 sistemas operacionais mais conhecidos?  7) O que é um processo computacional?  8) O que é a interatividade, tempo de resposta e produtividade? Fale sobre o papel de cada uma delas.  9) O que se entende por processo?