Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Aplicações do Linux e do Software Livre na Enge...

Aplicações do Linux e do Software Livre na Engenharia

Avatar for Rafael Martins

Rafael Martins

November 18, 2011

More Decks by Rafael Martins

Other Decks in Programming

Transcript

  1. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Aplica¸ c˜ oes do Linux e do Software Livre na Engenharia Rafael Gon¸ calves Martins LinuxCon Brazil 2011 18 de Novembro de 2011
  2. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Apresenta¸ c˜ ao Rafael Gon¸ calves Martins Engenheiro de Controle e Automa¸ c˜ ao Desenvolvedor do Gentoo Linux L´ ıder do projeto sci-electronics do Gentoo Linux Membro da Gentoo Foundation
  3. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? T´ opicos 1 Caracteriza¸ c˜ ao do problema 2 Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais 3 Problemas comuns 4 Exemplos de sucesso 5 O que fazer para melhorar a situa¸ c˜ ao?
  4. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Caracteriza¸ c˜ ao do problema Atualmente os cursos de engenharia dependem quase que totalmente de softwares propriet´ arios. A ind´ ustria praticamente s´ o utiliza e produz software propriet´ ario. As alternativas aos software propriet´ arios existem, mas n˜ ao s˜ ao difundidas nos cursos de engenharia. As grandes empresas costumam exigir homologa¸ c˜ ao dos softwares que utilizam.
  5. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Caracteriza¸ c˜ ao do problema Provavelmente existe uma solu¸ c˜ ao livre para o que vocˆ e precisa, mas ela n˜ ao ´ e facilmente aplic´ avel ou n˜ ao ´ e comercialmente vi´ avel.
  6. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Caracteriza¸ c˜ ao do problema As grandes empresas, que na maioria das vezes desenvolvem software para seus pr´ oprios produtos, podem contratar desenvolvedores com experiˆ encia na ´ area, pagando-lhes um bom sal´ ario.
  7. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Caracteriza¸ c˜ ao do problema Sem o apoio das grandes empresas, as alternativas livres dependem do tempo livre dos desenvolvedores, que lidam com o projeto como hobby.
  8. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Estudo de caso: Projeto sci-electronics O projeto sci-electronics do Gentoo Linux mant´ em todos os softwares relacionados a eletrˆ onica dispon´ ıveis na distribui¸ c˜ ao, al´ em de alguns softwares relacionados a sistemas embarcados. O projeto mant´ em cerca de 40 pacotes na ´ arvore oficial do Gentoo e possui 4 desenvolvedores ”oficiais”. Atividade de manuten¸ c˜ ao pequena. Os pacotes geralmente possuem poucos releases.
  9. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Su´ ıtes EDA – sci-electronics/kicad KiCad ´ e uma suite EDA para cria¸ c˜ ao de diagramas esquem´ aticos e placas de circuito impresso, distribu´ ıdo sob licen¸ ca GNU GPL. Possui diversas ferramentas para automatiza¸ c˜ ao de tarefas e gera¸ c˜ ao de layout para confec¸ c˜ ao de placas de circuito impresso.
  10. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Su´ ıtes EDA – sci-electronics/kicad
  11. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Su´ ıtes EDA – sci-electronics/geda* gEDA ´ e uma outra su´ ıte EDA, tamb´ em distribu´ ıda sob licen¸ ca GNU GPL. Possui ferramentas para design de diagramas esquem´ aticos, placas de circuito impresso, visualiza¸ c˜ ao de formas de onda e de arquivos Gerber RS-274X (usado por ferramentas automatizadas para produ¸ c˜ ao de placas de circuito impresso). gEDA ´ e dividida em diversos pacotes, dispon´ ıveis na ´ arvore do Gentoo.
  12. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Su´ ıtes EDA – sci-electronics/geda*
  13. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Implementa¸ c˜ oes SPICE SPICE ´ e o mais famoso e utilizado simulador de circuitos eletrˆ onicos, possuindo inclusive varias implementa¸ c˜ oes: sci-electronics/spice – a implementa¸ c˜ ao ”original”, desenvolvida pela Universidade da Calif´ ornia. sci-electronics/gnucap – a implementa¸ c˜ ao do projeto GNU. sci-electronics/ngspice – uma reimplementa¸ cao, baseada no sci-electronics/spice.
  14. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Implementa¸ c˜ oes SPICE – gspiceui O gspiceui ´ e uma interface gr´ afica criada pelos desenvolvedores do gEDA, para duas das implementa¸ c˜ oes SPICE (gnucap e ngspice).
  15. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Su´ ıtes de desenvolvimento de circuitos integrados digitais – sci-electronics/alliance Alliance ´ e uma suite completa para desenvolvimento de circuitos integrados digitais. Pacote de dif´ ıcil manuten¸ c˜ ao. N˜ ao produz bin´ arios utiliz´ aveis com vers˜ oes recentes do GCC. Pode ser considerada uma ferramenta educacional, pois a qualidade do resultado final produzido ´ e discut´ ıvel, dificultando o uso comercial. N˜ ao existem outras alternativas livres.
  16. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Problemas comuns – Upstreams mortos Grande parte dos softwares livres para engenharia n˜ ao est˜ ao mais sendo mantidos, seja por falta de interesse da comunidade ou por falta de desenvolvedores qualificados.
  17. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Build-systems problem´ aticos Por n˜ ao serem desenvolvidos por pessoas com grande experiˆ encia em desenvolvimento de software, estes softwares, na maioria das vezes, n˜ ao possuem scripts de compila¸ c˜ ao satisfatorios, ou padronizados, dificultando o empacotamento.
  18. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Sistemas embarcados Talvez o maior caso de sucesso do Linux aplicado ` a engenharia. Grande parte dos sistemas embarcados dispon´ ıveis hoje em dia, mesmo que constru´ ıdos por grandes empresas, s˜ ao ”movidos”a Linux. A facilidade de desenvolvimento de sistemas embarcados possu´ ındo-se o c´ odigo-fonte do sistema operacional a m˜ ao ´ e um ponto favor´ avel ao uso do Linux.
  19. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Sistemas embarcados – crossdev Crossdev ´ e um conjunto de scripts para cria¸ c˜ ao de toolchains completas para a compila¸ c˜ ao de bin´ arios de arquiteturas diferentes da arquitetura do sistema host (cross-compiler). O crossdev torna poss´ ıvel o uso dos gerenciadores de pacotes do Gentoo para a compilacao de bin´ arios para sistemas embarcados, facilitando bastante o trabalho. Est´ a dispon´ ıvel para um bom n´ umero de arquiteturas.
  20. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Sistemas de tempo real Existem boas op¸ c˜ oes de sistemas operacionais de tempo real baseados em Linux, como: Xenomai RTAI PREEMPT RT
  21. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Sistemas de tempo real A possibilidade de se utilizar a base de um sistema operacional j´ a pronto e modific´ a-lo para obter um sistema de tempo real, sem ter que criar do zero, ´ e um grande ponto positivo em favor do Linux.
  22. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Aplica¸ c˜ oes propriet´ arias Existem empresas desenvolvendo aplica¸ c˜ oes proprietarias para Linux, como a Cadence. Grande parte de suas aplica¸ c˜ oes s´ o funciona em plataforma Linux.
  23. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? O que fazer para melhorar a situa¸ c˜ ao? Incentivar o desenvolvimento de software livre nos cursos de engenharia.
  24. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? O que fazer para melhorar a situa¸ c˜ ao? As distribui¸ c˜ oes Linux devem tentar educar o upstream, mostrando como deve ser feita a distribui¸ c˜ ao do software.
  25. Aplica¸ c˜ oes do Linux e do Software Livre na

    Engenharia Rafael Gon¸ calves Martins Caracteriza¸ c˜ ao do problema Estudo de caso: Projeto sci-electronics Su´ ıtes EDA Implementa¸ c˜ oes SPICE Su´ ıtes de desenvolvimento de circuitos integrados digitais Problemas comuns Exemplos de sucesso O que fazer para melhorar a situa¸ c˜ ao? Obrigado! Email: [email protected] IRC: rafaelmartins – Rede Freenode #gentoo #gentoo-br #gentoo-python #gentoo-science Site: http://rafaelmartins.eng.br/