Fundamentos de Sistemas de Operação (FSO)

Documentos relacionados
Introdução aos Sistemas Operativos

João Correia Lopes. v 1.0, Outubro de Introdução aos Sistemas Operativos v1.0 1

Informática Básica. Licenciatura em Ciência da Informação. Tito Carlos S. Vieira. Tito Carlos S. Vieira

Sistemas Operacionais Aula 3

Sistemas de Operação

O Núcleo do Sistema de Operação (1) José C. Cunha, DI/FCT/UNL

Função Fundamental do SO

Motivação. Apresentação. Paulo Marques Departamento de Eng. Informática Universidade de Coimbra

Sistemas Operativos. Luís Paulo Reis. Sistemas Operativos. Sumário

Estruturas de Sistemas Operacionais

Corpo Docente Aulas Teóricas

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Sistemas Distribuídos

Sistemas Operacionais. Introdução a Sistemas Operacionais

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais. Referências Bibliográfica. Referências Bibliográfica

Sistemas Operacionais

Sistemas Operativos. 2017/2018 1º Semestre

SISTEMAS DISTRIBUÍDOS

Introdução. Para que serve um Sistema Operativo? Page. Sistemas Operativos 2008 / Departamento de Engenharia Informática

Chamadas de Sistema (SYSCALL)

Apresentação. Sistemas Operacionais. Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D.

Programação Paralela e Distribuída

Introdução aos Sistemas Operacionais

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Sumário. Introdução aos Sistemas Operacionais. Sobre esta apresentação

Sistemas Operativos I/O. Rui Maranhão

2 - Organização do Sistema Operativo. Prof. Ricardo Silva

Introdução aos Sistemas Operacionais

Curso de Programação Distribuída e Paralela 29/09/2008. Informática UFRGS. Sistemas Operacionais II (C. Geyer) Sincronização 1. Pg.

Estrutura dos Sistemas Operacionais. Adão de Melo Neto

Sistemas Operacionais

Breve Introdução aos Sistemas Operativos. Disciplina de Informática PEUS, U.Porto

Programação de Sistemas

Introdução aos Sistemas de Operação: evolução histórica e conceitos fundamentais. José A. Cardoso e Cunha DI-FCT-UNL

Corpo Docente Aulas Teóricas

Sistemas Operacionais

Sistemas Operacionais

PROVA 03/07 Segunda-feira (semana que vem)

Fundamentos de Sistemas Operativos

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre esta apresentação

Introdução aos Sistemas Operacionais

Algoritmos e Lógica de Programação Sistemas Operacionais

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre esta apresentação

Concorrência em Processos

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Recursos Entrada e Saída. 02/12/2014 Prof. Valeria M. Bastos

Licenciatura em Informática

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular INFORMÁTICA Ano Lectivo 2017/2018

Arquitetura de Sistemas Operativos

Ficha da Unidade Curricular (UC)

Sistemas Operacionais Processos. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais João Bosco T. Junior. Sistemas Operacionais João Bosco Junior - V1.3

Curso: Redes de Computadores

English version at the end of this document

Módulo 3 - Estrutura e configuração de Sistemas Operativos monoposto

Sistemas Operacionais

Estrutura do Sistema Operacional

Sistemas Distribuídos

PROGRAMA DE DISCIPLINA

Tecnologias de Distribuição e Integração. Quais as preocupações a ter com um sistema distribuído?

Apresentar aos alunos conceitos básicos de sistemas de automação de forma a capacita-los a desenvolver trabalhos de pesquisa na área.

Objetivos de um SO. Transformar o hardware numa máquina simples de usar Obter o máximo rendimento do Hardware. A vida sem um Sistema Operativo

DISCIPLINA: ELE213 Programação de Sistemas de Tempo Real. Créditos: 4. Caráter: Eletiva. Professor Regente: Prof. Walter Fetter Lages

SSC0640 Sistemas Operacionais I

Engenharia de Computação MATRIZ 535

Sistemas Operacionais & Sistemas de Programação II

Exercícios Cap I. 1.1, 1.2, 1.3 (somente letras (a), (b) e (c)) , 1.8 e 1.12 IC - UFF

Estrutura dos Sistemas Operacionais. Adão de Melo Neto

3 CONCEITOS DE SISTEMAS OPERACIONAIS

Componentes do Sistema Operacional (Parte 2)

Conceitos básicos sobre computadores

Sistemas Distribuídos

COMPETÊNCIAS A DESENVOLVER CONTEÚDOS Nº HORAS ESTRATÉGIAS RECURSOS AVALIAÇÃO. (30 x 45 ) Windows XP Office 2003 Internet Explorer

Programação concorrente (processos e threads)

SOP - TADS Fundamentos de Sistemas Operacionais

Sistemas Operativos: Introdução. February 17, 2016

UFCD SISTEMA OPERATIVO INSTALAÇÃO E CONFIGURAÇÃO

Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo

English version at the end of this document

Introdução à Computação

Programação Concorrente

Apresentação. Informação geral + Conceitos iniciais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE SOFTWARE PROFESSOR CARLOS MUNIZ

INE 5645 Programação Paralela e Distribuída. Prof. João Bosco M. Sobral INE-UFSC

Sistema Operativo: o que é?

Métodos de Sincronização

Técnico de Gestão e Programação de Sistemas Informáticos. Sistemas Operativos 10º ano

Sistemas Operacionais. Estrutura do Sistema Operacional

INE 5645 PROGRAMAÇÃO PARALELA E DISTRIBUÍDA

Índice FCA - EDITORA DE INFORMÁTICA XV

CP Introdução à Informática Prof. Msc. Carlos de Salles

Sistemas Operativos: Introdução. February 20, 2014

Sistemas Operativos I

Técnico de Gestão e Programação de Sistemas Informáticos. Sistemas Operativos 10º ano

Sistemas de Entrada e Saída

Sistemas Operacionais

Sistemas de Informação. Sistemas Operacionais

Aula 1: Introdução aos Sistemas Operacionais. Instituto Federal da Bahia INF009 - Sistemas Operacionais Profª Flávia Maristela

Transcrição:

Fundamentos de Sistemas de Operação (FSO) Lic. Eng. Informática 2009/2010 Docentes: José A. Cardoso e Cunha Hervé Paulino, Rui Marques Área Científica de Arquitectura de Sistemas Computacionais, Dep. Informática FCT/UNL

Níveis de Arquitectura de um Sistema Computacional aplicações (Chamadas ao SO) (Instruções da máquina hardware) linguagens bibliotecas sistema de operação arquitectura do computador FSO 9/15/2009 FSO - 09/10 2

FSO é parte da área científica de Arquitectura de Sistemas Computacionais 1o ciclo Licenciatura em Eng. Informática 1o ano: ISRC e AC 2o ano: FSO e Redes de Computadores 3o ano: opcionais: Codificação da Informação; Sistemas Distribuídos 2o ciclo Mestrado em Eng. Informática Sistemas Distribuídos Sistemas de Operação Computação Paralela e Distribuída Segurança de Sistemas e Redes de Computadores Sistemas de Computação Móvel e Ubíqua Sistemas e Tecnologias de Middleware Redes de Computadores TCP/IP Sistemas de Computação em Grid Gestão de Centros de Dados 3o ciclo Doutoramento em Eng. Informática Arq. Computadores, Sist. Operação, Redes Computadores, Sistemas Distribuídos Projectos CITI - Centro de Investigação em Informática e TI 9/15/2009 FSO - 09/10 3

Docentes Responsável da disciplina: José Cardoso e Cunha, jcc@di.fct.unl.pt Professor Catedrático Coordenador da Área de ASC do Dep. Informática Doutorado em Informática (UNL) Licenciado em Eng. Informática (FCT-UNL) Licenciado em Eng. Electrotécnica (IST-UTL) (Ramo Telecom. e Electrónica) Docentes das práticas: Hervé Paulino herve@di.fct.unl.pt Professor Auxiliar Doutorado em Informática (UNL) Licenciado em Ciências da Computação (FC-UP) Rui Marques rfm@di.fct.unl.pt Professor Auxiliar Doutorado em Informática (UNL) Licenciado em Eng. Informática (FCT-UNL) 9/15/2009 FSO - 09/10 4

Programa de FSO 1. Objectivos e tipos de Sistemas de Operação (SO) 2. Conceito de Processo 3. Programação Concorrente 4. Gestão de Memória 5. Sistemas de Ficheiros e operação das Entradas e Saídas 6. Interface de Programação a nível das Chamadas ao SO Prática Laboratorial: Programação a nível das chamadas ao SO (Linux) envolvendo: interacção com o utilizador (ao nível do Shell) programação de processos concorrentes comunicação e sincronização entre processos: memória partilhada, mensagens e sinais acesso ao sistema de ficheiros 9/15/2009 FSO - 09/10 5

Funcionamento da disciplina Aulas teóricas: 2 turnos, 2 aulas / semana Hora de início das aulas: à hora+10min. Aulas de quinta-feira: intervalo de 10 min. ao fim de 50 min. Horário de dúvidas: José Cardoso e Cunha (ver na página) Aulas práticas: 6 turnos +1 criado a 15/09/2009 Início na semana de 21 de Setembro Horário de dúvidas: Hervé Paulino e Rui Marques (ver na página) 9/15/2009 FSO - 09/10 6

Teóricas: Teóricas e Práticas:? Compreender as ideias e discutir os conceitos Práticas: Fazer programas e experimentar, ilustrar os conceitos, compreender melhor 9/15/2009 FSO - 09/10 7

Nas aulas práticas Pratica-se Fazendo: programas em C utilizando a interface de chamadas ao sistema UNIX Utilizam-se os conceitos e técnicas de programação que são apresentados na teórica Os trabalhos práticos incidem sobre a aplicação da matéria apresentada na aulas teóricas 9/15/2009 FSO - 09/10 8

À partida... Saber as matérias de ISRC, IP e AC 9/15/2009 FSO - 09/10 9

Conselhos gerais Sigam as aulas e a matéria desde o início Façam os trabalhos práticos Façam os testes de auto-avaliação (na página da disciplina, de 15 em 15 dias) Esclareçam as dúvidas DURANTE e não no fim do semestre 9/15/2009 FSO - 09/10 10

Apoio à cadeira Informação on-line a partir de: http://asc.di.fct.unl.pt/~jcc/fso-09-10 Livros e elementos de base Elementos complementares 09-09-07 9/15/2009 FSO - 09/10 07/08 11

LIVROS de base Elementos de Estudo Sistemas Operativos, J.Alves Marques et al, FCA-Ed.Inf, 2009 Unix System Programming, K. Haviland, D. Gray, B. Salama, Addison-Wesley, 2 nd ed., 1999 The C Programming Language, B.W. Kernighan, D.M. Ritchie, Prentice-Hall, 2 nd ed., 1988 Notas das Aulas Teóricas, jcc, DI/FCT/UNL (cobrem toda a matéria dada; acessíveis na página Web junto dos sumários das aulas) Notas das Aulas Práticas, (apoiam os trabalhos práticos; acessíveis na página Web) 9/15/2009 FSO - 09/10 12

Apoio à cadeira - complementar Informação on-line a partir de: http://asc.di.fct.unl.pt/~jcc/fso-09-10 Complementares: Operating System Concepts, Silberschatz, P. Galgin, Gagne, 8th. edition, 2009, J. Wiley&Sons Principles of Concurrent and Distributed Programming, M- Ben-Ari, Prentice-Hall, 2 nd edition, 2006 Slides, apontamentos, manuais... 09-09-07 9/15/2009 FSO - 09/10 07/08 13

Avaliação Práticas laboratoriais: realização de 5 trabalhos, grupos 2 alunos nota NP média de notas dos trabalhos práticos Frequência para obter Nota Final na disciplina: NP >= 9.5 Frequência obtida no ano 2008/2009: - mantém-se para este ano (sem a nota NP) - sem inscrição nos turnos - se quiserem, podem fazer os trabalhos 9/15/2009 FSO - 09/10 14

Avaliação Nota Final = 0.85*NT + 0.15*NP NT: 2 Testes ou Exame final: Se faz Testes: NT = média aritmética dos testes Se Nota Final >= 9.5 após os testes: Dispensa de exame Pode vir a exame, mas nesse caso NT = Nota do Exame Se não dispensou pelos testes, faz o exame: Datas dos testes: NT = Nota do Exame T1: 28 Outubro, T2: 16 Dezembro 9/15/2009 FSO - 09/10 15

SO, numa série de figuras... 9/15/2009 FSO - 09/10 16

Arquitectura de Computadores... 9/15/2009 FSO - 09/10 17

9/15/2009 FSO - 09/10 18

9/15/2009 FSO - 09/10 19

9/15/2009 FSO - 09/10 20

9/15/2009 FSO - 09/10 21

Multiprocessadores 9/15/2009 FSO - 09/10 22

9/15/2009 FSO - 09/10 23

Redes de Computadores 9/15/2009 FSO - 09/10 24

O Sistema de Operação visto como... Gestor de Recursos Gere e permite a partilha do hardware pelos processos Gere a execução dos programas e as suas interacções Garante a protecção e a consistência no acesso aos recursos (processamento, memória, comunicação) Máquina Virtual Oferece abstracções de mais fácil utilização Oferece operações de mais "alto nível" que suportam o resto do sistema e que são chamadas pelos programas utilizadores 9/15/2009 FSO - 09/10 25

Principais grupos de operações Controlo da execução de programas Iniciar, gerir a memória, detectar erros, terminar, etc.. Os processos Operações de entrada/saída de dados (ou I/O) e arquivo Comunicar com os periféricos... O acesso à informação em disco Os canais de comunicação e os ficheiros Concorrência entre processos Os problemas de escalonamento e de sincronização Múltiplas aplicações e utilizadores Comunicação entre processos concorrentes A transmissão de informação (mensagens) O acesso à informação partilhada 9/15/2009 FSO - 09/10 26

SO Application Programs Application Programs User Mode Kernel Mode OS Hardware 9/15/2009 FSO 27

Núcleo do SO O Núcleo suporta mecanismos básicos para controlo da execução dos programas e comunicação com o exterior (outros processos e dispositivos periféricos), programas que se executam em modo privilegiado capaz de controlar o hardware (CPU, M, periféricos) Sobre o Núcleo, os programas (em modo utilizador) fazem pedidos ao SO, por invocação de chamadas ao sistema (System Calls) 9/15/2009 FSO - 09/10 28

9/15/2009 FSO - 09/10 29

9/15/2009 FSO 30

Níveis de software Visão de uma aplicação Modo utilizador (executa num processo) Modo supervisor programa bibliotecas API do SO Núcleo do SO device drivers Chamada ao sistema hardware 9/15/2009 FSO 31

Chamadas ao sistema (I/O) Exemplo de saída de dados Programa C libc API do SO Núcleo (kernel) printf( ) write( ) rot-int do_write device drivers int SYSCALL Buffer com os dados a escrever hardware 9/15/2009 FSO 32

9/15/2009 FSO - 09/10 33

SO: organização interna... 9/15/2009 FSO - 09/10 34

SO Application Programs Application Programs User Mode System Services Kernel Mode Hardware Ex: MS-DOS 9/15/2009 FSO 35

SO: camadas internas Application Programs System Services Application Programs User Mode Kernel Mode Memory & I/O Device Mgmt Process Schedule Hardware Cada camada acede a uma interface de mais baixo nível Ex : UNIX 9/15/2009 FSO 36

Núcleo do SO + Serviços No Núcleo: só as funcionalidades básicas essenciais As outras: suportadas sob a forma de Serviços, executados por processos (em modo utilizador). 9/15/2009 FSO - 09/10 37

Tendência para SO mais flexíveis Application Programs Servidores Application Programs User Mode Kernel Mode Micro-núcleo Hardware 9/15/2009 FSO 38

SO = núcleo mínimo + serviços Client Application Thread lib. File Server Network Server Display Server User Kernel Send Reply Microkernel Hardware Tiny OS kernel providing basic primitives (process, memory, communication) Traditional services become subsystems OS = Microkernel + User Subsystems 9/15/2009 FSO 39

Perspectiva do Utilizador... 9/15/2009 FSO - 09/10 40

9/15/2009 FSO - 09/10 41

Interpretador de comandos 9/15/2009 FSO 42

O Sistema de Ficheiros... 9/15/2009 FSO - 09/10 43

9/15/2009 FSO - 09/10 44

9/15/2009 FSO - 09/10 45

Controlo dos programas... Processo = unidade de gestão criada pelo SO para controlar a execução de cada programa 9/15/2009 FSO - 09/10 46

9/15/2009 FSO - 09/10 47

Ciclo de vida de um processo 9/15/2009 FSO 48

Máquina virtual de cada processo 9/15/2009 FSO 49

9/15/2009 FSO - 09/10 50

9/15/2009 FSO - 09/10 51

9/15/2009 FSO - 09/10 52

9/15/2009 FSO - 09/10 53

Multiprogramação Exemplo: 4 processos concorrem por 1 CPU Se um processo espera por I/O ou termina, o SO atribui o CPU a outro processo prog.a prog.b Realmente em execução prog.c prog.d Processo 1 Processo 2 Processo 3 Processo 4 S.O. escalonador CPU temporizador 9/15/2009 FSO 54

9/15/2009 FSO - 09/10 55