Mudanças entre as edições de "SOP-2010-1-sobral"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 83: Linha 83:
 
Uso do laboratório para ilustrar conceitos.
 
Uso do laboratório para ilustrar conceitos.
  
Continuação do roteiro da aula de 26/02.
+
* Continuação do [http://www.sj.ifsc.edu.br/~msobral/SOP/roteiros/aula2.pdf roteiro da aula de 26/02].
 +
* [http://www.sj.ifsc.edu.br/~msobral/SOP/roteiros/lab2 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:
 +
 
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/ps.1.html ps]:''' lista os processos existentes
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/pstree.1.html pstree]:''' lista os processos existentes mas de forma hierárquica
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/top.1.html 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)
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/atop.1.html atop]:''' o mesmo que '''top''', mas com maior detalhamento do uso de recursos mantidos pelo sistema operacional
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/mpstat.1.html mpstat]:''' mostra estatísticas  de uso do processador
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/free.1.html free]]:''' mostra o uso de memória
 +
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man8/vmstat.8.html 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":
 +
 
 +
[[Imagem:Monitor1.png|600px|center]]
 +
<center>''Para executar o Monitor do Sistema</center><br><br>
 +
 
 +
 
 +
[[Imagem:Monitor2.png|400px]] [[Imagem:Monitor3.png|400px]]
 +
<center>''Telas do monitor do Sistema</center>
  
 
== 05/03: Sistemas de arquivos ==
 
== 05/03: Sistemas de arquivos ==

Edição das 10h46min de 3 de março de 2010

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:

  1. Trazer um CD-R virgem para que eu faça a cópia aqui no IFSC
  2. Fazer o download por conta própria (aprox. 700 MB)
  3. 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

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:


Alguns textos interessantes sobre história dos sistemas operacionais:

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.

Objetivos:

  1. Conhecer o sistema operacional Linux
  2. Usar a interface de linha de comando (shell)
  3. Usar comandos básicos para visualização e manipulação de processos
  4. Usar comandos básicos para manipulação de arquivos e diretórios
  5. Conhecer a estrutura de diretórios do Linux

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. 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.

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":

Monitor1.png
Para executar o Monitor do Sistema




Monitor2.png Monitor3.png

Telas do 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.

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.

02/04: Algoritmos