Mudanças entre as edições de "SOP-EngTel (página)"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 200: Linha 200:
 
* Capítulo 13 do livro do Silberschatz.
 
* Capítulo 13 do livro do Silberschatz.
  
 +
{{collapse bottom}}
 +
 +
=Laboratórios=
 +
 +
{{collapse top| bg=lightyellow | expandir=true | Lab1}}
 +
== Lab1 ==
 +
 +
Lab1.
 
{{collapse bottom}}
 
{{collapse bottom}}
  
 
=Projetos=
 
=Projetos=
 +
 +
{{collapse top| bg=lightyellow | expandir=true | BOOOS - Basic Object Oriented Operating System}}
 +
== BOOOS - Basic Object Oriented Operating System ==
 +
 +
Esta disciplina utiliza um projeto contínuo, no qual os alunos desenvolvem um aplicativo que emula um sistema operacional no espaço de usuário no Linux. Este projeto é chamado de [[BOOOS - Basic Object Oriented Operating System]].
 +
{{collapse bottom}}
  
 
{{collapse top| bg=lightyellow | expandir=true | TerminALL - FORK/WAIT/EXEC na prática - Prazo: 12/11/2015}}
 
{{collapse top| bg=lightyellow | expandir=true | TerminALL - FORK/WAIT/EXEC na prática - Prazo: 12/11/2015}}
 +
== TerminALL - FORK/WAIT/EXEC na prática ==
  
 
Você deve utilizar as chamadas de sistema fork, wait e exec para implementar em C++ um interpretador de comandos. Os requisitos do projeto são apresentados na figura abaixo.
 
Você deve utilizar as chamadas de sistema fork, wait e exec para implementar em C++ um interpretador de comandos. Os requisitos do projeto são apresentados na figura abaixo.
Linha 228: Linha 243:
 
Um versão do projeto com classes VAZIAS E INCOMPLETAS pode ser baixada [http://docente.ifsc.edu.br/arliones.hoeller/sop/TerminALL-VAZIO.tgz aqui].
 
Um versão do projeto com classes VAZIAS E INCOMPLETAS pode ser baixada [http://docente.ifsc.edu.br/arliones.hoeller/sop/TerminALL-VAZIO.tgz aqui].
  
 +
{{collapse bottom}}
 +
 +
{{collapse top| bg=lightyellow | expandir=true | Programação Concorrente}}
 +
== Programação Concorrente ==
 +
 +
A ser divulgado.
 +
{{collapse bottom}}
 +
 +
{{collapse top| bg=lightyellow | expandir=true | Mapeamento de memória}}
 +
== Mapeamento de memória ==
 +
 +
A ser divulgado.
 +
{{collapse bottom}}
 +
 +
{{collapse top| bg=lightyellow | expandir=true | Implementação de driver Linux}}
 +
== Implementação de driver Linux ==
 +
 +
A ser divulgado.
 
{{collapse bottom}}
 
{{collapse bottom}}

Edição das 14h17min de 26 de novembro de 2015

Sistemas Operacionais - 2015-2

Professor: Arliones Hoeller

  • Encontros: Quintas às 15:40 e sextas às 13:30 no Lab. de Programação.
  • Atendimento
    • Terças das 10:35 às 11:30
    • Quintas das 14:25 às 15:20

Notas

Aluno P0 P1 T0 T1 Exs Final
122005023-7
132002623-0
132002999-0
131004419-8
131005150-0
131001281-4
121000492-5
121000484-4
132004514-6
122001832-5
132002264-2
131005334-0
132004278-3

Entrega das Avaliações Secundárias

Aluno S0 S1 S2 S3
122005023-7 OK
132002623-0 OK
132002999-0 OK
131004419-8 OK
131005150-0 OK
131001281-4 OK
121000492-5 OK
121000484-4 OK
132004514-6 OK
122001832-5 OK
132002264-2 OK
131005334-0 OK
132004278-3 OK

Material de aula

Slides

Listas de exercícios

As listas de exercícios são compostas por exercícios selecionados do livro do Silberschatz, 8a edição. Há 10 volumes deste livro na biblioteca do campus.

SILBERSCHATZ, Abraham; GALVIN, Peter; GAGNE, Greg. Fundamentos de sistemas operacionais. 8. ed. Rio de Janeiro: LTC, 2011. 515 p., il. ISBN 9788521617471.

Exercícios selecionados:

  • Capítulo 1: 1-3, 6-8, 10, 13, 14, 17, 22, 23, 25.
  • Capítulo 2: 1-8, 12, 13, 15, 17, 22, 25.
  • Capítulo 3: 1, 3, 6-10, 13, 15
  • Capítulo 4: 1, 4, 7, 8, 10-13
  • Capítulo 5: 1-3, 5, 6, 9, 10, 13-15, 21
  • Capítulo 6: 1, 2 (utilizar semáforos POSIX), 6, 8, 11-15, 18, 20, 21, 25, 29, 39.
  • Capítulo 8: 1-6, 9-21, 23.
  • Capítulo 9: 1-8, 14-16, 19-23, 28.
  • Capítulo 10: 1-20
  • Capítulo 11: 1-7
  • Capítulo 12: 1-7, 13-14 (desafio).

Conteúdo

Unidade 01: Introdução

Unidade 01: Introdução

Apresentação do Curso

Visão geral de funções, responsabilidades e estruturas de um SO

Arquitetura de sistemas operacionais e modelos de programação

Unidade 02: Processos

Unidade 02: Processos

Gerência de tarefas; contextos, processos e threads

Escalonamento de tarefas

Comunicação entre Processos

Coordenação de processos

Unidade 03: Memória

Unidade 03: Memória

Introdução ao Gerenciamento de Memória

Memória Principal

Memória Virtual


Unidade 04: Armazenamento

Unidade 04: Armazenamento

Interface do Sistema de Arquivos

Implementação do Sistema de Arquivos

Estrutura de Armazenamento em Massa

Gerenciamento de Entrada e Saída

Laboratórios

Lab1

Lab1

Lab1.

Projetos

BOOOS - Basic Object Oriented Operating System

BOOOS - Basic Object Oriented Operating System

Esta disciplina utiliza um projeto contínuo, no qual os alunos desenvolvem um aplicativo que emula um sistema operacional no espaço de usuário no Linux. Este projeto é chamado de BOOOS - Basic Object Oriented Operating System.

TerminALL - FORK/WAIT/EXEC na prática - Prazo: 12/11/2015

TerminALL - FORK/WAIT/EXEC na prática

Você deve utilizar as chamadas de sistema fork, wait e exec para implementar em C++ um interpretador de comandos. Os requisitos do projeto são apresentados na figura abaixo.

TerminALL-requisitos.png

Uma estrutura geral do sistema é dado pelo diagrama de classes abaixo. Este diagrama é uma versão inicial e, certamente, incompleto. O sistema final de vocês provavelmente terá novos métodos ou assinaturas diferentes para os métodos que estão ali.

TerminALL-classes.png

Para embasar seu trabalho, estude as seguintes man pages.

  • man fork
  • man wait
  • man exec
  • man gethostname
  • man getlogin
  • man getpid
  • man 2 kill

Entrega: Quinta, 12/11/2015, por email, em duplas. Entregar o código-fonte do projeto, acompanhado de relatório curto com o diagrama de classes atualizado (implementado) e uma descrição de como o sistema foi testado.

Um versão do projeto com classes VAZIAS E INCOMPLETAS pode ser baixada aqui.

Programação Concorrente

Programação Concorrente

A ser divulgado.

Mapeamento de memória

Mapeamento de memória

A ser divulgado.

Implementação de driver Linux

Implementação de driver Linux

A ser divulgado.