• Nenhum resultado encontrado

Programação Estruturada

N/A
N/A
Protected

Academic year: 2021

Share "Programação Estruturada"

Copied!
147
0
0

Texto

(1)

Programa¸

ao Estruturada

Linux, linha de comando, compila¸c˜ao

Professores Em´ılio Francesquini e Carla Negri Lintzmayer 2018

(2)
(3)

Conceitos b´asicos

Sistema Operacional ´e um programa ou um conjunto de programas cuja fun¸c˜ao ´e gerenciar os recursos do sistema (definir qual programa recebe aten¸c˜ao do processador, gerenciar mem´oria, criar um sistema de arquivos, etc.), fornecendo uma interface entre o computador e o usu´ario. Exemplos:

Windows, Linux, Android, Max OS X, iOS, FreeBSD, etc.

Linguagem de Programa¸c˜ao ´e uma linguagem designada para comunicar instru¸c˜oes para um computador; um conjunto de regras sint´aticas e semˆanticas usadas para definir um programa de computador. Exemplos:

(4)

Conceitos b´asicos

Sistema Operacional ´e um programa ou um conjunto de programas cuja fun¸c˜ao ´e gerenciar os recursos do sistema (definir qual programa recebe aten¸c˜ao do processador, gerenciar mem´oria, criar um sistema de arquivos, etc.), fornecendo uma interface entre o computador e o usu´ario. Exemplos:

Windows, Linux, Android, Max OS X, iOS, FreeBSD, etc.

Linguagem de Programa¸c˜ao ´e uma linguagem designada para comunicar instru¸c˜oes para um computador; um conjunto de regras sint´aticas e semˆanticas usadas para definir um programa de computador. Exemplos: C, Java, Python, PHP, C++, Visual Basic, Python, MATLAB, etc.

(5)

Conceitos b´asicos

Sistema Operacional ´e um programa ou um conjunto de programas cuja fun¸c˜ao ´e gerenciar os recursos do sistema (definir qual programa recebe aten¸c˜ao do processador, gerenciar mem´oria, criar um sistema de arquivos, etc.), fornecendo uma interface entre o computador e o usu´ario. Exemplos:

Windows, Linux, Android, Max OS X, iOS, FreeBSD, etc.

Linguagem de Programa¸c˜ao ´e uma linguagem designada para comunicar instru¸c˜oes para um computador; um conjunto de regras sint´aticas e semˆanticas usadas para definir um programa de computador. Exemplos:

(6)

Conceitos b´asicos

Sistema Operacional ´e um programa ou um conjunto de programas cuja fun¸c˜ao ´e gerenciar os recursos do sistema (definir qual programa recebe aten¸c˜ao do processador, gerenciar mem´oria, criar um sistema de arquivos, etc.), fornecendo uma interface entre o computador e o usu´ario. Exemplos:

Windows, Linux, Android, Max OS X, iOS, FreeBSD, etc.

Linguagem de Programa¸c˜ao ´e uma linguagem designada para comunicar instru¸c˜oes para um computador; um conjunto de regras sint´aticas e semˆanticas usadas para definir um programa de computador. Exemplos: C, Java, Python, PHP, C++, Visual Basic, Python, MATLAB, etc.

(7)
(8)

Quem usa Linux?

• 494 dos 500 computadores mais r´apidos do mundo, segundo top500.org em novembro de 2015

• Os outros 6 usam Unix

• Android, Peugeot, Amazon, Novell, Google, IBM, Wikipedia, DreamWorks Animation, Union Bank da Calif´ornia, Banco do Brasil, Bolsa de Valores de Londres, Bolsa de Valores de Nova York, NASA, CERN, Internet Archive, Casa Branca,

Departamento de Defesa dos EUA, v´arios setores de governos de v´arios pa´ıses (por exemplo, Brasil, Alemanha, Espanha, Fran¸ca, China, R´ussia, ´Africa do Sul, Turquia, Venezuela, Cuba, Su´ı¸ca, ´India e Paquist˜ao), etc.

• Qualquer bom profissional de computa¸c˜ao

(9)

Quem usa Linux?

• 494 dos 500 computadores mais r´apidos do mundo, segundo top500.org em novembro de 2015

• Os outros 6 usam Unix

• Android, Peugeot, Amazon, Novell, Google, IBM, Wikipedia, DreamWorks Animation, Union Bank da Calif´ornia, Banco do Brasil, Bolsa de Valores de Londres, Bolsa de Valores de Nova York, NASA, CERN, Internet Archive, Casa Branca,

Departamento de Defesa dos EUA, v´arios setores de governos de v´arios pa´ıses (por exemplo, Brasil, Alemanha, Espanha, Fran¸ca, China, R´ussia, ´Africa do Sul, Turquia, Venezuela, Cuba, Su´ı¸ca, ´India e Paquist˜ao), etc.

(10)

Quem usa Linux?

• 494 dos 500 computadores mais r´apidos do mundo, segundo top500.org em novembro de 2015

• Os outros 6 usam Unix

• Android, Peugeot, Amazon, Novell, Google, IBM, Wikipedia, DreamWorks Animation, Union Bank da Calif´ornia, Banco do Brasil, Bolsa de Valores de Londres, Bolsa de Valores de Nova York, NASA, CERN, Internet Archive, Casa Branca,

Departamento de Defesa dos EUA, v´arios setores de governos de v´arios pa´ıses (por exemplo, Brasil, Alemanha, Espanha, Fran¸ca, China, R´ussia, ´Africa do Sul, Turquia, Venezuela, Cuba, Su´ı¸ca, ´India e Paquist˜ao), etc.

• Qualquer bom profissional de computa¸c˜ao

(11)

Quem usa Linux?

• 494 dos 500 computadores mais r´apidos do mundo, segundo top500.org em novembro de 2015

• Os outros 6 usam Unix

• Android, Peugeot, Amazon, Novell, Google, IBM, Wikipedia, DreamWorks Animation, Union Bank da Calif´ornia, Banco do Brasil, Bolsa de Valores de Londres, Bolsa de Valores de Nova York, NASA, CERN, Internet Archive, Casa Branca,

Departamento de Defesa dos EUA, v´arios setores de governos de v´arios pa´ıses (por exemplo, Brasil, Alemanha, Espanha, Fran¸ca, China, R´ussia, ´Africa do Sul, Turquia, Venezuela, Cuba, Su´ı¸ca, ´India e Paquist˜ao), etc.

(12)
(13)

Distribui¸c˜oes

• Comumente chamadas apenas de “distros” • Kernel Linux + conjunto vari´avel de softwares

• http://DistroWatch.com: 700+ vers˜oes de Linux, 200+ ativas

• Normalmente s˜ao n˜ao comerciais (download na Internet e solu¸c˜oes de problemas em listas de discuss˜ao), mas existem as comerciais (paga-se pelo sistema e tem-se suporte t´ecnico)

(14)

Distribui¸c˜oes

• Comumente chamadas apenas de “distros” • Kernel Linux + conjunto vari´avel de softwares

• http://DistroWatch.com: 700+ vers˜oes de Linux, 200+ ativas

• Normalmente s˜ao n˜ao comerciais (download na Internet e solu¸c˜oes de problemas em listas de discuss˜ao), mas existem as comerciais (paga-se pelo sistema e tem-se suporte t´ecnico)

(15)

Distribui¸c˜oes

• Comumente chamadas apenas de “distros” • Kernel Linux + conjunto vari´avel de softwares

• http://DistroWatch.com: 700+ vers˜oes de Linux, 200+ ativas

• Normalmente s˜ao n˜ao comerciais (download na Internet e solu¸c˜oes de problemas em listas de discuss˜ao), mas existem as comerciais (paga-se pelo sistema e tem-se suporte t´ecnico)

(16)

Distribui¸c˜oes

• Comumente chamadas apenas de “distros” • Kernel Linux + conjunto vari´avel de softwares

• http://DistroWatch.com: 700+ vers˜oes de Linux, 200+ ativas

• Normalmente s˜ao n˜ao comerciais (download na Internet e solu¸c˜oes de problemas em listas de discuss˜ao), mas existem as comerciais (paga-se pelo sistema e tem-se suporte t´ecnico)

(17)
(18)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

• Suporta mais arquiteturas de processadores do que qualquer outra

• Conservadora: novas arquiteturas n˜ao s˜ao inclu´ıdas t˜ao cedo 6

(19)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

(20)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

• Suporta mais arquiteturas de processadores do que qualquer outra

• Conservadora: novas arquiteturas n˜ao s˜ao inclu´ıdas t˜ao cedo 6

(21)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

(22)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

• Suporta mais arquiteturas de processadores do que qualquer outra

• Conservadora: novas arquiteturas n˜ao s˜ao inclu´ıdas t˜ao cedo 6

(23)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

(24)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

• Suporta mais arquiteturas de processadores do que qualquer outra

• Conservadora: novas arquiteturas n˜ao s˜ao inclu´ıdas t˜ao cedo 6

(25)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

(26)

Debian

• Criado em 1993 por Ian Murdock (estudante que queria uma distro para manter aberta, no esp´ırito Linux e GNU)

• Segunda distro mais velha ainda ativa hoje; terceira mais popular

• Base para mais de 100 novas distros • Completamente n˜ao-comercial

• Mantida pela comunidade (The Debian Project)

• 3 fases de desenvolvimento: inst´avel, testando e est´avel (1 a 3 anos)

• ´E uma das distros mais livres de bug e uma das melhores testadas

• Suporta mais arquiteturas de processadores do que qualquer outra

• Conservadora: novas arquiteturas n˜ao s˜ao inclu´ıdas t˜ao cedo

(27)
(28)

Ubuntu

• Criado em 2004 por Mark Shuttleworth (sistema f´acil de usar, “Linux for human beings”)

• Baseado no Debian (Mark trabalhava no projeto do Debian) • Patrocinada pela Canonical

• Segunda distribui¸c˜ao mais popular

• Releases a cada 6 meses (abril/outubro): atualiza¸c˜oes de seguran¸ca por 18 meses

• LTS (Long Term Support): atualiza¸c˜oes de seguran¸ca por 3-5 anos extras

(29)

Ubuntu

• Criado em 2004 por Mark Shuttleworth (sistema f´acil de usar, “Linux for human beings”)

• Baseado no Debian (Mark trabalhava no projeto do Debian) • Patrocinada pela Canonical

• Segunda distribui¸c˜ao mais popular

• Releases a cada 6 meses (abril/outubro): atualiza¸c˜oes de seguran¸ca por 18 meses

• LTS (Long Term Support): atualiza¸c˜oes de seguran¸ca por 3-5 anos extras

(30)

Ubuntu

• Criado em 2004 por Mark Shuttleworth (sistema f´acil de usar, “Linux for human beings”)

• Baseado no Debian (Mark trabalhava no projeto do Debian) • Patrocinada pela Canonical

• Segunda distribui¸c˜ao mais popular

• Releases a cada 6 meses (abril/outubro): atualiza¸c˜oes de seguran¸ca por 18 meses

• LTS (Long Term Support): atualiza¸c˜oes de seguran¸ca por 3-5 anos extras

(31)

Ubuntu

• Criado em 2004 por Mark Shuttleworth (sistema f´acil de usar, “Linux for human beings”)

• Baseado no Debian (Mark trabalhava no projeto do Debian) • Patrocinada pela Canonical

• Segunda distribui¸c˜ao mais popular

• Releases a cada 6 meses (abril/outubro): atualiza¸c˜oes de seguran¸ca por 18 meses

• LTS (Long Term Support): atualiza¸c˜oes de seguran¸ca por 3-5 anos extras

(32)

Ubuntu

• Criado em 2004 por Mark Shuttleworth (sistema f´acil de usar, “Linux for human beings”)

• Baseado no Debian (Mark trabalhava no projeto do Debian) • Patrocinada pela Canonical

• Segunda distribui¸c˜ao mais popular

• Releases a cada 6 meses (abril/outubro): atualiza¸c˜oes de seguran¸ca por 18 meses

• LTS (Long Term Support): atualiza¸c˜oes de seguran¸ca por 3-5 anos extras

(33)

Ubuntu

• Criado em 2004 por Mark Shuttleworth (sistema f´acil de usar, “Linux for human beings”)

• Baseado no Debian (Mark trabalhava no projeto do Debian) • Patrocinada pela Canonical

• Segunda distribui¸c˜ao mais popular

• Releases a cada 6 meses (abril/outubro): atualiza¸c˜oes de seguran¸ca por 18 meses

• LTS (Long Term Support): atualiza¸c˜oes de seguran¸ca por 3-5 anos extras

(34)

Mint

(35)

Mint

• Criado em 2006 por Clement Lefebvre (fornecer um sistema que esteja pronto para usar assim que terminar a instala¸c˜ao) • Baseado no Debian e no Ubuntu

• Mantido pela comunidade • Distro mais popular

• “Improved Ubuntu” ou “Ubuntu done right” (inclui drivers e codecs propriet´arios por padr˜ao e outros recursos extras) • Sem calend´ario definido para releases (provavelmente depois

(36)

Mint

• Criado em 2006 por Clement Lefebvre (fornecer um sistema que esteja pronto para usar assim que terminar a instala¸c˜ao) • Baseado no Debian e no Ubuntu

• Mantido pela comunidade • Distro mais popular

• “Improved Ubuntu” ou “Ubuntu done right” (inclui drivers e codecs propriet´arios por padr˜ao e outros recursos extras) • Sem calend´ario definido para releases (provavelmente depois

de um release do Ubuntu)

(37)

Mint

• Criado em 2006 por Clement Lefebvre (fornecer um sistema que esteja pronto para usar assim que terminar a instala¸c˜ao) • Baseado no Debian e no Ubuntu

• Mantido pela comunidade • Distro mais popular

• “Improved Ubuntu” ou “Ubuntu done right” (inclui drivers e codecs propriet´arios por padr˜ao e outros recursos extras) • Sem calend´ario definido para releases (provavelmente depois

(38)

Mint

• Criado em 2006 por Clement Lefebvre (fornecer um sistema que esteja pronto para usar assim que terminar a instala¸c˜ao) • Baseado no Debian e no Ubuntu

• Mantido pela comunidade • Distro mais popular

• “Improved Ubuntu” ou “Ubuntu done right” (inclui drivers e codecs propriet´arios por padr˜ao e outros recursos extras) • Sem calend´ario definido para releases (provavelmente depois

de um release do Ubuntu)

(39)

Mint

• Criado em 2006 por Clement Lefebvre (fornecer um sistema que esteja pronto para usar assim que terminar a instala¸c˜ao) • Baseado no Debian e no Ubuntu

• Mantido pela comunidade • Distro mais popular

• “Improved Ubuntu” ou “Ubuntu done right” (inclui drivers e codecs propriet´arios por padr˜ao e outros recursos extras) • Sem calend´ario definido para releases (provavelmente depois

(40)

Mint

• Criado em 2006 por Clement Lefebvre (fornecer um sistema que esteja pronto para usar assim que terminar a instala¸c˜ao) • Baseado no Debian e no Ubuntu

• Mantido pela comunidade • Distro mais popular

• “Improved Ubuntu” ou “Ubuntu done right” (inclui drivers e codecs propriet´arios por padr˜ao e outros recursos extras) • Sem calend´ario definido para releases (provavelmente depois

de um release do Ubuntu)

(41)
(42)

Fedora

• 2003 por Red Hat (SO de prop´osito geral, feito exclusivamente de software de c´odigo livre) • Mantida pela comunidade (Projeto Fedora) • Quinta distribui¸c˜ao mais popular

• Releases normalmente a cada seis meses • Distribui¸c˜ao usada por Linus Torvalds

(43)

Fedora

• 2003 por Red Hat (SO de prop´osito geral, feito exclusivamente de software de c´odigo livre) • Mantida pela comunidade (Projeto Fedora) • Quinta distribui¸c˜ao mais popular

• Releases normalmente a cada seis meses • Distribui¸c˜ao usada por Linus Torvalds

(44)

Fedora

• 2003 por Red Hat (SO de prop´osito geral, feito exclusivamente de software de c´odigo livre) • Mantida pela comunidade (Projeto Fedora) • Quinta distribui¸c˜ao mais popular

• Releases normalmente a cada seis meses • Distribui¸c˜ao usada por Linus Torvalds

(45)

Fedora

• 2003 por Red Hat (SO de prop´osito geral, feito exclusivamente de software de c´odigo livre) • Mantida pela comunidade (Projeto Fedora) • Quinta distribui¸c˜ao mais popular

• Releases normalmente a cada seis meses • Distribui¸c˜ao usada por Linus Torvalds

(46)

Fedora

• 2003 por Red Hat (SO de prop´osito geral, feito exclusivamente de software de c´odigo livre) • Mantida pela comunidade (Projeto Fedora) • Quinta distribui¸c˜ao mais popular

• Releases normalmente a cada seis meses • Distribui¸c˜ao usada por Linus Torvalds

(47)
(48)

Gerenciadores de janelas

• Oferecem interfaces gr´aficas para algumas funcionalidades do sistema operacional:

• Janelas, ´ıcones, barras de tarefas, pap´eis de parede, etc.

• Cada distribui¸c˜ao Linux usa, por padr˜ao, um determinado gerenciador de janela, mas ´e poss´ıvel instalar e escolher outros gerenciadores

• Provavelmente o gerenciador de janelas mais conhecido ´e o do Windows

(49)

Gerenciadores de janelas

• Oferecem interfaces gr´aficas para algumas funcionalidades do sistema operacional:

• Janelas, ´ıcones, barras de tarefas, pap´eis de parede, etc. • Cada distribui¸c˜ao Linux usa, por padr˜ao, um determinado

gerenciador de janela, mas ´e poss´ıvel instalar e escolher outros gerenciadores

• Provavelmente o gerenciador de janelas mais conhecido ´e o do Windows

(50)

Gerenciadores de janelas

• Oferecem interfaces gr´aficas para algumas funcionalidades do sistema operacional:

• Janelas, ´ıcones, barras de tarefas, pap´eis de parede, etc. • Cada distribui¸c˜ao Linux usa, por padr˜ao, um determinado

gerenciador de janela, mas ´e poss´ıvel instalar e escolher outros gerenciadores

• Provavelmente o gerenciador de janelas mais conhecido ´e o do Windows

(51)

Gerenciadores de janelas

• Oferecem interfaces gr´aficas para algumas funcionalidades do sistema operacional:

• Janelas, ´ıcones, barras de tarefas, pap´eis de parede, etc. • Cada distribui¸c˜ao Linux usa, por padr˜ao, um determinado

gerenciador de janela, mas ´e poss´ıvel instalar e escolher outros gerenciadores

• Provavelmente o gerenciador de janelas mais conhecido ´e o do Windows

(52)

Windows

(53)
(54)

KDE

(55)
(56)

GNOME

(57)
(58)

Diret´orios

• Diret´orio ´e o local usado para armazenar conjuntos de arquivos, para melhor organiza¸c˜ao e localiza¸c˜ao

• FHS: Filesystem Hierarchy Standard (padr˜ao para sistema de arquivos hier´arquico):

• Define os principais diret´orios, e o seu conte´udo, em um sistema operacional Linux

• No Linux, os diret´orios s˜ao especificados por “/” (ao inv´es de “\” usado no Windows)

(59)

Diret´orios

• Diret´orio ´e o local usado para armazenar conjuntos de arquivos, para melhor organiza¸c˜ao e localiza¸c˜ao

• FHS: Filesystem Hierarchy Standard (padr˜ao para sistema de arquivos hier´arquico):

• Define os principais diret´orios, e o seu conte´udo, em um sistema operacional Linux

• No Linux, os diret´orios s˜ao especificados por “/” (ao inv´es de “\” usado no Windows)

(60)

Diret´orios

• Diret´orio ´e o local usado para armazenar conjuntos de arquivos, para melhor organiza¸c˜ao e localiza¸c˜ao

• FHS: Filesystem Hierarchy Standard (padr˜ao para sistema de arquivos hier´arquico):

• Define os principais diret´orios, e o seu conte´udo, em um sistema operacional Linux

• No Linux, os diret´orios s˜ao especificados por “/” (ao inv´es de “\” usado no Windows)

(61)

Diret´orios

• Diret´orio ´e o local usado para armazenar conjuntos de arquivos, para melhor organiza¸c˜ao e localiza¸c˜ao

• FHS: Filesystem Hierarchy Standard (padr˜ao para sistema de arquivos hier´arquico):

• Define os principais diret´orios, e o seu conte´udo, em um sistema operacional Linux

• No Linux, os diret´orios s˜ao especificados por “/” (ao inv´es de “\” usado no Windows)

(62)

Diret´orios Linux

(63)
(64)

Diret´orios Windows

(65)

Diret´orios Linux

• Seus arquivos: /home/usuario/

• Sua ´area de trabalho: “/home/usuario/Area de trabalho” ou /home/usuario/Desktop

• Seus downloads: /home/usuario/Downloads • Seu pendrive: /media/nome do pendrive

(66)

Diret´orios Linux

• Seus arquivos: /home/usuario/

• Sua ´area de trabalho: “/home/usuario/Area de trabalho” ou /home/usuario/Desktop

• Seus downloads: /home/usuario/Downloads • Seu pendrive: /media/nome do pendrive

(67)

Diret´orios Linux

• Seus arquivos: /home/usuario/

• Sua ´area de trabalho: “/home/usuario/Area de trabalho” ou /home/usuario/Desktop

• Seus downloads: /home/usuario/Downloads • Seu pendrive: /media/nome do pendrive

(68)

Diret´orios Linux

• Seus arquivos: /home/usuario/

• Sua ´area de trabalho: “/home/usuario/Area de trabalho” ou /home/usuario/Desktop

• Seus downloads: /home/usuario/Downloads • Seu pendrive: /media/nome do pendrive

(69)
(70)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows:

• Multi (Dual) Boot

• Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

• Windows no Linux:

• M´aquina virtual

(71)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows:

• Multi (Dual) Boot

• Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

(72)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows:

• Multi (Dual) Boot

• Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

• Windows no Linux:

• M´aquina virtual

(73)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows: • Multi (Dual) Boot • Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

(74)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows: • Multi (Dual) Boot • Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

• Windows no Linux:

• M´aquina virtual

(75)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows: • Multi (Dual) Boot • Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

(76)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows: • Multi (Dual) Boot • Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

• Windows no Linux:

• M´aquina virtual

(77)

Formas de instalar o Linux

• Apenas Linux, eventualmente sobrepondo o sistema operacional previamente instalado:

• Cuidado: lembrar de fazer backup de todos os dados importantes armazenados no computador

• Linux e Windows: • Multi (Dual) Boot • Linux no Windows:

• M´aquina virtual: http://www.ic.unicamp.br/~zanoni/ mc102/2016-1s/VirtualMachine/

(78)

Instala¸c˜ao – Ubuntu

(79)
(80)

M´aquina virtual

(81)
(82)
(83)

Controle de acesso

• Serve para definir privil´egios e restringir acessos a diret´orios ou a arquivos

• Definido por usu´arios e grupos • Root: superusu´ario

(84)

Controle de acesso

• Serve para definir privil´egios e restringir acessos a diret´orios ou a arquivos

• Definido por usu´arios e grupos • Root: superusu´ario

(85)

Controle de acesso

• Serve para definir privil´egios e restringir acessos a diret´orios ou a arquivos

• Definido por usu´arios e grupos • Root: superusu´ario

(86)

Sudo

(87)
(88)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

//www.linuxrsp.ru/win-lin-soft/table-eng.html

(89)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

(90)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

//www.linuxrsp.ru/win-lin-soft/table-eng.html

(91)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

(92)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

//www.linuxrsp.ru/win-lin-soft/table-eng.html

(93)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

(94)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

//www.linuxrsp.ru/win-lin-soft/table-eng.html

(95)

Programas

• Navegadores: Firefox, Google Chrome • Clientes de e-mail: Thunderbird, Evolution • Pacote Office: LibreOffice, OpenOffice

• Leitores PDF: Acrobat Reader, Evince, Okular • Edi¸c˜ao de imagens: Inkscape, GIMP

• Comunica¸c˜ao: Skype, Pidgin, Kopete • . . .

• Programas Windows × Linux: http:

(96)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis:

• Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks 32

(97)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis:

• Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks

(98)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks 32

(99)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks

(100)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks 32

(101)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks

(102)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks 32

(103)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks

(104)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks 32

(105)

Editor de Texto

• N˜ao confundir com processador de texto (como Microsoft Word)

• Caracter´ısticas min´ımas desej´aveis: • Syntax Highlighting • Indenta¸c˜ao • Numera¸c˜ao de linha • Kate • Gedit • Vim • Emacs • Code::Blocks

(106)

Abrindo Programas

Existem trˆes formas:

• Clicando em Aplicativos ou Acess´orios ou Atividades e depois no programa desejado

• Digitando Alt + F2 e em seguida o nome do comando do programa na janela que aparece

• Dentro de um terminal, digitar o nome do comando do programa seguido ou n˜ao de & (sem &, o terminal fica bloqueado at´e que o programa seja fechado)

(107)

Abrindo Programas

Existem trˆes formas:

• Clicando em Aplicativos ou Acess´orios ou Atividades e depois no programa desejado

• Digitando Alt + F2 e em seguida o nome do comando do programa na janela que aparece

• Dentro de um terminal, digitar o nome do comando do programa seguido ou n˜ao de & (sem &, o terminal fica bloqueado at´e que o programa seja fechado)

(108)

Abrindo Programas

Existem trˆes formas:

• Clicando em Aplicativos ou Acess´orios ou Atividades e depois no programa desejado

• Digitando Alt + F2 e em seguida o nome do comando do programa na janela que aparece

• Dentro de um terminal, digitar o nome do comando do programa seguido ou n˜ao de & (sem &, o terminal fica bloqueado at´e que o programa seja fechado)

(109)
(110)

Shell/Terminal

(111)

Shell/Terminal

• Provˆe interface de acesso aos servi¸cos do kernel • Shell mais famoso do Linux: bash

• Para abrir: Alt + F2 +

(112)

Shell/Terminal

• Provˆe interface de acesso aos servi¸cos do kernel • Shell mais famoso do Linux: bash

• Para abrir: Alt + F2 +

terminal/konsole/gnome-terminal

(113)

Shell/Terminal

• Provˆe interface de acesso aos servi¸cos do kernel • Shell mais famoso do Linux: bash

• Para abrir: Alt + F2 +

(114)

Informa¸c˜oes

• Para um usu´ario normal, o prompt aparece com o s´ımbolo $ • Para o root (superusu´ario), o s´ımbolo padr˜ao usado ´e o #

(115)

Comandos b´asicos

ls diretorio

Lista o conte´udo de um diret´orio (LiSt)

Op¸c˜oes b´asicas:

-a Arquivos ocultos -l Detalhes dos arquivos

(116)

Comandos b´asicos

(117)

Comandos b´asicos

cd diretorio

Muda o diret´orio atual (Change Directory)

Usos especiais:

cd Equivalente a “cd ∼” ou “cd /home/usuario” cd - Volta para o diret´orio anterior

(118)

Diret´orios Especiais • Diret´orio raiz: / • Diret´orio atual: . • Diret´orio superior: .. • Diret´orio home: ∼

(119)

Comandos b´asicos

clear

Limpa a tela do terminal

(120)

Comandos b´asicos

mkdir diretorio

Cria diret´orios (MaKe DIRectories)

Op¸c˜oes: -p Cria diret´orios pais, se necess´ario

(121)

Comandos b´asicos

• Crie arquivos ∼/teste/dir01/arq01 e ∼/teste/arq02 com duas ou trˆes linhas cada um (conte´udos diferentes).

(122)

Comandos b´asicos

cat arquivo(s)

Mostra conte´udo dos arquivos na sa´ıda padr˜ao

(123)

Comandos b´asicos

cp origem destino

Copia diret´orios e arquivos (CoPy)

Op¸c˜oes b´asicas:

-a Copia recursivamente mantendo atributos -r Copia recursivamente

(124)

Recursos

• Tab completion

• Hist´orico (armazenado em ∼/.bash history) • Seta para cima

• Ctrl + r • Caractere curinga *

(125)

Comandos b´asicos

mv origem destino

(126)

Comandos b´asicos

rm arquivo(s)

Remove arquivos ou diret´orios (ReMove)

Op¸c˜oes b´asicas:

-f For¸ca todas as remo¸c˜oes -i Pede confirma¸c˜ao da remo¸c˜ao -r Recursivo

(127)

Comandos b´asicos

diff arquivo1 arquivo2

Compara dois arquivos linha por linha (DIFFerence)

Op¸c˜ao b´asica:

(128)

Redirecionamento

• A sa´ıda gerada por um comando ´e normalmente direcionada para a sa´ıda padr˜ao

• Podemos redirecion´a-la para outro comando ou para um arquivo

• Redirecionamentos de sa´ıda para um arquivo:

> Cria ou sobrescreve um arquivo >> Cria ou anexa em um arquivo

• Redirecionamentos de entrada a partir de um arquivo: <

(129)

Redirecionamento

• A sa´ıda gerada por um comando ´e normalmente direcionada para a sa´ıda padr˜ao

• Podemos redirecion´a-la para outro comando ou para um arquivo

• Redirecionamentos de sa´ıda para um arquivo:

> Cria ou sobrescreve um arquivo >> Cria ou anexa em um arquivo

(130)

Redirecionamento

• A sa´ıda gerada por um comando ´e normalmente direcionada para a sa´ıda padr˜ao

• Podemos redirecion´a-la para outro comando ou para um arquivo

• Redirecionamentos de sa´ıda para um arquivo:

> Cria ou sobrescreve um arquivo >> Cria ou anexa em um arquivo

• Redirecionamentos de entrada a partir de um arquivo: <

(131)

Redirecionamento

• A sa´ıda gerada por um comando ´e normalmente direcionada para a sa´ıda padr˜ao

• Podemos redirecion´a-la para outro comando ou para um arquivo

• Redirecionamentos de sa´ıda para um arquivo: > Cria ou sobrescreve um arquivo

>> Cria ou anexa em um arquivo

(132)

Redirecionamento

• A sa´ıda gerada por um comando ´e normalmente direcionada para a sa´ıda padr˜ao

• Podemos redirecion´a-la para outro comando ou para um arquivo

• Redirecionamentos de sa´ıda para um arquivo: > Cria ou sobrescreve um arquivo

>> Cria ou anexa em um arquivo

• Redirecionamentos de entrada a partir de um arquivo: <

(133)

Redirecionamento

• A sa´ıda gerada por um comando ´e normalmente direcionada para a sa´ıda padr˜ao

• Podemos redirecion´a-la para outro comando ou para um arquivo

• Redirecionamentos de sa´ıda para um arquivo: > Cria ou sobrescreve um arquivo

>> Cria ou anexa em um arquivo

(134)

Redirecionamento

(135)
(136)

Outras Informa¸c˜oes

• Para obter mais informa¸c˜oes sobre um comando, execute: man comando

• Alguns comandos possuem a op¸c˜ao --help (gcc, por exemplo)

• Para interromper um programa: Ctrl + c

• Para abrir uma nova aba do terminal: Ctrt + Shift + t

(137)

Outras Informa¸c˜oes

• Para obter mais informa¸c˜oes sobre um comando, execute: man comando

• Alguns comandos possuem a op¸c˜ao --help (gcc, por exemplo)

• Para interromper um programa: Ctrl + c

(138)

Outras Informa¸c˜oes

• Para obter mais informa¸c˜oes sobre um comando, execute: man comando

• Alguns comandos possuem a op¸c˜ao --help (gcc, por exemplo)

• Para interromper um programa: Ctrl + c

• Para abrir uma nova aba do terminal: Ctrt + Shift + t

(139)

Outras Informa¸c˜oes

• Para obter mais informa¸c˜oes sobre um comando, execute: man comando

• Alguns comandos possuem a op¸c˜ao --help (gcc, por exemplo)

• Para interromper um programa: Ctrl + c

(140)

Shell/Terminal

(141)
(142)

Compilador

• ´E um programa que transforma c´odigo fonte (linguagem de programa¸c˜ao) em linguagem de m´aquina (programa

execut´avel)

(143)

GCC

• Lan¸cado em mar¸co de 1987 por Richard Stallman

• Originalmente batizado de Gnu C Compiler, hoje conhecido como Gnu Compiler Collection

(144)

GCC

• Lan¸cado em mar¸co de 1987 por Richard Stallman

• Originalmente batizado de Gnu C Compiler, hoje conhecido como Gnu Compiler Collection

• Suporta diversas arquiteturas de processadores

(145)

GCC

• Lan¸cado em mar¸co de 1987 por Richard Stallman

• Originalmente batizado de Gnu C Compiler, hoje conhecido como Gnu Compiler Collection

(146)

GCC

gcc arquivo.c -o arquivo

Op¸c˜oes:

-o Especifica um nome para o arquivo de sa´ıda -ansi Ignora caracter´ısticas n˜ao compat´ıveis com ISO C90 -std=c99 Ignora caracter´ısticas n˜ao compat´ıveis com ISO C99 -pedantic Mostra todos os warnings requeridos pelo ISO C -Wall Mostra todos os poss´ıveis warnings

-Werror Transforma todos os warnings em erros

-lm Adiciona compatibilidade com a biblioteca matem´atica

Padr˜ao usado nesta disciplina:

gcc -ansi -pedantic -Wall -Werror labXX.c -o labXX

(147)

GCC

gcc arquivo.c -o arquivo

Op¸c˜oes:

-o Especifica um nome para o arquivo de sa´ıda -ansi Ignora caracter´ısticas n˜ao compat´ıveis com ISO C90 -std=c99 Ignora caracter´ısticas n˜ao compat´ıveis com ISO C99 -pedantic Mostra todos os warnings requeridos pelo ISO C -Wall Mostra todos os poss´ıveis warnings

-Werror Transforma todos os warnings em erros

-lm Adiciona compatibilidade com a biblioteca matem´atica

Referências

Documentos relacionados

ABSTRACT: The toxicological effects of crude ethanolic extracts (CEE) of the seed and bark of Persea americana have been analyzed on larvae and pupae of

TA AG G nnºº LLooccaalliizzaaççããoo T Tiippoo LLiim mppeezza a G Geerraall Pressurização Pressurização Ní Nívvel el II II Ní Níve vel l II IIII Á Áre rea 1 a 1m m²

Almanya'da olduğu gibi, burada da bu terimin hiçbir ayrım gütmeden, modern eğilimleri simgeleyen tüm sanatçılar için geçerli olduğu anlaşılıyor.. SSCB'de ilk halk

É perceptível, desta forma, o constante aumento do aprofundamento dos personagens: os “príncipes” têm agora não só nome e falas, mas personalidades bem desenvolvidas,

CARATERÍSTICAS -Cerda pura grey -Virola niquelada -Cabo plástico (Polipropileno) SUPERFÍCIES A TRATAR Cimento, betão reboco e outras superfícies, metais, madeira e

A nutrição enteral (NE), segundo o Ministério da Saúde do Brasil, designa todo e qualquer “alimento para fins especiais, com ingestão controlada de nutrientes, na forma isolada

No sentido de reverter tal situação, a realização deste trabalho elaborado na disciplina de Prática enquanto Componente Curricular V (PeCC V), buscou proporcionar as

- Conforme estudado no capítulo anterior, deve-se à Teoria Pura do Direito de Kelsen a ideia de um Direito concebido como ciência pela definição do objeto da ciência do Direito,