Sistemas Operacionais



Documentos relacionados
Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

Ciclo de Vida de um Processo

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

Conceitos e Chamadas de Sistema

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

SISTEMAS OPERACIONAIS

Infra-Estrutura de Software. Introdução. (cont.)

Figura 01 Kernel de um Sistema Operacional

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal

Introdução. Sistemas Operacionais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Sistemas Operacionais

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br Roteiro. Componentes do Sistema

SISTEMAS OPERACIONAIS

Sistemas Operacionais

Introdução à Ciência da Computação

Sistemas Operacionais

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Sistema de arquivos. Prof. Valeria M. Bastos Prof. Antonio Carlos Gay Thomé 13/06/2012 1

Sistemas Operacionais

Sistemas Operacionais

Arquitetura de Sistemas Operacionais

Conceitos Básicos sobre Sistemas Operacionais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

4 Estrutura do Sistema Operacional Kernel

Estrutura, Processos e Threads

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

Sistema Operacional Correção - Exercício de Revisão

Fundamentos de Sistemas Computacionais Introdução

Sistemas Operacionais. Conceitos de um Sistema Operacional

Pós-Graduação, Maio de 2006 Introdução aos Sistemas Operacionais. Prof. Dr. Ruy de Oliveira CEFET-MT

Sistemas Operacionais. Estruturas de SO. Edeyson Andrade Gomes.

Sistemas Operacionais

Sistemas Operacionais. Introdução

Gerência de Entrada/Saída

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

7 Processos. 7.1 Introdução

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Sistemas Operacionais

Visão Geral de Sistemas Operacionais

Desenvolvimento para Sistemas Embarcados (CEA 513) Conceitos Gerais

Aula 3. Sistemas Operacionais. Prof: Carlos Eduardo de Carvalho Dantas

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Sistemas Operacionais

SISTEMAS OPERACIONAIS 2007

Introdução a Computação 07 Sistemas operacionais. Márcio Daniel Puntel marcio.puntel@ulbra.edu.br

SISTEMAS OPERACIONAIS

Noções básicas de Informática: Software

Conceitos de Sistemas Operacionais: Chamadas de Sistema. Prof Rafael J. Sandim

Apresentação da disciplina. Sistemas Operacionais I N. A disciplina. O Professor. Áreas de atuação na pesquisa. Referências bibliográficas básicas

Sistemas Operacionais Entrada / Saída. Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br)

Sistemas Operacionais

1º Estudo Dirigido. Capítulo 1 Introdução aos Sistemas Operacionais

Sistemas Operacionais

Sistemas Operacionais I. Introdução

SFD Carla Souza Otacílio Lacerda

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Threads. 8 de janeiro de 2015

Sistemas Operacionais. Prof. André Y. Kusumoto

Processos. Adão de Melo Neto

Sistemas Operacionais - Prof. Fabricio Alessi Steinmacher - fsteinmacher@gmail.com OBJETIVOS OPERACIONAIS. fsteinmacher@gmail.

Sistemas Operacionais

Mecanismo de Interrupção

Introdução. Nível do Sistema Operacional. Introdução. Um Sistema Operacional... Introdução a Sistemas Operacionais

Unix: Sistema de Arquivos. Geraldo Braz Junior

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

Infraestrutura de Hardware. Memória Virtual

Sistemas Operacionais Processos e Threads

Usuários. Aplicativos e programas dos usuários. Kernel gerenciamento de processos, memória, sistema de arquivos, I/O, etc.

Sistemas Operacionais

Fundamentos de Sistemas Operacionais. Sistema de Arquivos. Prof. Edwar Saliba Júnior Março de Unidade Sistemas de Arquivos

Sistemas Operativos. Threads. 3º ano - ESI e IGE (2011/2012) Engenheiro Anilton Silva Fernandes (afernandes@unipiaget.cv)

Sistema Operacional LINUX

6 - Gerência de Dispositivos

Organização e Arquitetura de Computadores

Processos e Threads (partes I e II)

PROCESSOS COMPONENTES DE UM PROCESSO. A execução de um processo possui vários componentes. PID e PPID

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 04 - Concorrência. Cursos de Computação

Capítulo 6 Sistemas de Arquivos

Funções de um SO. Gerência de processos Gerência de memória Gerência de Arquivos Gerência de I/O Sistema de Proteção

2 SYSCALLs: O que são

Estruturas de Sistemas Operacionais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional

Noções de Software. André Aziz Francielle Santos

SO Sistemas Operacionais

ENDEREÇOS DE REDE PRIVADOS até até até Kernel

Sistemas Operacionais

Transcrição:

Sistemas Operacionais Conceitos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno

Sumário Introdução Arquitetura de Sistema Operacional Chamadas de sistema.

Processos Basicamente, um programa em execução Requer CPU, memória, I/O Possui espaço de endereçamento Programa executável, dados do programa e sua pilha Pode manipular determinados registradores Contador de programa e ponteiro pra pilha Multiprogramação Vários processos sendo executados Escalonamento Salvamento de contexto 3

Processos Tabela de processos Árvore de Processos Comunicação entre processos Identificação de processos (UID, GID) 4

Espaços de Endereçamento SOs simples Apenas um programa por vez está na memória SOs mais sofisticados Multiprogramação Um processo não pode interferir na execução de outro Endereços são de 32 ou 64 bits (maioria) 2 32 ou 2 64 bytes Se precisar mais espaço do que pode endereçar? Memória virtual 5

Sumário Introdução Arquitetura de Sistema Operacional Chamadas de sistema.

Arquitetura de SO Sistemas monolíticos Coleção de processos sequenciais cooperantes Chamadas de sistemas Fluxo de operação Recebe solicitações dos programas de usuário Executa em modo de núcleo Retorna um resultado 7

Arquitetura de SO Sistemas monolíticos 8

Arquitetura de SO Sistemas em camadas Conjunto de processos sequenciais cooperantes Cada processo com uma função bem definida Gerência de memória, driver de periférico, etc ex: THE (Dijkstra 1968) 5: operador 4: programas usuário 3: gerência de entrada/saída 2: comunicação console do operador-processo 1: gerência de memória 0: alocação do processador e multiprogramação (tratamento de interrupções) 9

Arquitetura de SO Máquinas virtuais Permite a execução de múltiplos SOs virtuais em um único SO real Trata o hardware e o núcleo do SO como se tudo fosse hw. Recursos do computador físico são compartilhados para criar a máquina virtual. Prove uma interface idêntica para o hardware. O SO cria a ilusão de múltiplos processos, cada qual em sua própria memória e processador Escalonamento da CPU dá sensação que os usuários tem seu próprio processador

Arquitetura de SO Máquinas virtuais Recursos virtuais são mapeados para recursos reais Cada usuário possui uma máquina virtual mapeada sobre a máquina real (ex. VM da IBM) 11

Arquitetura de SO Micro Kernel Baseada no modelo cliente/servidor Serviços do sistema são implementados por servidores especializados Microkernel implementa somente tratamento de interrupções, gerência de memória (básico), funções básicas de escalonamento clientes (programas de usuários) solicitam serviços ao SO (microkernel) que reencaminha para os serviços especializados modularidade e extensibilidade Benefícios Código de fácil extensão Fácil adaptação do SO para novas arquiteturas Mais confiável, visto que menos código está rodando no SO 12

Arquitetura de SO Micro Kernel 13

Sumário Introdução Estrutura de um SO Chamadas de sistema

Chamada de sistema Forma na qual o SO disponibiliza seus serviços System calls prove interface entre um processo e o SO. Geralmente disponibilizado como instrução em assembly Três métodos usados para passagem de parâmetro entre processo do usuário e SO. Passagem de parâmetros por registrador. Armazenamento de parâmetros em tabela na memória, sendo o endereço da tabela passado como parâmetro por registrador. Empilhamento (Push) de parâmetros na pilha pelo processo e o consequente desempilhamento pelo SO.

Chamadas de sistema (system calls) Executam em modo núcleo Realiza troca de contexto: usuário -> núcleo (kernel) Processo que faz chamada de sistema fica bloqueado Implementação depende do HW existente ex: INTEL/Linux -> INT 80H (número da rotina é passado no registrador EAX) MIPS??? 16

Chamadas de sistema (system calls) Podem ser divididas em grupos Gerência de processos Gerência de arquivos/diretórios Sinalizações Proteção Gerência de tempo 17

Chamadas de sistema (system calls) Gerência de processos Criação de processos (fork, exec) Espera a finalização de processo (wait, waitpid) Termina a execução do processo (exit) Informação sobre processos (getpid) Aumenta segmento de dados (brk, sbrk) 18

Chamadas de sistema (system calls) Gerência de arquivos Criação/abertura de arquivos (creat, mknod, open) Fechamento de arquivos (close) Leitura/escrita de arquivos (read, write) Movimentação do ponteiro do arquivo (lseek) Informações (stat, fstat, access) Execução de operações especiais em arquivos especais (ioctl, fcntl) controlar dispositivos de bloco / configurar terminal 19

Chamadas de sistema (system calls) Gerência de diretórios Criação/remoção de diretórios (mkdir, rmdir) Manipulação de links (link, unlink) (Des)Montagem no sistema de arquivos (mount, umount) Mudar diretório atual (chdir) Mudar diretório root / (chroot) 20

Chamadas de sistema (system calls) Sinalização Rotinas para execução de operações que preemptam a execução de um processo corrente (sigaction, sigreturn, kill) Informar exceções detectadas pelo hardware (sigaction, sigreturn) Definição de limites de tempo (timeouts) (alarm) Suspender um processo por tempo indeterminado (pause) Habilitar/desabilitar a recepção de sinais em um processo (sigprocmask, sigpending) 21

Chamadas de sistema (system calls) Sinalizações

Chamadas de sistema (system calls) Proteção Modificar permissões de acesso em arquivos (chmod) Informações de usuário (getuid, setuid, getgid, setgid) Mudar o proprietário de um arquivo (chown) 23

Chamadas de sistema (system calls) Gerência de tempo Verificar hora atual (time) segundos desde 1 de janeiro de 1970 Modificar hora (stime) Modifica os horários de acesso de um arquivo (utime) Informações sobre uso de CPU pelo usuário (times) tempo gasto pelo usuário nos modos de usuário e sistema 24

2 5 Exemplo Chamadas de Sistema Linux

Referências Silberschatz, G. Operating System Concepts. Capítulo 3 Tanenbaum, A. Sistemas Operacionais: projeto e implementação. Capítulo 1