Sistemas Operacionais e Introdução a Programação

De MediaWiki do Campus São José
Revisão de 22h59min de 18 de setembro de 2006 por Moecke (discussão | contribs)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

CÓDIGO DA UNIDADE CURRICULAR - SOP3601
CARGA HORÁRIA: 4 horas/semana = 60 horas.
PRÉ REQUISITOS: , , ,

Competências

  • Compreender as abstrações de um sistema operacional e operar um sistema operacional Unix/Linux como usuário avançado.
  • Desenvolver pequenos programas em linguagem de alto nível, acessando a Interface de Programação de Aplicações (API) do sistema operacional.

Habilidades

Bases Tecnológicas

  • Parte I - Sistemas Operacionais
    • Arquitetura simplificada de um computador.
    • Conceito de sistema operacional.
    • Sistema operacional Unix/Linux: Interpretador de comandos. Processos e arquivos. Estrutura de sistema de arquivos. Comandos básicos em terminal para manipulação de processos e arquivos. Editor vi. Conceito de superusuário e de contas de usuário. Grupos. Atributos de Arquivos e Proteção.
    • Interfaces Gráficas. Aplicações de Escritório.
  • Parte II - Programação seqüencial em C
    • Ciclos de Desenvolvimento de Software.
    • Projeto de algoritmos usando pseudo-código e fluxograma.
    • Variáveis, Constantes e Expressões. Estruturas de Controle de Fluxo. Matrizes e Ponteiros. Funções. Entradas e Saídas. Diretivas de Compilação. Estruturas de Dados e Alocação Dinâmica de Memória. Tipos e Atributos Especiais.
    • Uso de editor de texto (emacs) e depurador (gdb).
    • Gerenciador de projetos (make).
  • Parte III - Acesso a API do sistema operacional
    • Conceito de API. Exemplo de fork e exec e outros exemplos.

Referências Bibliográficas

  • C: a linguagem de programação - padrão ANSI Brian W. Kernighan & Dennis N. Ritchie 15 Campus
  • Advanced Linux Programming Mark Mitchell, Alex Samuel & Jeffrey Oldhan On-line New Riders
  • Sistemas Operacionais Modernos (1) Tanenbaum, Andrew S. 2 Makron Books 2003
  • Curso de Introdução ao Linux. Marco ALVAREZ e outros. UFMS
  • An Introduction to C on Unix Programming. Paul SWANG.
  • Advanced Bash-scripting Guide. Mendel COOPER. On-line
  • Applications Programming in ANSI C. Richard JOHNSONBAUGH & Martin KALIN.
  • Apostila de Programação em Bourne-Again Shell. MELEU.

Histórico

  • 2004-2 - [[]]
Unidade Curricular do Curso Superior de Tecnologia em Redes Multimídia e Telefonia