Mudanças entre as edições de "SSC-541 t1(jo)"

De CoteiaWiki
Linha 36: Linha 36:
  
 
[[Media:Aula09.pdf‎|9) Gerenciamento de memória virtual e swapping]]
 
[[Media:Aula09.pdf‎|9) Gerenciamento de memória virtual e swapping]]
 +
 +
[[Media:Aula10.pdf‎|10) Gerenciamento de memória virtual e paginação]]
  
 
== Exercícios Práticos ==
 
== Exercícios Práticos ==

Edição das 12h25min de 15 de novembro de 2010

Informações Gerais

Título: Sistemas Operacionais I (SSC-541) - Turma 1 - INF

Professor: Dr. Jó Ueyama (joueyama at icmc dot usp dot br)

Monitor: Roni Guillermo Apaza Aceituno (roniguillermo at gmail dot com)

Horário de Aulas: Terça, das 19:00 às 20:40 / Sexta das 21:00 às 22:40

Horário Atendimento 
Professor: Quarta, das 18 às 19h00 (Sala 3-111).
Monitor: Combinar por email

Programa do Curso

Aula 1: Programa do Curso (apresentação)

Material Didático

1) Introdução ao Sistemas Operacionais

2) Conceitos iniciais de Sistemas Operacionais

3) Processos

4) Escalonamento de Processos

5) Comunicação Interprocessos

6) Problemas Clássicos de Comunicação entre Processos

7) Passagem de Mensagem

8) Deadlocks

9) Gerenciamento de memória

9) Gerenciamento de memória virtual e swapping

10) Gerenciamento de memória virtual e paginação

Exercícios Práticos

1) Executar e estudar os mecanismos de sincronização de processos Consumidor e Produtor

  a) Baixar o pacote ProducerCosnsumerTest.java;
  b) Executar o programa ProducerCosnsumerTest;
  c) Dizer como ele realizar a sincronização entre o Consumidor e o Produtor;
  d) Altere o programa de forma que o buffer possa acomodar no máximo três números.

2) Exercícios com passagem de mensagem usando o JCSP (Java for CSP programmers). Esta plataforma implementa i) o paralelismo seguro em Java Threads; e ii) passagem de mensagem. Ele também minimiza os problemas de concorrência como os deadlocks e as condições de corrida. Os procedimentos deste exercício encontram-se abaixo:

  a) Baixar o pacote jcspclasses.jar.gz;
  b) Executar o programa demo DriverProgram.java do JCSP usando a biblioteca do JCSP (a jcspclasses.jar). 
     Para isso baixe o pacote demo.tar.gz. 
     Note q você deve compilar os três programas (ReadEvenIntsProcess.java, SendEvenIntsProcess.java, Loader.java e o DriverProgram.java). 
     Não esqueça também de configurar o CLASSPATH (em Linux export CLASSPATH=nome do diretório onde vc instalou o demo:nome do diretorio do jcspclasses/jcspclasses.jar);
     Por exemplo: export CLASSPATH=/home/joao/demo:/home/joao/jcspclasses.jar:
  c) Desenvolver uma calculadora usando passagem de mensagem em JCSP. 
      Para isso vc deve criar uma classe Subtractor.java e um Adder.java que receba dados de soma e subtração de uma classe Calculator.java. 
      Este último deve criar um canal de comunicação com o Subtractor.java e um outro com o Adder.java, da mesma maneira como é implementado no programa demo.