This is an old revision of the document!


Pesquisa

Google
 
Web www.gustavowagner.com

HomePage

Essa página é apenas um apêndice do meu site. Para uma versão completa de minha página, clique: http://www.gustavowagner.com

Disciplinas

Sistemas Operacionais 2006.1

SO - Horário/Sala

Segundas: 8-10
Sextas: 10-12

Sala: 204
Laboratório:

SO - Lista de discussão

Cadastre-se na lista:

sofatec@grupos.com.br

Ao enviar e-mail à lista, coloque no início do subject: [fatec-so]

SO - Ementa

Histórico, conceitos e tipos de sistemas operacionais. Sua estrutura e o seu contexto dentro do software básico. Conceito de processo. Gerenciamento de processos e da CPU. Escalonamento de processo, monoprocessamento e multiprocessamento. Concorrência e sincronização de processos. Gerenciamento de memória (real e virtual). Gerenciamento de entrada/saída. Alocação de recursos e Deadlocks. Gerência de arquivos. Estudos de casos.

SO - Objetivos Programáticos

Apresentar os conceitos básicos de um sistema operacional convencional: conceito de processo, escalonamento de processos, gerência de processador, gerência de entrada e saída, gerência de memória e gerência de arquivos.

SO - Programa

UNIDADE ASSUNTO
1 Introdução aos Sistemas Operacionais
1.1 Funções de um sistema operacional
1.2 Conceitos básicos
2 Processos
2.1 Definição e estrutura de processos
2.2 Estados de um processo
2.3 Escalonamento de processos
2.4 Fluxo de execução de um processo
2.5 Multithreading
2.6 Comunicação entre processos
3 Impasses
3.1 Definição de impasses
3.2 Técnicas para o tratamento de impasses
4 Gerência de Memória
4.1 Gerência de memória sem swap ou paginação
4.2 Swapping
4.3 Memória virtual
4.4 Algoritmos de reposição de páginas
4.5 Segmentação
5 Entrada/Saída
5.1 Hardware e software de entrada/saída
6 Sistemas de Arquivos
6.1 Arquivos e diretórios
6.2 Implementação de sistemas de arquivos
6.3 Segurança e mecanismos de proteção da informação
7 Implementação de programas em C para Linux

SO - Plano de Aulas

Data Assunto Material Referências Local
03/02 Anunciar URL da disciplina;
Apresentação da disciplina;
Avisar para todos olharem as datas importantes;
Apresentar os objetivos da disciplina;
Apresentar o conteúdo da disciplina;
Apresentar o processo de avaliação da disciplina;
Apresentar a motivação para a disciplina;
Motivação Sala
06/02 1. Introdução aos Sistemas Operacionais;
(1.1, 1.2, 1.3, 1.4)
Introdução parte 1 Paramos no slide 17 Sala
10/02 cont. 1. Introdução aos Sistemas Operacionais Parte 2 Sala
13/02 2.1 Processos Processosfork.c, StackOverflow.java Sala
17/02 Miniteste 1
2.2 Threads
Threads Sala
20/02 Miniteste 2
2.3 Comunicação interprocessos
(2.3.1, 2.3.2, 2.3.3, 2.3.4)
Sala
24/02 cont 2.3 Comunicação interprocessos
(2.3.5, 2.3.6, 2.3.7)
Sala
27/028-) Carnaval
03/03 cont 2.3 Comunicação interprocessos
(2.3.8, 2.3.9)
06/03 2.4 Problemas Clássicos de IPC (2.4.1)
10/03 cont 2.4 Problemas Clássicos de IPC (2.4.2)
13/03 cont 2.4 Problemas Clássicos de IPC (2.4.3)
17/03 Projeto 1 Lab
20/03 2.5 Escalonamento (2.5.1, 2.5.2, 2.5.3)
24/03 cont 2.5 Escalonamento (2.5.4, 2.5.5, 2.5.6)
27/03 Prova 1 Sala
31/03 3. Impasses (deadlocks)
(3.1, 3.2, 3.3)
Sala
03/04 Miniteste 3
cont 3. Impasses (deadlocks)
(3.4, 3.5 )
Sala
07/04 cont 3. Impasses (deadlocks)
(3.6, 3.7 )
Sala
10/04 4 Gerenciamento de Memória (4.1) Sala
14/048-) Sexta-feira Santa
17/04 cont 4 Gerenciamento de Memória (4.2) Sala
21/048-) Tiradentes
24/04 cont 4 Gerenciamento de Memória (4.3.1) Sala
28/04 cont 4 Gerenciamento de Memória (4.3.2, 4.3.3, 4.3.4) Sala
01/058-) Dia do Trabalho
05/05 Miniteste 4
cont 4 Gerenciamento de Memória (4.5)
Sala
08/05 cont 4 Gerenciamento de Memória (4.6) Sala
12/05 4.8 Segmentação Sala
15/05 Prova 3 (1h) 5. Entrada e Saída (5.1 e 5.2.1) Sala
19/05 Miniteste 5
cont 5 Entrada e Saída (5.2.2, 5.2.3, 5.2.4 e 5.2.5)
Sala
22/05 6. Sistemas de Arquivos;\\Arquivos e diretórios;
Estrutura de sistemas de arquivos;
Interfaces de sistemas de arquivos.
(Seções 6.1 e 6.2)
Sala
26/05 Miniteste 6
Implementação de sistemas de arquivos;
O sistema de arquivos do UNIX;
(Seções ... e 10.6)
Sala
29/05 O sistema de arquivos do UNIX;
Outros sistemas de arquivos;
(Seções 10.6 e 11.7)
Sala
02/06 Confiabilidade de sistemas de arquivos;
Recuperação de sistemas de arquivos;
Administração e desempenho de sistemas de arquivos;
(Seções )
Sala
05/06 Segurança de sistemas;
Princípios de projeto de sistemas visando segurança;
Mecanismos de proteção;
(Seções )
Sala
09/06 Prova 3
12/06 Reposição
16/06
19/06 Prova Final
23/06
26/06
30/06

Notas: Aula sobre Message Passing: http://cne.gmu.edu/workbenches/pcmsg/Message.html

SO - Bibliografia

  • Sistemas Operacionais Modernos, 2a. edição. A.S. Tanenbaum, Prentice-Hall, 2003.
  • Operating Systems, 4a. edição. W. Stallings, Prentice-Hall, 2000

SO - Avaliação

A avaliação constará de provas, mini-testes e projetos práticos, com os respectivos pesos discriminados na seção abaixo. Os projetos serão desenvolvidos em grupo de no máximo 2 alunos.

Avaliação 1:

  • (30%) 1a. Prova: Após encerramento da unidade 2.
  • (20%) Projeto 1: Criação e gerência de processos no Linux (assunto: escalonamento de processos)
  • (30%) 2a. Prova: Após encerramento da unidade 4.
  • (20%) Mini-testes: 3 mini-testes. Serão considerados apenas as 2 melhores notas. Miniteste 1 (após a Unidade 1), Miniteste 2 (após a Unidade 2.2) , Miniteste 3 (após a Unidade 3.2)

Avaliação 2:

  • (50%) 3a. Prova – Após encerramento da unidade 6.
  • (15%) Projeto 2: Comunicação Inter-processos no Linux (assunto: seções críticas, entrada/saída)
  • (15%) Projeto 3: Listagem de diretórios no Linux (sistema de arquivos)
  • (20%) Mini-testes: 3 mini-testes. Serão considerados apenas as 2 melhores notas. Miniteste 4 (após a Unidade 4.3), Miniteste 5 (após a Unidade 5.1), Miniteste 6 (após a Unidade 6.1).

SO - Notas dos alunos

Java Básico 2006.1

Horário/Sala

Segundas: 10-12
Sextas: 08-10

Sala: 301
Laboratório:

Lista de discussão

Cadastre-se na lista:

javabasicofatec@grupos.com.br

Ao enviar e-mail à lista, coloque no início do subject: [fatec-java]

Ementa

Estudo de uma linguagem de programação orientada a objetos. Tipos de dados, Estrutura da linguagem. Tipos estruturados (vetor, matriz e registro). Declarações. Comandos de atribuição, condicionais e de repetição. Modularização e Subprogramas. Mensagem e troca de mensagem. Aplicações.

Objetivos Programáticos

Esta disciplina tem o objetivo de dar continuidade ao desenvolvimento do raciocínio lógico aplicado à solução de problemas em nível computacional. Programação orientada a objetos. Mensagem. Introduzir conceitos mais avançados de desenvolvimento de algoritmos, e novas estruturas de controle e de dados. Introduzir funcionalidades mais avançadas de uma linguagem de programação. Programação Visual. Ao final da disciplina o aluno estará apto a implementar programas de complexidade média.

Programa

UNIDADE ASSUNTO
1 Introdução e conceitos básicos
1.1 Histórico
1.2 Conceitos básicos
1.3 Ambientes de programação Java
2 Programação orientada a objetos básica
2.1 Conceitos de orientação a objetos
2.2 Criação de objetos
2.3 Encapsulamento
2.4 Strings
2.5 Coleções
3 Projeto de programas Java e Programação orientada a objetos avançada
3.1 Estruturação de programas em camadas
3.2 Herança e polimorfismo
3.3 Classes abstratas e interfaces
3.4 Tratamento de exceções
3.5 Pacotes
4 Interface gráfica e orientação a eventos
4.1 Swing
4.2 Modelo de eventos

Plano de Aulas

Data Assunto Material Referências Local
03/02 Apresentar site da disciplina;
Apresentação do critério de avaliação e discussão sobre os objetivos da disciplina; Apresentar motivação: pirâmide de programadores
Definição das duplas de laboratório;
Motivação Java JUG - www.cgjug.com.br
Entrem na lista de discussão do grupo
Sala
06/02 Introdução ao Java;
Histórico;
Introdução Sala
10/02 Prática com o Java SDK;
Pesquisando API de Java;
Trabalhando com JSDK Lab
13/02 Ambientação com a sintaxe Java Ambientação com sintaxe java Sala
17/02 Entrega de exercício da aula passada;
Ambientação com a sintaxe Java;
Sala
20/02 Ambientação com a sintaxe Java;
Exercícios em sala;
Sala
24/02 Introdução ao Eclipse Lab
27/028-) Carnaval
03/02 Exercícios em programação estruturada Lab
06/03 Introdução à programação orientada a objetos;
Atributos;
Encapsulamento;
Sala
10/03 Métodos;
Acesso;
Exercícios em sala;
Sala
13/03 Exercícios: definição de classes;
Recursos avançados do Eclipse para classes;
Lab
17/03 Criação de objetos;
Construtores;
Lista de exercício 1 Sala
20/03 Exercícios de criação de objetos; Lab
24/03 Strings e Arrays; Sala
27/03 Exercícios em arrays; Lab
31/03 Exercícios em arrays; Lab
03/04 Exercícios em arrays; Lab
07/04 Últimas dúvidas - exercício de arrays;
Discussão lista de exercícios 1;
Lab
10/04 Prova 1 Sala
14/048-) Sexta-feira Santa
17/04 Estruturação de programas Java; Sala
21/048-) Tiradentes
24/04 Estruturação de programas Java;
Iniciar exercício no laboratório;
Lab
28/04 Exercícios em estruturação de programas Java Lab
01/058-) Dia do Trabalho
05/05 Exercícios em estruturação de programas Java Lab
08/05 Herança;
Polimorfismo;
Sala
12/05 Exercícios em herança; Lab
15/05 Interfaces;
Pacotes;
Sala
19/05 Exercícios com pacotes;
Exercícios com interfaces;
Dúvidas - Herança
Lab
22/05 Tratamento de exceções; Sala
26/05 Exercícios com exceções; Lab
29/05 Programação interface gráfica: Swing;
Janelas e Painéis;
Sala
02/06 Gerenciadores de Layout;
Tratamento de Eventos;
Exercícios com Swing extras;
Sala
05/06 Prova 2 Sala
09/06 Aula de dúvidas Sala
12/06 Prova de Reposição Sala
16/06 Aula de Dúvidas Sala
19/06 Prova Final Sala

Bibliografia

  • Java Como Programar – H. M. Deitel e P. J. Deitel – 3a./5a Edição – Bookman.
  • Core Java 2: Volume 1, Fundamentos. Horstmann e Cornell, Makron Books, 2000.

Avaliação

A avaliação será composta por 2 notas. Cada nota é formada da seguinte forma: (nota de prova escrita) * 0,6 + (nota de laboratórios) * 0,4. Os laboratórios serão formados por grupos de no máximo 2 pessoas.

Avaliação 1: após Unidade 2.
Avaliação 2: após Unidade 4.

Notas dos alunos

Datas Importantes

Projeto

Descrição

O projeto consiste em implementar um sistema bancário. O aluno evoluirá o código durante as aulas de laboratório e a avaliação levará em conta tanto o trabalho durante o laboratório quanto as funcionalidades implantadas. Para isso, usaremos o EasyAccept descrito abaixo. Isso significa que se seu código não fizer o que foi pedido, você não obterá uma boa nota no laboratório.

Testes de Aceitação

Iremos usar a ferramenta EasyAccept para garantir a corretude das funcionalidades do sistema.

Fotos

www.flickr.com

Você pode ver mais em http://www.gustavowagner.com

França

Músicas

Mapa

mapafrancapetit.jpg

Vinho

Sites com ótimas informações sobre enologia são http://www.oenologie.fr/, http://fr.wikipedia.org/wiki/Vin_rouge e http://www.onivins.fr/. Esses sites estão em francês pois não encontrei algum em português com a qualidade destes. As informações que colocarei aqui são apenas um início ao fascinante estudo do vinho. Um filme que recomendo sobre enologia é Sideways.

Os conceitos aqui expostos serão sobre vin rouge (vinho tinto), considerado mais complexo que vin blanc (vinho branco).

Quem se interessar em fazer um curso de vinho in loco eu recomendo primeiramente procurar a Alliance Française de sua cidade.

Processo de vinificação

Primeiramente precisamos entender o esquema de vinificação, ou seja, o processo de preparação do vinho. Nesta imagem podemos ver todas as etapas de preparação do vinho tinto. Primeiro, as uvas são prensadas (fouloir) para se separar o bago (parte interna), o talo, a casca e a semente. Casca e semente vão passar por um processo chamado maceração, e o bago vai passar por um processo chamado fermentação. É neste ponto que se difere o processo de produção de vinho tinto do vinho branco. Para a produção do vinho branco não é realizado o processo de maceração, que é o responsável pela cor vermelha do vinho.

Nesse momento, a fermentação é feita por um processo químico com Anidrido Sulfuroso (SO2), chamada fermentação alcóolica (em torno de 25º). A fermentação ocorrerá durante duas a três semanas. Já a maceração ocorrerá durante 10 a 15 dias.

O resultado desse processo será um líquido que chamamos de vin de goutte (vinho de gota) e outro formado pelas cascas, sementes e borras (bactérias mortas). Esse último passará por uma prensa e o resultado é o que chamamos de vin de presse (vinho de prensa). Desse vinho é que vem os taninos que estão presentes nas sementes e peles. Os taninos são os responsáveis pelo gosto amargo e pela adstringência do vinho.

O vinho de prensa e o vinho de gota passam por mais um processo de fermentação realizada por bactérias. O resultado é o vinho em si que passará por um processo de estabilização com Anidrido Sulfuroso. Após disso, o vinho é colocado normalmente em tonéis de carvalho.

Conceitos Importantes

Há vários fatores que influenciam a produção de um vinho. Os principais são os fatores físicos. A exposição ao sol, o relevo e o clima influenciam positivamente ou negativamente o vinho. Ao Relevo + clima dá-se a denominação micro-clima. Só para se ter uma idéia, há centenas de micro-climas na França. A identificação dos micro-climas faz parte de um grande trabalho de estudo que, infelizmente, ainda não foi realizado no Brasil.

Um importante conceito em vinho é a noção de Terroir. Um Terroir é formado por um micro-clima + solo/subsolo. Um Terroir determina o “caráter” de um vinho.

Um terroir + tecnologia leva à definição de castas de vinhos. Por exemplo, Pinot Noir, Caberbet Sauvignon, Merlot, Gamay e Beaujolais são exemplos de castas.

Por fim, precisamos definir um cru (vem da palavra croître = crescer). Cru é um terroir específico. Um cru corresponde ao melhor terroir de uma região de produção de vinho. Assim, quando se fala de cru, fala-se de um vinho de excelente qualidade. Normalmente estes vinhos têm um A.O.C. (identificação de origem controlada). Um exemplo de A.O.C. é o Bordeaux.

Uma imagem dos vinhos A.O.C. pode ser vista aqui.

Exame de vinhos

Visual

taca.jpg

Um importante exame a ser feito sobre o vinho é o visual. Através do exame visual podemos identificar, por exemplo, a idade do vinho. O ano de produção do vinho é chamado de Millésime.

O exame visual pode ser realizado da seguinte forma. Coloque numa taça o vinho a ser analisado e a incline num ângulo próximo a 30º com a mesa, com a boca da taça virada para frente. É possível identificar duas áreas: o olho e a borda. O olho pode apresentar cores tais como ruby, cereja, etc. A borda tem cores de um espectro que vai desde o roxo até o alaranjado/marron. É importante que você tente fazer analogias entre as cores encontradas nessas duas regiões com coisas da natureza do reino animal, vegetal ou mineral. Isso ajuda a identificarmos o vinho.

A idade do vinho pode ser identificada pela borda. Normalmente, quanto mais roxo, mais novo é o vinho. Quanto mais alaranjado/marron, mais antigo é o vinho. Perceba que essa identificação só é possível atrelada ao terroirs. Isso quer dizer que a mesma cor de borda apresentada por vinhos de diferentes terroirs pode representar idades distintas.

Gustativo

O exame gustativo normalmente é feito levando em consideração fatores como acidez, a adstringência, a untuosidade (doçura) e o amargor. Um bom vinho é aquele em que esses fatores se apresentam de forma harmoniosa.

O exame gustativo pode ser realizado da sequinte forma. Coloque um pouco de vinho na boca, levando o vinho a passar por todas as partes da língua. Isso é feito para que se consiga perceber os diferentes sabores do vinho. A imagem abaixo mostra a língua e os sabores sentidos em cada parte.

linguasabores.jpg

Olfativo

O exame olfativo é considerado um dos mais difíceis de ser realizado. Um dos fatores que leva a essa dificuldade é a quase extinção do uso do olfato para identificação de objetos/comida/coisas pela raça humana. Um bom livro sobre esse tema é “O perfume - Patrick Süskind”.

Para facilitar na identificação dos cheiros exalados por um vinho, nós os dividimos em famílias aromáticas:

  • Frutas
    • Cítricas
    • Vermelhas (morango, groselha, etc)
  • Especiarias
    • Canela
    • Pimenta do reino
    • Baunilha
    • Cravo
  • Floral (mais presente em vinhos brancos)
  • Madeira
    • Cedro
    • Pinheiro
  • Vegetais
    • Legumes
  • Animais (aparece mais no processo de envelhecimento)
    • Couro
  • Defumado

O exame olfativo pode ser realizado da sequinte forma. Inspire o vinho numa taça com 3 a 5cm de distância do seu nariz. Coloque o nariz dentro da taça e inspire forte. Repita esse processo por três vezes. Depois faça movimentos circulares com a taça. Isso faz com que alguns aromas sejam exalados. Inspire novamente. Tente identificar os aromas de acordo com as famílias aromáticas.

Temperatura ideal

As temperaturas mostradas na tabela abaixo são para a Europa. Como regra geral, a temperatura ideal de um vinho é -7 a -8°C em relação à temperatura ambiente.

Tipos de vinhos Temperatura Ideal
Bordeaux tinto (St-Emilion, Graves, Pomerol) 16 à 18 °C
Bourgognes tinto (Pommard, Vosne Romanée) 15-16°C
Vinho tinto suave (Beaujolais, Chinon) 10 à 12°C
Vinhos rosê (Arbois, Anjou, Provence) 9 à 11°C
Vinhos brancos secos (Chablis, Graves, Alsace) 7 à 11°C
Champanhe 6 à 8°C
Vinhos licores (Anjou, Sauternes, Monbazillac) 5-6°C

Fotos do curso de vinho tinto

Dezembro de 2005 na Alliance Française, com professor Jean: aqui.

Contato

gugawag [ at ] gmail.com

 
gustavo_wagner.1140256924.txt.gz · Last modified: 2006/02/18 05:03 by gustavo