SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
$whoami
Marido
Pai de um jovem universitário e 10 gatos
• Ok, 12 cães também...
Apaixonado por programação (desde os ≈12) e felinos desde sempre
Cinéfilo
Bacharel em Informática (Unioeste, 1999)
Mestre em Ciência da Computação (UFSC, 2002)
Doutor em Ciência da Computação UFPR/Université de Rouen (2018)
Professor na UTFPR-TD (desde 2009)
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
GNU is Not Unix
Iniciado em 1984 por Richard M.
Stallman
Objetivava criar um sistema
operacional, compatível com o
UNIX, que fosse totalmente livre
• Vários programadores se juntaram a
causa e passaram a desenvolver as
partes principais do SO, como o
compilador C, editores de texto, etc.
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Em 1985, Stallman fundou a Free Software
Foundation (FSF), uma organização sem fins
lucrativos
visa divulgar o movimento SL
dar amparo legal, trabalhando nas licenças e
documentação
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Final dos anos 1980, muito
do SO GNU estava pronto, com
exceção do kernel, o GNU Hurd
Em 1991, o universitário Linus
Torvalds usa as ferramentas
GNU para criar o kernel Linux
Nasce um SO completo, o
GNU/Linux
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Sim, Linux é um kernel!
criado por Torvalds, então estudante de
computação na Universidade de Helsinki, 1991
Foi baseado no Minix (1987), de Tanenbaum
• Clone do Unix para PCs, fins didáticos
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Torvalds inicialmente escreveu o Linux
(kernel), em C e Assembly, como um clone do
Minix
Motivação: “a better Minix then Minix”!
• Maior número de recursos
• Aplicações comerciais
Atualmente o desenvolvimento é apoiado por
pessoas do mundo inteiro → patches
• Tovarlds é quem decide (decidia?) o que vai para o
kernel
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Software Livre (SL) ou Free Software se
refere à liberdade dos usuários executarem,
copiarem, distribuirem, estudarem, modificarem
e aperfeiçoarem o software
SL é uma questão de liberdade, não de preço
pensar em "liberdade de expressão", não em
"cerveja grátis"!
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Distribuir software em Domínio Público, sem copyright, não
garante liberdade!
Intermediários não-cooperativos podem tornar o software não-livre
(proprietário)
O Projeto GNU encoraja o uso do copyleft
copyleft diz que qualquer um que distribui o software, com ou sem
modificações, tem que passar adiante a liberdade de copiar e
modificar novamente o programa
copyleft garante que todos os usuários tenham liberdade
Licença Pública Genérica do GNU (GPL)
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Utilitários
Executados fora do kernel
Implementam tarefas básicas
Confundidos com o SO
Compiladores (compilers), montadores
(assemblers), ligadores (linkers), etc.
• GCC, emacs, gdb, make, etc.
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Interpreador de Comandos (shell)
Ativado sempre que o SO inicia uma sessão de
trabalho
Texto
• Bash, tsch, sh, etc.
GUI (Graphical User Interface)
• Família M$-Windows, MacOS, etc.
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Bash é uma shell Unix e
linguagem de comando criada
por Brian Fox (1989) para o GNU
Bourne-Again Shell → substituição
GNU da Bourne Shell do Unix
• Processador de comandos que roda
em modo texto → CLI
https://www.gnu.org/software/bash/
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Bash script: Várias instruções bash em um
arquivo de texto puro
por convenção extensão .sh
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Em Linux (Unix-like) tudo é considerado arquivo
Se não for arquivo, então é processo!
Tipos
Regular (-): texto, imagem, executável, etc.
Diretório (d): lista de outros arquivos, incluindo diretórios
Especial (b, c, p, s) : mecanismos de E/S, ligados a
dispositivos, interface com o usuário, sockets, etc.
Link (l): arquivos ligados a outros arquivos
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Todos os arquivos e diretórios estão sob a raiz (/)
No Linux, os diretórios estão organizados segundo a
Filesystem Hierarchy Standard (FHS)
Especificação da Linux Foundation
• Última versão 3.0 (2015)
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
FHS
/ - raiz (root). Diretório principal
/bin - Arquivos executáveis (binários) de
comandos essenciais do sistema usados com
frequência
/boot - Arquivos estáticos de boot (boot-loader)
/dev - Arquivos de dispositivos de E/S
/etc - Configuração do sistema da máquina local
com arquivos diversos para a administração de
sistema
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
/home - Diretórios locais dos usuários
/lib - Arquivos das bibliotecas compartilhadas
usados com frequência
/mnt - Ponto de montagem de sistema de
arquivos temporários usados pelo administrador do
sistema
/media – Ponto de montagem para mídias
removíveis (aparecem automaticamente no
ambiente gráfico)
/root - Diretório local do superusuário (root)
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
/sbin - Arquivos de sistema essenciais que só
podem ser acessados pelo root
/tmp - Arquivos temporários gerados por alguns
utilitários
/usr - Arquivos de programas de usuários
(segunda maior hierarquia)
/var - Informação variável (cache, logs, dados
temporários, …)
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Emulador de terminal
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
No terminal
FD 0 entrada padrão, associada com o teclado
FD 1 saída padrão, vídeo
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ
Alguns diagramas usados aqui foram
extraídos do formidável projeto
https://guide.bash.academy
UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ

Mais conteúdo relacionado

Mais procurados

Ficha de trabalho so 1 m4 resolução
Ficha de trabalho so 1 m4  resoluçãoFicha de trabalho so 1 m4  resolução
Ficha de trabalho so 1 m4 resoluçãofilipereira
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linuxRogério Cardoso
 
Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)
Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)
Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)Clayton Dausacker
 
03 Sistemas Operacionais Linux
03   Sistemas Operacionais Linux03   Sistemas Operacionais Linux
03 Sistemas Operacionais LinuxMauro Duarte
 
Software livre, simples assim.
Software livre, simples assim.Software livre, simples assim.
Software livre, simples assim.guilhermemar
 
Linux Como Tudo Começou
Linux Como Tudo ComeçouLinux Como Tudo Começou
Linux Como Tudo Começouguestaa94fe
 
Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01Ivaldo Cardoso
 
História do linux ppt
História do linux pptHistória do linux ppt
História do linux pptshade09
 
Linux - Sistema Operacional
Linux - Sistema Operacional Linux - Sistema Operacional
Linux - Sistema Operacional Carine Furlanetto
 
O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?Rodnei Reis
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo Linuxfilipereira
 
Sistema operativo linux e as suas versões
Sistema operativo linux e as suas versõesSistema operativo linux e as suas versões
Sistema operativo linux e as suas versõesxandernat82
 

Mais procurados (20)

Ficha de trabalho so 1 m4 resolução
Ficha de trabalho so 1 m4  resoluçãoFicha de trabalho so 1 m4  resolução
Ficha de trabalho so 1 m4 resolução
 
Aula 1 sistema operacional linux
Aula 1 sistema operacional linuxAula 1 sistema operacional linux
Aula 1 sistema operacional linux
 
Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)
Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)
Palestra Trisquel GNU/Linux: Uma Distribuição GNU 100% Livre (FISL18)
 
O que é Linux
O que é LinuxO que é Linux
O que é Linux
 
03 Sistemas Operacionais Linux
03   Sistemas Operacionais Linux03   Sistemas Operacionais Linux
03 Sistemas Operacionais Linux
 
Trabalho linux
Trabalho linuxTrabalho linux
Trabalho linux
 
1 - Introdução ao linux
1 - Introdução ao linux1 - Introdução ao linux
1 - Introdução ao linux
 
Software livre, simples assim.
Software livre, simples assim.Software livre, simples assim.
Software livre, simples assim.
 
Linux Como Tudo Começou
Linux Como Tudo ComeçouLinux Como Tudo Começou
Linux Como Tudo Começou
 
Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01Introdução ao Linux - Aula 01
Introdução ao Linux - Aula 01
 
Conhecendo Melhor O Linux
Conhecendo Melhor O LinuxConhecendo Melhor O Linux
Conhecendo Melhor O Linux
 
História do linux ppt
História do linux pptHistória do linux ppt
História do linux ppt
 
Linux - Sistema Operacional
Linux - Sistema Operacional Linux - Sistema Operacional
Linux - Sistema Operacional
 
Introdução Linux
Introdução LinuxIntrodução Linux
Introdução Linux
 
Linux basico ubuntu
Linux basico ubuntuLinux basico ubuntu
Linux basico ubuntu
 
O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?O que é o Linux? Quais seus benefícios?
O que é o Linux? Quais seus benefícios?
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo Linux
 
Obtendo ajuda no Linux
Obtendo ajuda no LinuxObtendo ajuda no Linux
Obtendo ajuda no Linux
 
Linux Educacional 4.0
Linux Educacional 4.0Linux Educacional 4.0
Linux Educacional 4.0
 
Sistema operativo linux e as suas versões
Sistema operativo linux e as suas versõesSistema operativo linux e as suas versões
Sistema operativo linux e as suas versões
 

Semelhante a História do GNU e Linux

Fascículo Sistema Operacional Linux
Fascículo Sistema Operacional LinuxFascículo Sistema Operacional Linux
Fascículo Sistema Operacional LinuxEduardo Santana
 
Sofware Livre e Comunidade PotiLivre SETIC IFRN-SGA
Sofware Livre e Comunidade PotiLivre SETIC IFRN-SGASofware Livre e Comunidade PotiLivre SETIC IFRN-SGA
Sofware Livre e Comunidade PotiLivre SETIC IFRN-SGAPotiLivre Sobrenome
 
Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03luizaselis
 
Linux, Software Livre e tudo mais
Linux, Software Livre e tudo maisLinux, Software Livre e tudo mais
Linux, Software Livre e tudo maisguilhermemar
 
Introdução ao Software Livre
Introdução ao Software LivreIntrodução ao Software Livre
Introdução ao Software LivrePeslPinguim
 
Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)
Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)
Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)Clayton Dausacker
 
Oficinalinux Comotudo Começou
Oficinalinux Comotudo ComeçouOficinalinux Comotudo Começou
Oficinalinux Comotudo Começouguest96251d
 
Curso de Introdução ao Software Livre - Aula de 23/09/2009
Curso de Introdução ao Software Livre - Aula de 23/09/2009Curso de Introdução ao Software Livre - Aula de 23/09/2009
Curso de Introdução ao Software Livre - Aula de 23/09/2009Antônio Arapiraca
 
Pré-aquecimento Ubuntu Linux
Pré-aquecimento Ubuntu LinuxPré-aquecimento Ubuntu Linux
Pré-aquecimento Ubuntu LinuxFreedom DayMS
 
Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009Antônio Arapiraca
 
Apresentação1 hy.pptx
Apresentação1 hy.pptxApresentação1 hy.pptx
Apresentação1 hy.pptxCidrone
 

Semelhante a História do GNU e Linux (20)

Modulo+4
Modulo+4Modulo+4
Modulo+4
 
Inf sis opeinf_semana6
Inf sis opeinf_semana6Inf sis opeinf_semana6
Inf sis opeinf_semana6
 
Fascículo Sistema Operacional Linux
Fascículo Sistema Operacional LinuxFascículo Sistema Operacional Linux
Fascículo Sistema Operacional Linux
 
Sofware Livre e Comunidade PotiLivre SETIC IFRN-SGA
Sofware Livre e Comunidade PotiLivre SETIC IFRN-SGASofware Livre e Comunidade PotiLivre SETIC IFRN-SGA
Sofware Livre e Comunidade PotiLivre SETIC IFRN-SGA
 
Linux
LinuxLinux
Linux
 
Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03Slides de introdução oficina linux 2011_nte 03
Slides de introdução oficina linux 2011_nte 03
 
Linux, Software Livre e tudo mais
Linux, Software Livre e tudo maisLinux, Software Livre e tudo mais
Linux, Software Livre e tudo mais
 
Sistema operacional-1-ano-de-informatica-completa
Sistema operacional-1-ano-de-informatica-completaSistema operacional-1-ano-de-informatica-completa
Sistema operacional-1-ano-de-informatica-completa
 
Introdução ao Software Livre
Introdução ao Software LivreIntrodução ao Software Livre
Introdução ao Software Livre
 
Linux
LinuxLinux
Linux
 
Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)
Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)
Palestra Trisquel GNU/Linux: Uma Distribuição 100% Livre (FLISOL 2016)
 
Oficinalinux Comotudo Começou
Oficinalinux Comotudo ComeçouOficinalinux Comotudo Começou
Oficinalinux Comotudo Começou
 
A.S.O 2 - Linux
A.S.O 2 - LinuxA.S.O 2 - Linux
A.S.O 2 - Linux
 
Módulo 6 - Gnu/Linux
Módulo 6 - Gnu/LinuxMódulo 6 - Gnu/Linux
Módulo 6 - Gnu/Linux
 
Curso de Introdução ao Software Livre - Aula de 23/09/2009
Curso de Introdução ao Software Livre - Aula de 23/09/2009Curso de Introdução ao Software Livre - Aula de 23/09/2009
Curso de Introdução ao Software Livre - Aula de 23/09/2009
 
Pré-aquecimento Ubuntu Linux
Pré-aquecimento Ubuntu LinuxPré-aquecimento Ubuntu Linux
Pré-aquecimento Ubuntu Linux
 
Apresentação Software Livre
Apresentação Software LivreApresentação Software Livre
Apresentação Software Livre
 
Aula 08
Aula 08Aula 08
Aula 08
 
Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009
 
Apresentação1 hy.pptx
Apresentação1 hy.pptxApresentação1 hy.pptx
Apresentação1 hy.pptx
 

Mais de Fabio Spanhol

Classificação Automatizada de Câncer de Mama - Imagens Histopatológicas
Classificação Automatizada de Câncer de Mama - Imagens HistopatológicasClassificação Automatizada de Câncer de Mama - Imagens Histopatológicas
Classificação Automatizada de Câncer de Mama - Imagens HistopatológicasFabio Spanhol
 
Python Training #0.5 ed. 7
Python Training #0.5 ed. 7Python Training #0.5 ed. 7
Python Training #0.5 ed. 7Fabio Spanhol
 
Aprendizado Profundo & CNNs
Aprendizado Profundo & CNNsAprendizado Profundo & CNNs
Aprendizado Profundo & CNNsFabio Spanhol
 
Python Training #1 ed.6
Python Training #1 ed.6 Python Training #1 ed.6
Python Training #1 ed.6 Fabio Spanhol
 
Python Training #1, ed. 6
Python Training #1, ed. 6Python Training #1, ed. 6
Python Training #1, ed. 6Fabio Spanhol
 
Python Training #1 - ed5
Python Training #1 - ed5Python Training #1 - ed5
Python Training #1 - ed5Fabio Spanhol
 
Linguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos IntrodutóriosLinguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos IntrodutóriosFabio Spanhol
 
Mostrando a Cobra - Breve Introdução à Linguagem Python
Mostrando a Cobra - Breve Introdução à Linguagem Python Mostrando a Cobra - Breve Introdução à Linguagem Python
Mostrando a Cobra - Breve Introdução à Linguagem Python Fabio Spanhol
 
Python Training #1 - ed4
Python Training #1 - ed4Python Training #1 - ed4
Python Training #1 - ed4Fabio Spanhol
 
ENEM - Exame Nacional do Ensino Médio
ENEM - Exame Nacional do Ensino MédioENEM - Exame Nacional do Ensino Médio
ENEM - Exame Nacional do Ensino MédioFabio Spanhol
 
Paradigmas de Linguagens de Programação
Paradigmas de Linguagens de ProgramaçãoParadigmas de Linguagens de Programação
Paradigmas de Linguagens de ProgramaçãoFabio Spanhol
 
Elaboração e Gerenciamento de Projetos
Elaboração e Gerenciamento de Projetos Elaboração e Gerenciamento de Projetos
Elaboração e Gerenciamento de Projetos Fabio Spanhol
 
XML-RPC: Tópicos Introdutórios
XML-RPC: Tópicos IntrodutóriosXML-RPC: Tópicos Introdutórios
XML-RPC: Tópicos IntrodutóriosFabio Spanhol
 
Tutorial Python ed. #2
Tutorial Python ed. #2Tutorial Python ed. #2
Tutorial Python ed. #2Fabio Spanhol
 
Gestão de Projetos com MS-Project 2010
Gestão de Projetos com MS-Project 2010Gestão de Projetos com MS-Project 2010
Gestão de Projetos com MS-Project 2010Fabio Spanhol
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialFabio Spanhol
 
E essa tal Virtualização?
E essa tal Virtualização?E essa tal Virtualização?
E essa tal Virtualização?Fabio Spanhol
 
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem PythonFabio Spanhol
 

Mais de Fabio Spanhol (20)

Classificação Automatizada de Câncer de Mama - Imagens Histopatológicas
Classificação Automatizada de Câncer de Mama - Imagens HistopatológicasClassificação Automatizada de Câncer de Mama - Imagens Histopatológicas
Classificação Automatizada de Câncer de Mama - Imagens Histopatológicas
 
Python Training #0.5 ed. 7
Python Training #0.5 ed. 7Python Training #0.5 ed. 7
Python Training #0.5 ed. 7
 
Aprendizado Profundo & CNNs
Aprendizado Profundo & CNNsAprendizado Profundo & CNNs
Aprendizado Profundo & CNNs
 
Python Training #1 ed.6
Python Training #1 ed.6 Python Training #1 ed.6
Python Training #1 ed.6
 
Python Training #1, ed. 6
Python Training #1, ed. 6Python Training #1, ed. 6
Python Training #1, ed. 6
 
Python Training #1 - ed5
Python Training #1 - ed5Python Training #1 - ed5
Python Training #1 - ed5
 
Linguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos IntrodutóriosLinguagem C 01 - Tópicos Introdutórios
Linguagem C 01 - Tópicos Introdutórios
 
Mostrando a Cobra - Breve Introdução à Linguagem Python
Mostrando a Cobra - Breve Introdução à Linguagem Python Mostrando a Cobra - Breve Introdução à Linguagem Python
Mostrando a Cobra - Breve Introdução à Linguagem Python
 
Python Training #1 - ed4
Python Training #1 - ed4Python Training #1 - ed4
Python Training #1 - ed4
 
Python tutorial-ed3
Python tutorial-ed3Python tutorial-ed3
Python tutorial-ed3
 
ENEM - Exame Nacional do Ensino Médio
ENEM - Exame Nacional do Ensino MédioENEM - Exame Nacional do Ensino Médio
ENEM - Exame Nacional do Ensino Médio
 
Paradigmas de Linguagens de Programação
Paradigmas de Linguagens de ProgramaçãoParadigmas de Linguagens de Programação
Paradigmas de Linguagens de Programação
 
Elaboração e Gerenciamento de Projetos
Elaboração e Gerenciamento de Projetos Elaboração e Gerenciamento de Projetos
Elaboração e Gerenciamento de Projetos
 
XML-RPC: Tópicos Introdutórios
XML-RPC: Tópicos IntrodutóriosXML-RPC: Tópicos Introdutórios
XML-RPC: Tópicos Introdutórios
 
Tutorial Python ed. #2
Tutorial Python ed. #2Tutorial Python ed. #2
Tutorial Python ed. #2
 
Gestão de Projetos com MS-Project 2010
Gestão de Projetos com MS-Project 2010Gestão de Projetos com MS-Project 2010
Gestão de Projetos com MS-Project 2010
 
Computação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo TutorialComputação Científica com SciPy - Brevíssimo Tutorial
Computação Científica com SciPy - Brevíssimo Tutorial
 
Tutorial Python - 1
Tutorial Python - 1Tutorial Python - 1
Tutorial Python - 1
 
E essa tal Virtualização?
E essa tal Virtualização?E essa tal Virtualização?
E essa tal Virtualização?
 
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
 

História do GNU e Linux

  • 2. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ $whoami Marido Pai de um jovem universitário e 10 gatos • Ok, 12 cães também... Apaixonado por programação (desde os ≈12) e felinos desde sempre Cinéfilo Bacharel em Informática (Unioeste, 1999) Mestre em Ciência da Computação (UFSC, 2002) Doutor em Ciência da Computação UFPR/Université de Rouen (2018) Professor na UTFPR-TD (desde 2009)
  • 3. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ GNU is Not Unix Iniciado em 1984 por Richard M. Stallman Objetivava criar um sistema operacional, compatível com o UNIX, que fosse totalmente livre • Vários programadores se juntaram a causa e passaram a desenvolver as partes principais do SO, como o compilador C, editores de texto, etc.
  • 5. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Em 1985, Stallman fundou a Free Software Foundation (FSF), uma organização sem fins lucrativos visa divulgar o movimento SL dar amparo legal, trabalhando nas licenças e documentação
  • 7. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Final dos anos 1980, muito do SO GNU estava pronto, com exceção do kernel, o GNU Hurd Em 1991, o universitário Linus Torvalds usa as ferramentas GNU para criar o kernel Linux Nasce um SO completo, o GNU/Linux
  • 8. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Sim, Linux é um kernel! criado por Torvalds, então estudante de computação na Universidade de Helsinki, 1991 Foi baseado no Minix (1987), de Tanenbaum • Clone do Unix para PCs, fins didáticos
  • 9. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Torvalds inicialmente escreveu o Linux (kernel), em C e Assembly, como um clone do Minix Motivação: “a better Minix then Minix”! • Maior número de recursos • Aplicações comerciais Atualmente o desenvolvimento é apoiado por pessoas do mundo inteiro → patches • Tovarlds é quem decide (decidia?) o que vai para o kernel
  • 10. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Software Livre (SL) ou Free Software se refere à liberdade dos usuários executarem, copiarem, distribuirem, estudarem, modificarem e aperfeiçoarem o software SL é uma questão de liberdade, não de preço pensar em "liberdade de expressão", não em "cerveja grátis"!
  • 11. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Distribuir software em Domínio Público, sem copyright, não garante liberdade! Intermediários não-cooperativos podem tornar o software não-livre (proprietário) O Projeto GNU encoraja o uso do copyleft copyleft diz que qualquer um que distribui o software, com ou sem modificações, tem que passar adiante a liberdade de copiar e modificar novamente o programa copyleft garante que todos os usuários tenham liberdade Licença Pública Genérica do GNU (GPL)
  • 14. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Utilitários Executados fora do kernel Implementam tarefas básicas Confundidos com o SO Compiladores (compilers), montadores (assemblers), ligadores (linkers), etc. • GCC, emacs, gdb, make, etc.
  • 15. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Interpreador de Comandos (shell) Ativado sempre que o SO inicia uma sessão de trabalho Texto • Bash, tsch, sh, etc. GUI (Graphical User Interface) • Família M$-Windows, MacOS, etc.
  • 16. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Bash é uma shell Unix e linguagem de comando criada por Brian Fox (1989) para o GNU Bourne-Again Shell → substituição GNU da Bourne Shell do Unix • Processador de comandos que roda em modo texto → CLI https://www.gnu.org/software/bash/
  • 17. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Bash script: Várias instruções bash em um arquivo de texto puro por convenção extensão .sh
  • 19. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Em Linux (Unix-like) tudo é considerado arquivo Se não for arquivo, então é processo! Tipos Regular (-): texto, imagem, executável, etc. Diretório (d): lista de outros arquivos, incluindo diretórios Especial (b, c, p, s) : mecanismos de E/S, ligados a dispositivos, interface com o usuário, sockets, etc. Link (l): arquivos ligados a outros arquivos
  • 20. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Todos os arquivos e diretórios estão sob a raiz (/) No Linux, os diretórios estão organizados segundo a Filesystem Hierarchy Standard (FHS) Especificação da Linux Foundation • Última versão 3.0 (2015)
  • 21. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ FHS / - raiz (root). Diretório principal /bin - Arquivos executáveis (binários) de comandos essenciais do sistema usados com frequência /boot - Arquivos estáticos de boot (boot-loader) /dev - Arquivos de dispositivos de E/S /etc - Configuração do sistema da máquina local com arquivos diversos para a administração de sistema
  • 22. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ /home - Diretórios locais dos usuários /lib - Arquivos das bibliotecas compartilhadas usados com frequência /mnt - Ponto de montagem de sistema de arquivos temporários usados pelo administrador do sistema /media – Ponto de montagem para mídias removíveis (aparecem automaticamente no ambiente gráfico) /root - Diretório local do superusuário (root)
  • 23. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ /sbin - Arquivos de sistema essenciais que só podem ser acessados pelo root /tmp - Arquivos temporários gerados por alguns utilitários /usr - Arquivos de programas de usuários (segunda maior hierarquia) /var - Informação variável (cache, logs, dados temporários, …)
  • 26. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Emulador de terminal
  • 27. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ No terminal FD 0 entrada padrão, associada com o teclado FD 1 saída padrão, vídeo
  • 29. UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Alguns diagramas usados aqui foram extraídos do formidável projeto https://guide.bash.academy