Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Linux Conceitos Design

543 views

Published on

Published in: Technology, News & Politics
  • Be the first to comment

  • Be the first to like this

Linux Conceitos Design

  1. 1. Linux <ul><li>Miguel Filipe </li></ul>Filosofia, Conceitos e Arquitecura
  2. 2. Sumário <ul><li>O que é o Linux
  3. 3. Filosofia UNIX
  4. 4. Conceitos base
  5. 5. Arquitectura </li></ul>
  6. 6. O que é um Linux ? Linux é um Sistema Operativo UNIX É software Open Source Linux é apenas o kernel
  7. 7. O que é um SO UNIX? Criado em 1969 por Ken Thomson (e outros da Bell Labs) Multi Tarefa Multi Utilizador
  8. 8. Unix.. é Simples .. O nome parodiava o Multics , SO altamente sofisticado e complexo, desenhado por comité, que foi um fracasso. (No qual Thompson também esteve envolvido)
  9. 9. Filosofia UNIX É um conjunto de normas culturais e abordagens filosóficas para o desenvolvimento de software... Vamos simplificar um pouco, aconcelho verem definição do Eric Raymond na net.
  10. 10. REGRA #1 Escreve programas que façam apenas uma coisa mas que o façam bem feito.
  11. 11. REGRA #2 Escreve programas que trabalhem bem juntos.
  12. 12. REGRA #3 Escreve programas que manipulem streams de texto, pois esta é uma interface universal
  13. 13. Conceitos Chave
  14. 14. Utilizadores
  15. 15. Processos Ficheiros e
  16. 16. Utilizadores Root Nobody Um serviço – Um utilizador e.. os humanos
  17. 17. FICHEIROS Hierarquia de ficheiros Tipos de ficheiros
  18. 18. - tudo são ficheiros (todos são file descriptors ): - ficheiros de dados: configuraçao (/etc) programas (/bin, /sbin, /lib) dados..( /var, /tmp, ..) - &quot;block devices&quot; ( /dev ) Representam dispositivos cuja unidade atómica são ”blocos de dados” discos (/dev/sda) tapes flash storage ram discs - &quot;character devices&quot; ( /dev, nenhum, outros.. ) terminais/consolas virtuais (/dev/tty7, /dev/pts/..) - processos (/proc) - kernel/hardware ( /proc, /sys )
  19. 19. Processos Hierarquia Relação Pai-Filho Fork() Exec() Pipe() Variáveis de Ambiente ($PATH, ...) File descriptors /proc/pid/*
  20. 20. Arquitectura
  21. 21. Arquitectura KERNEL LIBC APLICAÇÕES
  22. 22. KERNEL MAPA DO KERNEL
  23. 23. APLICAÇÕES ”User facing” - client apps ”Server side” - daemon apps
  24. 24. Layout de Linux na Consola Kernel Init Shell Sistema de arranque: Lançamento de daemons (uids) Login manager User login -> shell (uid)
  25. 25. Layout de Linux ” Gráfico ” Linux de Consola + Xserver Login manager Window Manager Desktop Environment -> conjunto de aplicções que se completa e integram de forma uniforme e coerente

×