Return to Class Materials

Sistemas Operacionais II

Slides e Vídeos

TópicoSlidesVídeos
01 – Linux – IntroduçãoPDFYoutube
02 – Linux – Técnicas BásicasPDFYoutube
03 – Linux – Técnicas Básicas – Parte 2PDFYoutube
04 – Linux – ProcessosPDFYoutube
05 – Linux – Implementando um Mini Processador de ComandosPDF 
06 – Linux – ThreadsPDFYoutube
07 – Linux – Threads – Parte 2PDFYoutube
08 – Linux – Comunicação Entre ProcessosPDFYoutube
09 – Linux – Comunicação entre Processos – Parte 2PDFYoutube
11 – Linux – DispositivosPDFYoutube
13 – Linux – O Sistema de Arquivos /procPDFYoutube
14 – Linux – Chamadas de Sistema do LinuxPDFYoutube

Vídeos

Aula 01 – Linux: Introdução

  • Histórico do UNIX e do Linux
  • Desenvolvimento do Linux e Comunidade
  • Distribuições do Linux
  • Buscando informações sobre o Linux
  • Programas Utilitários
  • Interpretador de Comandos (Shell)
  • Editores de Texto
  • Compiladores (GCC)
  • Programa da Disciplina
  • Método de Avaliação

Aula 02 – Linux: Técnicas Básicas – Interação com o Ambiente de Execução

  • Interação com o Ambiente de Execução
  • Lista de Argumentos
  • Convenções de Linha de Comando
  • Uso do getopt_long
  • Fluxos de Entrada/Saída Padrão
  • Código de Saída de Programas
  • Ambiente
  • Arquivos Temporários

Aula 03 – Linux: Técnicas Básicas – Parte 2

Programação Defensiva:

  • A Macro assert
  • Falhas em Chamadas de Sistema
  • Códigos de Erros em Chamadas de Sistema
  • Erros e Alocação de Recursos

Escrevendo e Usando Bibliotecas:

  • Arquivos (Bibliotecas Estáticas)
  • Bibliotecas Compartilhadas
  • Bibliotecas Padrões
  • Dependências entre Bibliotecas
  • Vantagens e Desvantagens
  • Carga e Descarga Dinâmica

Aula 04 – Linux: Processos

  • Noções Básicas
  • Componentes de um Processo
  • Criação de Processos
  • PIDs: Identificadores de Processos
  • Ciclo de Vida de um Processo
  • Estados de Processos
  • Organização de Processos
  • Monitoramento de Processos
  • Comando system
  • Comandos fork e exec
  • Família exec
  • Escalonamento de Processos
  • Prioridade de Processos
  • nice e renice
  • Sinais de Processos
  • Encerramento de Processos
  • Comando kill
  • Esperando um Processo Terminar
  • Chamadas de Sistema wait
  • Processos Zumbis
  • Limpeza Assíncrona de Processos Filhos

Aula 06 – Linux: Threads – Parte 1

  • Semelhanças e Diferenças entre Threads e Processos
  • Pthreads: API de threads padrão POSIX
  • Criação de Threads
  • Saindo de Threads
  • Passando dados para Threads
  • Juntando Threads
  • Valor de Retorno de Threads
  • Threads IDs
  • Atributos de Threads
  • Cancelamento de Threads
  • Threads síncronas e assíncronas
  • Seções Críticas Não Canceláveis
  • Dados Específicos de Thread
  • Manipuladores de Limpeza

Aula 07 – Linux: Threads – Parte 2

  • Sincronização e Seções Críticas
  • Condições de Corrida
  • Mutexes
  • Deadlocks
  • Teste de mutex não bloqueante
  • Semáforos
  • Variáveis de Condição
  • Implementação de Threads no Linux
  • Processos versus Threads

Aula 08 – Linux: Comunicação Entre Processos – Parte 1

  • Introdução à Comunicação entre Processos
  • Memória Compartilhada
  • Semáforos de Processos
  • Memória Mapeada

Aula 09 – Linux: Comunicação Entre Processos – Parte 2

  • Pipes
  • FIFOs
  • Sockets

Aula 12 – Linux: Dispositivos

  • Tipos de Dispositivos
  • Números de Dispositivos
  • Entradas de Dispositivos
  • Dispositivos de Hardware
  • Dispositivos Especiais
  • PTYs
  • ioctl

Aula 13 – Linux: O Sistema de Arquivos /proc

  • Extraindo Informação de /proc
  • Entradas de Processo
  • Informações de Hardware
  • Informações de Núcleo
  • Drives, Montagens, e Sistemas de Arquivos
  • Estatísticas do Sistema

Aula 14 – Linux: Chamadas de Sistema do Linux

  • strace – depurar chamadas de sistema
  • access – teste de permissão de arquivos
  • fcntl – travas e outras operações com arquivos
  • fsync e fdatasync – descarga de buffers de disco
  • getrlimit e setrlimit – limites de recursos
  • getrusage – estatísticas de processos
  • gettimeofday – hora do relógio

Permanent link to this article: https://www.fabriciobreve.com/class-materials/sistemas-operacionais-ii/