SOP-2010-1-sobral
Sistemas Operacionais e Introdução à Programação - 2010-1
Informações gerais
Professor: Marcelo Maia Sobral
Email: msobral@gmail.com
Skype: mm-sobral
Lista de email (forum): sop-ifsc@googlegroups.com
Atendimento paralelo: 2a feira 10h - 12 h, 4a feira 10h - 12 h ou 16h - 17 h (no Laboratório de Desenvolvimento de Tele)
Reavaliação (recuperação): no final do semestre
Softwares
Será usado como plataforma de estudo o sistema operacional Ubuntu Linux 9.10. Para obtê-lo há essas opções:
- Trazer um CD-R virgem para que eu faça a cópia aqui no IFSC
- Fazer o download por conta própria (aprox. 700 MB)
- Usar uma máquina virtual do VirtualBox já preparada por mim (menos recomendado, pois o Linux roda mais lento)
- Trazer um DVD-R ou pendrive com ao menos 4 GB livres.
- Instalar o VirtualBox em seu computador para executar a máquina virtual
ATENÇÃO: é muito importante que se providencie o quanto antes a instalação do Ubuntu em seu computador. Sem ele você não poderá fazer os exercícios sugeridos, o que atrapalhará seu aproveitamento na disciplina ! O bom andamento do estudo depende muito de não deixar acumular o conteúdo e os exercícios. Acostume a criar uma rotina de estudo, procurando resolver os problemas apresentados e procurando o professor (ou contatando-o por email) para tirar dúvidas.
Referências adicionais
- Diário de aula do Prof. Ederson Torresini
- Antiga página da disciplina (2009-2)
- Valle, Odilson Tadeu. Gerência de Redes. IFSC - Unidade São José. 2009. (ver capítulos 1 a 9)
- Ubuntu Documentation
- Guia Foca Linux (iniciante)
- Demais referências contidas na página principal de SOP.
Sistemas operacionais
19/02: Apresentação
Apresentação da disciplina: plano de ensino, avaliação, abordagem pedagógica.
24/02: Introdução a sistemas computacionais
Sistemas computacionais; visão geral de sistemas operacionais; histórico de sistemas operacionais (resumo).
Videos ilustrativos:
- Eniac
- A Saga do Windows
- Funcionamento de um processador
- Funcionamento de um disco rígido
- Outro video sobre funionamento de um HD
Alguns textos interessantes sobre história dos sistemas operacionais:
- The Unix Operating System: um artigo publicado em 1974 pelos criadores do Unix, Ken Thompson e Dennis Ritchie.
- History of Linux (inglês)
- História do Linux (português)
- Visão geral sobre o Linux
- História do Microsoft Windows (inglês)
- História dos Sistemas Operacionais (inglês)
- História dos Sistemas Operacionais (em português)
- History of Operating Systems (inglês)
- Os 10 piores sistemas operacionais de toda a história (inglês)
26/02: Introdução ao Linux
Uso básico da interface gráfica e de texto. Apostila Gerência de Redes (prof. Odilson), capítulos 3 a 5, e capítulos 6 e 7 do Guia Foca Linux Iniciante.
Objetivos:
- Conhecer o sistema operacional Linux
- Usar a interface de linha de comando (shell)
- Usar comandos básicos para visualização e manipulação de processos
- Usar comandos básicos para manipulação de arquivos e diretórios
- Conhecer a estrutura de diretórios do Linux
- Roteiro da aula
- Arquivo para o exercício de reorganização de arquivos
- Guia rápido de instalação do NoCat (arquivo texto demonstrativo)
03/03: Processos e memória
Processos e multiprogramação: uma visão geral sobre programas, processos, ciclos de um processo, multiprogramação e escalonamento. Ver apostila do prof. Odilson, capítulo 3, e capítulo 5 do Guia Foca Linux Iniciante.
Gerência de memória: visão geral sobre o uso de memória no sistema operacional e pelos processos Uso do laboratório para ilustrar conceitos.
- Continuação do roteiro da aula de 26/02.
- Programas usados para investigar o escalonamento de processos
- fominha: tenta usar todo o tempo de processador disponível
- crash: cria processos indefinidamente
- lento: processo que trabalha pouco, ficando a maior parte do tempo ocioso
Vários utilitários (programas auxiliares) existem para obter informações do sistema operacional sobre processos e memória. Alguns trabalham em modo texto, como:
- ps: lista os processos existentes
- pstree: lista os processos existentes mas de forma hierárquica
- top: lista os processos mais ativos, junto com informações globais sobre uso dos recursos no sistema operacional (memória, processador, memória virtual, quantidade de processos, carga de trabalho)
- atop: o mesmo que top, mas com maior detalhamento do uso de recursos mantidos pelo sistema operacional
- mpstat: mostra estatísticas de uso do processador
- free: mostra o uso de memória
- vmstat: mostra o uso de memória, discos e processador no último intervalo de tempo.
Existem também utilitários no modo gráfico. Por exemplo, no Ubuntu há o "Monitor do sistema":
05/03: Sistemas de arquivos
Visão geral sobre sistemas de arquivos: definição de arquivo e diretório, formas de armazenamento em media (discos, DVD, ...), segurança (controle de acesso). Uso do laboratório para ilustrar conceitos.
Houve aula somente até 14:00 h, quando a turma foi encaminhada ao auditório para assistir às apresentações dos pré-projetos do Tecnólogo.
10/03: Uso do shell no Linux
Comandos básicos: processos e arquivos. Conceituação de usuários e grupos.
02/03: Uso do shell no Linux
Comandos básicos: arquivos e diretórios. Cópia, renomeação, remoção, mudança de atributos, localização.
17/03: Uso do shell no Linux
Comandos básicos: arquivos e diretórios. Redirecionamentos, pipes, compactação.
19/03: Uso do shell no Linux
Comandos básicos: arquivos e diretórios. Edição de texto, busca por padrão.
24/03: Avaliação
Avaliação teórica e prática
Lógica de Programação
26/03: Introdução
31/03: Algoritmos
Ciclo de desenvolvimento. Pseudo-código e diagramas de blocos.