Slides e Vídeos
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
Recent Comments