Está confirmado! PlayStation 4 tem como base o FreeBSD…
…e muito software open source?
Foi no passado dia 16 de Novembro que a nova PlayStation 4 foi colocada a venda no mercado dos EUA. Desde a data do seu lançamento, que o feedback tem sido algo negativo, isto porque a super consola da Sony tem apresentado alguns problema graves (ver aqui) que impossibilitam o seu uso por parte dos utilizadores. Há quem desconfie de sabotagem …
Problema à parte, sabia que a nova PlayStation 4 tem como base o FreeBSD e muito software open source?
A nova consola da Sony será certamente um dos equipamentos mais vendidos nesta época natalícia. Apesar dos problemas que têm sido reportados, este equipamento é um dos mais inovadores no seu segmento, trazendo o que de melhor se faz no mundo da tecnologia.
Á parte da inovação, mais uma vez vimos no mercado um equipamento que tem como base open source e não apenas software proprietário. De facto, esta não é a primeira vez que um equipamento tão popular e evoluído tem como base software open source.
Mas qual o software open source adoptado pela PS4?
A lista é extensa…muito extensa, mas podemos encontrar o muito utilizador OpenSSL, Cairo, Jquery, Lua, SQLite, etc. Aqui fica a lista completa (retirada do próprio site da Sony - aqui).
- base64
- BSD libc
- cairo
- CELT (Opus)
- cJSON
- cURL
- eglib
- Ethernet driver
- Expat XML Parser
- FreeBSD Kernel
- FreeBSD's fsck/newfs commands
- FreeType 2
- giflib-4.1.2
- ICU
- Jerasure version 1.2A
- jQuery
- kiconv for unicode
- libcompiler_rt
- libcxxrt
- libjpeg
- libjpeg-turbo
- libm
- libpng
- libpthread
- libunwind
- libusb FreeBSD
- libusrsctp 0.9.1
- libxml2
- Lua
- Mersenne Twister
- mmc driver & sdhci driver
- Mono class libraries
- Mono VM
- Network FreeBSD
- OpenSSL
- pixman
- Protocol Buffers
- SQLite-net
- squish
- udf2.x fs
- Webkit
- zlib
Surpreendidos?
Ao nível do sistema operativo, é sabido (e já foi confirmado pela própria Sony) que esta versão corre uma versão modificada do FreeBSD a qual foi dada o nome de Orbis OS.
A nova consola chegará a Europa a 29 de Novembro e Sony espera vender cerca de 3 milhões de equipamentos até ao final do ano (nas primeiras horas, foram vendidas cerca de 1 milhão de PS4 nos EUA).
Têm intenção de comprar esta consola? Qual a vossa opinião sobre a integração de software open source?
Este artigo tem mais de um ano
Não existe nada melhor que correr os executáveis em modo “jailed” 🙂 Bravo Sony pelo cuidado posto na segurança.
Estou a ver que para ti é como ir a bios e arrancar pela pen…
Foi lançada dia 15 na canada e usa e sim, ja tenho a minha guardada para o 1º dia 🙂
Isto é triste. Sugam tudo do opensource e duvido que contribuiam 1/1000 do que desenvolveram com estas ferramentas open 🙁
http://www.freebsdfoundation.org/donate/sponsors
Onde está a sony? lol…
parece que a sony está a ficar como uma tal empresa de redmond…
Ou secalhar estou equivocado e afinal…não foi feita nenhuma publicação na página…
cmps
Nunca tinha acessado essa lista, mas achei que quem mais contribuiu preferiu ficar como “Anonymous Donor”. Apple talvez? Acho que é quem mais lucrou em cima do FreeBSD.
A Apple é quem mais contribui com código para o FreeBSD. Aliás muitas das novidades no FreeBSD nos últimos anos vieram do que a Apple desenvolveu no Mac. Um dos criadores do FreeBSD foi responsável na Apple pela tecnologia BSD durante anos, até há poucos meses!
Para apoiar um projecto open-source não é necessário dar dinheiro, basta contribuir para actualizações e correcções no código.
Isso sim é o verdadeira espírito open-source, não é doar dinheiro.
E?
Isto é licença BSD. Não é licença GPL já por causa disso…
pois…
isso é um problema…existem empresas que parecem vampiros…usar opensource é bom…mas depois não devolvem a comunidade…
cmps
E……. porque é que deveriam “devolver á comunidade” se não são obrigados, ou recompensados por isso, antes pelo contrário?
Porque a comunidade desenvolve para beneficio de todos enquanto que grandes corporações desenvolvem para seu próprio beneficio. Caso uma comunidade utiliza-se algo desenvolvido por uma dessas corporações estaria envolvida em ameaças e/ou processos judiciais.
Não são recompensados? Vais dizer-me que utilizaram o FreeBSD pelo desafio tecnológico e que não teve a ver com redução de custo de desenvolvimento.
Meu amigo, por isso é que há o FreeBSD, que tem licença do género BSD, e o Linux, com licença GPL?
Assim como o KDE e o Gnome?
Assim como vários projectos em que há este paralelo!
E no entanto, apesar de serem “roubados”, como vocês dizem pelas empresas, têm na mesma apoio.
Sabes porquê?
Porque são projectos que são feitos por pessoas, não por empresas!
Fazes uma contribuição para um projeto GPL que entra em disputa com outra contrib. de uma empresa, sabes o que é que te acontece?
Todo o teu trabalho vai para o cara…
Porque para os líderes de projecto GPL interessa-lhes mais o contributo das empresas, que dos individuais, mesmo que o trabalho dos individuais seja superior… para BSD, cag*u, as empresas acabam por forkar os projectos, e o desenvolvimento continua sob alçada dos melhores.
boas..
“Fazes uma contribuição para um projeto GPL que entra em disputa com outra contrib. de uma empresa, sabes o que é que te acontece?”
Depende…se o código gpl que libertas interferir com alguma patente, pois vais ter que o alterar, caso contrario se o teu software existir a mais tempo que a patente de determinada empresa…essa empresa fica a ver navios…isso já aconteceu com a TomTom europeia e a M$ americana…num tribunal Americano, e foi uma vergonha para a M$…
Não tem nada a ver, a única diferença é que se o teu código for proprietário…ninguém vê o código o que torna mais difícil alguma empresa te chamar a razão, porque não há código visível…no entanto se for reverse-engineered, pode ser descoberto…mas dá mais trabalho…
Não acredito que ao projecto interessem implementações mais fracas do que implementações melhores, independentemente de onde venham…a não ser se esse projecto ambicionar de alguma forma suporte para determinada tecnologia que seja impossível de obter de outra forma…
Ou se determinada empresa financiar o desenvolvimento do projecto…
Mas ai tens bom remédio…ignoras a contribuição dessa empresa e implementas a tua…
Mas claro que passado x tempo será um problema para ti, porque a API vai mudando de acordo com o desenvolvimento base do projecto, e ao ser implementada outra solução no projecto de base pois vai ser cada vez mais complicado para ti, seguires com o teu desenvolvimento, nesses módulos de software…
Não sei se era a isto que te referias , ou a outra coisa, e eu não percebi :S
De qualquer forma, esse perigo existe em todo o lado…
No modelo bsd ainda é pior…porque determinada empresa pega o código fonte e nem contribui nada de volta…o que é triste!
No gpl ao menos sabes que determinada empresa criou determinado software e o código esta disponível…se o quiseres integrar integras, se não prossegues com a tua implementação…
O gpl protege os projectos, e a humanidade(sendo que é código de todos nós), de serem usurpados.
O bsd protege as empresas que preferem usurpar e nem sequer são obrigados a contribuir…ou os developers doidos por terem o código dos outros, mas que não querem contribuir com o seu!
Egoísmo?
isto é um tema complexo, e muito dificilmente alguém chega a consenso, porque existe uma crise de valores…entre os conceitos.
cmps
@Lmx, tu centrasta-te no que quiseste, não foi disso que falei, falei de como as comunidades trabalham nos projetos GPL e BSD. Os projetos GPL são mais virados hoje em dia para as empresas.
Não sei qual é o problema de uma Sony retirar do FreeBSD e não devolver… sempre foi assim!
O código distribuído por licença BSD, claramente não pode ser “roubado” por uma empresa.
É um assunto muito complicado, mas os projectos BSD existem para quem quiser, os projetos GPL também existem para quem quiser, sempre foi assim, e é uma escolha. Se queres apoiar o BSD, apoias, se queres apoiar o GPL, apoias.
O conceito de comunidade não te deve dizer nada então, estão a aproveitar codigo opensource para terem menos trabalho logo deviam devolver algo, take and give é o conceito que eu tenho de comunidade mas pronto.
Porquê dizer obrigado quando alguém segura a porta para tu entrares? Não és obrigado a dize-lo!
É uma questão de bom senso. Se se aproveitam de tudo o que uma comunidade faz, é expectável que também contribua com algo.
Ou és daqueles que em piqueniques não levas nada e só la vais comer o que os outros levaram?
Por falares nisso…
por acaso já vi “lapas” dessas nos piqueniques… 😀
E não é por falta de capacidade económica, é mesmo porque na Sociedade são uns parasitas…
É de uma falta de valores extrema, meus deus, como é que é possível!!! 😀
…é o que me pergunto , e por mais que me pergunte…não encontro uma resposta válida…
BSD não é piquenique, é oferta.
Nelson..
Eu não estava a fazer essa comparação 😉
Estava apenas a comentar os emplastros que quando lhes cheira se juntam aos magotes nos piqueniques 😀
Ética e “responsabilidade social”
? Se a comunidade desenvolve para eles usarem porque não haviam de ajudar e contribuir para estes projecto, o moralmente correcto seria contribuírem também.
o problema é que as grandes empresas nao sabem o que é o “moralmente correcto”, o que eles sabem é de lucros, por isso quanto menos gastarem a desenvolver mais lucro têm
Carlos…
As empresas são feitas de pessoas…essa desculpa não pode servir para desculparem conjuntos de pessoas que se escondem por trás de um nome empresarial…
As empresas são feitas de pessoas, essa é a realidade defacto, as empresas não sabem o que é moralmente correcto….mas a Empresa é gerida por pessoas que sabem o que é moralmente correcto, mas não o querem é aplicar!!
cmps
A comunidade BSD não se importa que as empresas que usem o seu código não contribuam de volta ao contrário da comunidade Linux.
enganas-te…
O Comunidade BSD já se zangou muitas vezes com a M$ por exemplo…porque eles fazem dinheiro com o software, mas …não devolvem nada…
Na comunidade Linux…também já aconteceu , muitas vezes…com uma diferença…aqui, a maioria do código é gpl.logo ao utiliza-lo…és obrigado a devolver…
Não é ao acaso que em 2010 salvo erro aparece a M$ obrigada a devolver uns meros 10k lines para o linux…porque se descobriu que utilizava código gpl no seu SO…
No BSD, devido a licença acho que as empresas podem fazer o que quiserem…mas como é óbvio é uma questão de princípios, e estes ou se teem , ou não se teem…não é possível ficar a meio…
Se recebes da comunidade, deves devolver algo a comunidade…caso contrario…não fazes falta a comunidade…
cmps
Podem não ter devolvido nada para o FreeBSD mas em relação e devolver para a comunidade eles estão a mudar a politica. Só na àrea de desenvolvimento:
“…open sourced 90% of ASP.NET, MVC, Web API, all of Entity Framework, SignalR, VS Web Essentials, yada yada yada. We also have all the Azure SDK stuff open sourced on GitHub as well.”
http://www.reddit.com/r/IAmA/comments/1qp91h/iama_we_are_microsoft_aspnet_and_web_tools_team/
Enganas-te tu.
Ele está 100% certo, a comunidade BSD é mesmo isso.
Aliás, até o Linux vai buscar aos BSD’s… e essa opinião não será de ninguém que não embarace o espírito 100% livre.
Boas Nelson.
O Linux, vai buscar, mas o Linux devolve…por isso o BSD não se pode queixar do Linux…mas queixa-se…constantemente 😀
Não dá para perceber…
Pode ou não ser o caso aqui…mas sim a comunidade bsd tem ficado um pouco exaltada cada vez que alguém lucra e não devolve nada…é considerado uma falta de respeito…
A comunidade bsd, não quer entender a licença lgpl…encara-a como sendo uma licença gpl…
Veja-se o caso do gcc/llvm…eles andam com um compilador que está mais do que ultrapassado, e não querem utilizar o gcc com a nova licença, dizendo que se trata de uma incompatibilidade de licenças e teem medo que por compilar o código com o gcc tenham que devolver todo o código fonte que compilaram…até o stallman já veio a publico dizer que não é preciso, nada disso…
O llvm está a ser utilizado em vez do gcc por causa basicamente disto…e porque a Apple quer ter mais protagonismo…não é porque existe incompatibilidade entre licenças…
Por ultimo a licença BSD é de difícil compreensão…se por um lado deixam fazer tudo, por outro lado esperam que haja educação e que seja devolvido parte do que foi criado a comunidade, o que raramente acontece…e depois acontecem coisas esquisitas…
Quando alguém pega código do bsd…ficam chateados…e criticam jocosamente…não percebo a atitude…se eles próprios o permitem…
Pelo menos o gpl, permite que cada um faça o que quiser com o código desde que disponibilize o código fonte…
No linux a licença lgpl, joga um papel muito importante permitindo usar código proprietário e código livre…
Pois …o problema é, o que é que pode ser considerado 100% livre…
Eu considero que posso utilizar software livre com software proprietário sem problemas…alias…eu já o faço…
O driver da minha gráfica é proprietário, por exemplo…mas eu tenho uma opção, e posso usar o driver opensource…
a malta do bsd acha que utilizar software livre é mau para proteger o seu eco-sistema.
Mas não é mau, é bom, porque se alguém usar o teu código, tem que disponibilizar os avanços que fez…e isso é bom…
A licença bsd, é egoísta…quer receber de borla, o suor dos outros, mas depois não quer devolver á origem o que essa pessoa progrediu…
Mas fica chateada quando vão buscar alguma coisa e lucrão com ela sem devolver nada :S
Existe uma incompatibilidade de ideias…acho eu..
cmps
@ lmx
“o caso do gcc/llvm…eles andam com um compilador que está mais do que ultrapassado”
Desde quando é que o llvm está mais do que ultrapassado? Tecnologicamente é mais moderno que o GCC, muito mais flexível! O llvm/Clang tem várias vantagens sobre o GCC para as ferramentas de programação, sendo uma delas a rapidez. Há cada vez mais companhias a preterirem o GCC, e não é por causa da licença; é perguntar à Google por que é que usa cada vez mais o LLVM.
O que joga a favor do GCC é a sua maturidade que nalgumas plataformas permite melhores compilações,
boas nunes…
Não sei se sabes, mas o que eu falei acerca do caso gcc/llvm…foi propositado, porque é o primeiro caso que justifica a passagem do gcc para llvm…
E começou precisamente no bsd…
O projecto bsd actualmente ainda é compilado com o gcc, salvo erro versão 4.4 que é a ultima gplv2…
A partir daqui salvo erro é usada a gplv3…
O llvm começa a surgir, porque os experts do bsd dizem haver incompatibilidades entre o gplv3 e a licença bsd…
Mas tudo não passa de desculpas porque o gplv3 é compatível com a licença bsd..
No gcc podes compilar o teu projecto e ele continua a ser código fechado…se quiseres…
o que não podes é linkar bibliotecas que sejam gpl…apenas bibliotecas que sejam lgpl, no máximo, ou proprietárias(se forem tuas ou se tiveres licença..) claro..
O gcc 4.4 já esta ultrapassado sim, em relação á versão actual do gcc, e esta é de longe muito melhor que a 4.4!
O projecto bsd quer mudar porque a 4.4 não lhes permite determinado tipo de coisas…mas podem usar a mais recente…só que não usam…
Então querem-se encaminhar para o llvm…
Este novo projecto, que em muito tem sido impulsionado pela Apple, é um compilador muito mais pequeno que o gcc, e como tal tem apenas suporte para algumas coisas…
Se é mais rápido compilar usando llvm?pelo facto de ser uma coisa minúscula comparativamente com o gcc, sim é suposto ser mais rápido a compilar projectos…e numa distro deve notar-se…
ok usa uma vm…talvez seja uma grande inovação…no futuro!!
Mas o nível de eficiência é menor :S
Eu não me importo de ter um compilador que demore mais tempo a compilar código…desde que o código compilado corra mais rápido 😉
Para testar talvez o Clang/llvm seja melhor poi mais rapidamente obtens um resultado…mas é mais ineficiente…mas ok para testar o desenvolvimento é porreiro, mas para compilar um projecto final é pior…
O gcc é um projecto que em 2012 tinha mais de 7.3 milhões de linhas de código…e mesmo assim continua a crescer a uma velocidade vertiginosa…não há compilador mais universal que este, e muito dificilmente haverá algum outro que lhe possa fazer frente…
Com certeza que se o gcc tivesse o tamanho do llvm/clang seria muito mais rápido…mas é muito maior…
o gcc suporta uma panóplia de linguagens , enquanto o llvm/clang só suporta 3 c/objective-c/c++ , do meu ponto de vista o grande interessado aqui é a Apple…
Pois por ter uma licença tão permissiva é que muitas empresas o veneram, mas o ser demasiado permissivo também não é bom…
O gcc também tem avanços importantes…por exemplo um jit compilar para a repetitividade de código, o que o torna ordens de grandeza mais rápido a compilar…embora que para projectos pequenos não se tire partido.
Concluindo…só para repetir o que toda a gente sabe…o bsd está a mudar para o llvm/Clang não por este ser melhor, mas porque tem um compilador obsoleto gcc 4.4 e são demasiados orgulhosos, e por isso querem deixar de depender do compilador da GNU, ideologicamente, um projecto com a qual eles não se identificam…acabam por ficar com o orgulho ferido…
cmps
@ lmx
o primeiro caso a usar preferencialmente o LLVM foi com o Mac. A Apple investiu forte e feio no Clang já lá vão quase 10 anos e os resultados estão à vista no Xcode. A rapidez é só uma das vantagens do uso do LLVM, o debugging é outra, as ferramentas de análise são outras. Para quem tem que programar fará grande diferença, pois poderá aproveitar o tempo ganho para optimizar o código, o que no processo de trabalho poderá trazer mais benefícios que as diferenças na optimização pelo compilador que, sejamos realistas, neste momento para muitos dos cenários são minúsculas, e nalguns casos o LLVM até cria código mais eficiente.
O LLVM é capaz de suportar uma grande variedade de linguagens e sistemas! Claro que há melhor suporte para alguns sistemas e linguagens, mas podes ter a certeza que neste momento não encontrarás nalgumas áreas muita vantagem em usar o GCC, pelo contrário.
Quanto à licença do LLVM não vejo qual é o problema! A Apple disponibiliza o código, imagino que a Google tb, e os resultados podem ser usados por qualquer um, os ganhos em performance estão disponíveis para qualquer um, e sendo ainda jovem ainda tem muito por onde melhorar! O facto da FreeBSD passar a usar o LLVM não se prenderá só com a questão de licença, o futuro é promissor para esta tecnologia, e há cada vez mais companhias a contribuir, sendo por isso uma opção viável!
@ Nunes..
“…O facto da FreeBSD passar a usar o LLVM não se prenderá só com a questão de licença,…”
pois …a questão da licença é uma falácia no fundo…mas começou como desculpa para ainda usarem o gcc 4.4…ultima gplv2…
Quanto á velocidade de compilação é como disse, para projectos enormes, nota-se para projectos pequenos não há necessidade…
O llvm não tem um suporte por ai além para mais do que c/objective-c/c++…basicamente são estas 3, e falta-lhe muitas features que o gcc tem…
Mas é uma opção…no entanto para o desenvolvimento que faço uso e abuso do gcc, cada um usa o que quiser…
Mas não gosto de ver o projecto bsd apregoar que o llvm é uma coisa do outro mundo…quando na prática o gcc é melhor em muita coisa, sem falar sequer na quantidade de linguagens que o gcc suporta…um standard…e nem sequer falo do jit compiling isso então vai speedar imenso o gcc…
A verdade é que toda a gente sabe que o gcc gera código muito mais eficiente…e se forem usadas instruções do próprio gcc(muitas delas gpl…o problema é este!!), o gcc fica mesmo um mimo…este aspecto para mim é crucial…
Para quem quiser utilizar o llvm força 😉
cmps
@ lmx
Vamos por partes, a tecnologia LLVM permite suporte para qualquer linguagem e sistema.
O Clang/LLVM é que só dá suporte às linguagens que mencionas, pois o Clang foi criado para linguagens C, daí o nome Clang, que por sinal são as linguagens preferidas pela Apple e o FreeBSD.
Não faltam features ao LLVM, o que poderá faltar é o suporte completo de bibliotecas em determinados sistemas operativo, mas a partir do momento que um sistema adopta o LLVM como o seu compilador preferencial, a questão de bibliotecas terá que estar resolvida.
Não sei que tamanho de projecto é que tens na cabeça, mas a partir do momento que algo aumenta em complexidade, queres algo que te ajude no debugging e que te poupe tempo, e como já disse há muitos cenários em que não tens qualquer vantagem na eficiência do código final com o GCC, poderá não ser o teu caso, mas com o tempo tal se irá generalizar dada a grande adopção por parte de muitas organizações. No caso do Mac este já há alguns anos que usa preferencialmente o Clang, com vantagens óbvias para os programadores, dificilmente encontrarás alguém que te diga que usar o GCC no Mac para compilar programas Mac ou iOS levará a código mais eficiente. A Apple já optimizou muito as suas bibliotecas.
Se quiseres perceber as possíveis vantagens do Clang fica este link
http://clang.llvm.org/comparison.html
boas..
pois…
o llvm/Clang é muito mais modular, o gcc não é modular…e devido ao seu tamanho nem sei se algum dia o será, com base nisso é fácil adicionar coisas ao llvm…além de ser modular é muito mais pequeno…
O llvm é uma coisa boa, mas essencialmente é bom para a Apple…
Tenho visto muitos testes e a verdade é que não noto grande avanço por parte do llvm, a nível de resultados…mesmo alguns testes levados a cabo pelo phoronix…por isso..não sei que te diga…
Para projectos pequenos…não faz sentido, para projectos grandes tipo kernel linux, etc, pode speedar um pouco a coisa, mas não é usado..porque se perde optimização…é o que se diz…
O gcc também começou por ser um compilador para c, e avançou depois com frontends para outras linguagens…o llvm não tem ainda para mais do que as descritas, pelo menos não tem funcionalidades que justifiquem dizer que tem suporte…
Pelo que me parece…é que se quiseres trabalhar em objective-c, usa o gcc se quiseres trabalhar com c/c++ ua o gcc, mas cada um usa o que está habituado…
A ideia de uma ferramenta ser melhor que a outra também depende daquilo a que estamos habituados…
Existem pessoas que programam no emacs e são umas maquinas…existem outros que dizem que precisam de ter 50 ferramentas para trabalhar…
É uma questão de prática e gosto.
Acredito que o llvm/clang gere código para debug com mais informação, ele foi desenhado de base para determinadas coisas e por isso talvez seja bom.
Mas é como digo, para mim, faz grande sentido para a Apple , e ao bsd que assim não sente o seu orgulho diminuído, e já poderão dizer que teem um compilador …que não precisam do projecto GNU…projecto que eles não entendem…
cmps
estás a basear-te em testes em Linux onde o LLVM ainda está longe de ter o suporte que encontras no Mac e no FreeBSD! Por isso repito, não faz qualquer sentido o teu comentário de que o LLVM é ultrapassado, no Mac a introdução deste compilador trouxe melhorias notórias em muitas aplicações face ao GCC.
Tenta te informar sobre as vantagens do uso do Clang/LLVM em ferramentas de programação e o que é que a rapidez do LLVM permite. Não digas que só faz sentido para o kernel, porque estás enganado. Podes tu não encontrar vantagem no teu sistema por falta de suporte, mas isso não quer dizer que noutros a coisa não seja bem melhor!
Por algum motivo a Google usa cada vez mais nos seus projectos, e algumas distros de Linux começam a pensar em adoptá-lo!
Nunes…
Eu usei o So com o qual trabalho, etc…para comparar…
Tu usas-te o teu SO, para comparar…
Comparamos os dois o gcc com llvm/clang…porque é que sou eu que estou a ver mal a coisa??
Se o suporte para linux do llvm é mau e me impossibilita de avaliar melhor a coisa…
O contrario também é verdade no bsd…tal como disse e não foi ao acaso o bsd usa o gcc 4.4 salvo erro como ponto de comparação com llvm…
Este compilador está obsoleto…entendes?
É normal que o llvm tenha melhor performance…porque eles pura e simplesmente ficaram no ultimo licenciado com gplv2 :S
É fácil fazermos comparações, de algo actual com um compilador que acabou o seu ciclo de vida em 2007…não te parece…?
Chamei-lhe 4.4, mas não é o 4.4 é o 4.2, em que o ultimo bugfix release foi em 2007…ou seja esta versão adquiriu o máximo de features em 2005, e a partir dai até 2007 foram releases para corrigir bugs…
http://www.osnews.com/story/18305/GCC_4_2_1_Released_Last_GPLv2_Release/
Esta versão do gcc tem prai uns 8 anos…está completamente obsoleto..
É contra esta versão que o llvm tem vindo a ser comparado…é normal que para aquilo que foi projectado, tenha um desempenho superior, que um compilador com 8 anos…obsoleto portanto…
No entanto a ideia da implementação do llvm é uma boa ideia, mas está muito longe do gcc…
O gcc fornece-te muito bom nível de debug…talvez o llvm te forneça mais, mas será que preciso de mais??
Reparas-te o porquê do exemplo do emacs no meu post anterior…era por causa disto…
Se for para um projecto gigantesco, acho que faz sentido…se for para equipas de desenvolvimento andarem constantemente a fazer debug, etc…
Nas distros esta-se constantemente a compilar releases para teste, etc…e ai seria bom…
Mas o gcc também ja tem jit compiling…pois é…
Em relação as empresas…isso é óbvio…não viste o que a sonny faz com a playstation…vai buscar, fecha o código e pronto…”é todo nosso”, claro que as empresas andam doidas para se livrarem do gcc…
O gcc tem features bombásticas, mas estas como estão licenciadas como gpl, ao serem usadas, obrigam a que o código compilado seja libertado…percebes porque é que as empresas preferem o llvm?
Há quem se revolte contra a GNU por causa disso, eu pessoalmente acho que estas features deveriam ter sido implementadas como lgpl, mas estão como gpl…e em parte faz sentido…pois é bom que alguém contribua para a comunidade, não é so “gamar” tem que haver principios..
A questão gcc/llvm está num ponto que roça o ridículo, não porque o llvm/clang não seja um bom compilador e até é muito provável que tenha muito êxito no futuro, mas não é por causa disto…
É que o motivo que leva o bsd a querer um outro compilador …é uma questão de orgulho ferido…não tem nada a ver com o gcc ser fraco…muito pelo contrario…
Por outra lado não percebo o absurdo de compararem o llvm actual com o gcc 4.2…isto já é uma questão de ego…
Não tem nada a ver a questão do gcc/llvm com melhorias, ou impossiblidades, etc…tem a ver com ideologias…toda a gente sabe disso…
Quanto ao llvm desejo sorte ao projecto e sei que as empresas quererão utiliza-lo o mais que puderem…para fugirem a um compilador gpl…
Cada um terá as suas características, mas no fundo é como digo…o llvm é uma mais valia para a Apple, para o projecto bsd, é uma mais valia apenas porque não sentem o seu orgulho ferido, e vão ficar orgulhosos de puderem dizer que teem um compilador…para as empresas vai ser um espetáculo, porque de uma vez por todas veem se livres do GPL, usado pelo gcc…
para mim e para muita gente, que tem acompanhado a “birrinha” entre o bsd e o GPLV3 do gcc actual…é isto.
cmps
@ lmx
o quê? achas que as duas situações são remotamente comparáveis? Achas que a tua perspectiva no Linux é válida para poder avaliar e dizeres que o LLVM é ultrapassado? Achas que suporte incompleto do LLVM no Linux é equivalente a uma comparação com o GCC com suporte completo e que era o compilador preferido no FreeBSD ou no Mac! Para tua informação o GCC continua a sofrer updates para as versões mais recentes nestes sistemas, basta o utilizador ir atrás delas!
Quanto ao debugging, não queiras comparar com o que o LLVM possibilita, e podes até agradecer ao LLVM para o pessoal do GCC ter acordado para o problema e ter melhorado um pouco a situação!
A aposta em novas tecnologias tem sempre por base a perspectiva futura, o presente raramente serve de guia para escolher o que será melhor! Consideras que é uma questão de orgulho, pois eu considero que é uma aposta em ter o futuro da plataforma em bases sólidas. Ter algum controlo sobre as ferramentas de programação na sua plataforma é essencial para definir o futuro!
Boas nunes…
Isto é um assunto onde não ha concenso…por mais que se fale…
Eu não disse que o llvm é ultrapassado ou obsoleto…eu disse que o compilador gcc 4.2 usado é obsoleto, nos dias de hoje…
Por isso e sendo que o freebsd não quer usar o gplv3 do gcc, faz todo o sentido que utilize o llvm…
Este foi o motivo da passagem do gcc para o llvm.
Por detrás disto esta uma questão de orgulho Ferido, que no mundo opensource não se consegue perceber…
O llvm é bom e será cada vez melhor…
mesmo no gcc já se pensou em deixar cair suporte para algumas 10 linguagens e continua-lo apenas com as linguagens base…porque é complicadissimo trabalhar numa coisa tão grande…
A situação é comparável, porque tu fazes a comparação tendo como base a tua arch e eu faço a comparação tendo em conta a minha arch…é igual para os dois 😉
Sim depois do llvm ter avançado e ter começado a ter algumas características interessantes, o gcc resolveu adoptar algumas flag’s para um modo mais “verbose” no debug…
Mas isso não tem nada a ver com o caso…
Eu não sei se o bsd continua ou não com a versão mais recente do gcc, o que eu sei é que a versão usada era a 4.2 e que é obsoleta á uns bons anos a esta data, e supostamente foi a ultima a ser usada devido ao facto de ser a ultima gplv2…
A minha opinião e a de muitos que seguiram esta novela é a mesma, e já a disse acima…
O bsd é livre de usar o compilador que quiser isso não está em causa.
Mas não acho correcto fazerem comparações entre uma coisa recente e bastante pequena com outra obsoleta e gigante…
Sempre houve um problema de ego no projecto bsd, eu nunca percebi porquê…e continuo sem perceber…é algo intrínseco ao projecto…
Dá ideia que para trabalhar nesse ecosistema é preciso ter determinadas características, e algumas das quais são altamente reprováveis pela comunidade que adopta o gpl como standard…e isto nunca vai mudar…
Eu não vejo problemas no gcc, muita gente não os vê, e não são motivo para se avançar para outro compilador…pelo menos é o que eu penso e o que muitos pensam…
Não é uma questão de olhar para o futuro, é uma questão de opinião…
Mas como já disse cada um usa o que melhor lhe servir, são os dois bons compiladores 😉
cmps
@ lmx
o meu primeiro comentário começa porque disseste que o LLVM é ultrapassado – relê o que escreveste! Claramente um comentário mal informado. A tua avaliação é baseada em suporte incompleto para um dos compiladores, enquanto no FreeBSD podes comparar com suporte completo para ambos e nas versões mais recentes! Se achas que isso permite tirar conclusões equivalentes quanto à qualidade inerente do LLVM, bem… Isso apenas permite fazeres uma escolha para a tua situação
” e não são motivo para se avançar para outro compilador…”
não sei se sabes, mas há muitos compiladores, o GCC não é sagrado e todo poderoso! É sem dúvida bom, mas as pessoas têm escolha, têm compiladores específicos melhores, só que custam uma fortuna! É isso que me faz confusão, implicares com as escolhas porque achas que a tua escolha seria a melhor para todos!
Nunes…
Quando me referi ao compilador obsoleto…
Referi-me em concreto á teimosia na altura do projecto bsd(influenciados pela apple), de fincar o pé e não querer usar o gplv3…
Por isso quando disse que não valia a pena andarem com um compilador obsoleto, referia-me ao gcc 4.2…foi a ultima versão gplv2
Se calhar não me expliquei bem, mas tu secalhar também interpretas-te mal…
a minha opinião é de que o llvm não chega perto do gcc…devido á falta de suporte…
Quando avalias um compilador tens que ver se ele é bom a nível de features/suporte, para mais que um SO…caso contrario andas com um compilador diferente em cada SO…não faz sentido…
Para MAC ou bsd, acredito que o llvm seja bom, mas e o resto???
O gcc não funciona só em MAC/bsd…não é comparável…
Mas cada um tendo em conta os locais onde vai trabalhar, escolhe um ou outro tendo em conta as suas necessidades.
Eu não acho o llvm ultrapassado, se fossemos a ver a coisa por ai…diríamos que o gcc está ultrapassado, em vez de ser o llvm/clang, porque este ultimo é mais recente…
Mas do meu ponto de vista está longe ainda de adquirir um estatuto universal, como o gcc tem…
Eu não acho que a minha escolha é a melhor para todos…é só a minha escolha 😉
No caso em concreto do bsd andar com essa novela anos a fio…é que acho que foi mau, e é de lamentar que se façam testes com gcc4.2 e os comparem com o llvm…
De qualquer das formas acho que tinha sido muito mais proveitoso, sendo que o gcc é o compilador com maior suporte…o projecto bsd juntar-se e trabalharem lado a lado para melhorar ainda mais o gcc, ao invés de dizerem como já ouvi que o gcc é mau…tudo porque não querem utilizar o gplv3…
O gcc não é perfeito…muito longe disso, mas o llvm ainda é mais imperfeito, tendo em conta a falta de suporte comparativamente…
desta forma não percebo a desculpa esfarrapada do bsd vi dizer que muda porque o gcc não tem o suporte desejado…
Eu sei que existem outros compiladores, são as carradas, uns melhores outros piores e alguns pagos a peso de ouro, mas para mim…escolho o gcc…
Va eu para a arquitectura que for…o gcc está lá…e isso é uma mais valia.
Mas cada um usa o que quiser, e eu não tenho nada contra isso, mas assumam o porque é que usam x em vez de y…
A desculpa do fraco suporte não pega, é isto que me chateia, não é eles deixarem de usar o gcc, ou as pessoas deixarem de usar o gcc…isso não me chateia nada, mas chateia-me o facto de publicamente dizerem que largaram o gcc porque tem fraco suporte…
Ou ainda que o llvm é um canhão comparativamente com o gcc(…versão 4.2),…isso é que não acho correcto.
Sendo o gcc o mais usado, acho que seria uma boa escolha para todos, e seria adorável de ver mais pessoas envolvidas no processo de melhoramento, se o bsd acha que o gcc não esta bem ao gosto deles…porque não avançar sobre o projecto e melhorar o que eles acham que poderia ficar melhor??
Eu ainda hoje continuo sem saber porque é que o gcc é uma má escolha para o bsd…
É uma boa escolha para a maioria, mas para o bsd não…porquê?
Se é uma má escolha, porque é que o utilizavam no passado??
De resto cada um escolhe aquilo que lhe parece melhor como já disse acima, e eu também tenho a minha escolha, mas não é um “cavalo de batalha”…é so a minha escolha 😉
cmps
de certeza que deve haver um acordo qualquer, que vai para alem da simples doação.
Até contribuem mais do que aquilo que se pensa, afinal de contas são elas que financiam as fundações de software livre.
Triste é os programadores, que até são dos melhores do mundo, estarem tão tapadinhos com o conceito do opensource que não se apercebem que quem lhes paga o salário é uma das grandes empresas do sector, que assim tem software de graça no fim.
Visto que a ps4 utiliza uma arquitectura de computadores de secretária x86 ou x64 e usa software linux será possível um dia jogar nativamente jogos ps4 num pc normal? que tipo de protecção usará a ps4 para os jogos correrem apenas na consola? será nos bluerays? peço desculpa secalhar nem a consola nem tem jogos em blueray e apenas usa um servidor para fazer download dos jogos… um dia mais tarde era engraçado correr os jogos sem emulador 😀
Não é Linux, é FreeBSD, a Sony pode modificar o FreeBSD sem ter de mostrar o que modificou, logo, sim, é possível, mas alguém vai ter bastante trabalho a hackar o PC para jogar PS4.
Não ha-de ser bem assim o Nelson…
Então não te lembras aqui ao lado em Espanha que houve um developer que desenvolveu uma solução para desbloquear a PlayStation e foi condenado em tribunal!!!
Pois é…eles recebem na Comunidade, mas fecham tudo!!
cmps
Deve ser mais fácil por um Mac! Que tem a mesma base unix!
É indiferente a raquitetura dos processadores usadas nos computadores da Apple é x86.
Ter por base unix ou não é só software e é independente da arquitetura usada.
Expliquei-me mal. Queria dizer que deve ser mais fácil portar os jogos da PS4 para o mac ox!
Não é por o Mac ser UNIX que permite a outros SO Unix correr facilmente software criado para Mac!
Da mesma forma não é de esperar que seja mais fácil portar para Mac os jogos criados para PS4, pois de certeza que a Sony desenvolveu muitas frameworks e APIs próprias!
Pode-se usar um kernel Linux como base, pois existe uma biblioteca (libbsd) que facilita o port das API deste Unix.
esse é o conceito utilizado em todo o que é binary blob no linux…
existe sempre um conceito de interface com licença lgpl no meio entre software livre e software proprietário…
no entanto o software lgpl penso que tenha que ser devolvido a comunidade…já o proprietário não é imperativo, mas dava jeito lol 😀
cmps
Mas para criar um emulador da PS4 para PC que evita-se ser fechada por algum recurso da Sony seria complicado. Isto implicaria clonar as API específicas da consola.
A parte BSD é trivial, se necessário cria-se uma distro Linux From Stratch para facilitar o desenvolvimento.
A parte mais complicada é o ligGNM que é a biblioteca gráfica low-level que a PS4 utiliza.
Além disso é a partir do ligGNM que corre uma versão modificada do OpenGL 4.2 e um wrapper DX11, para facilitar a compilação de jogos.
Emular uma API gráfica low-level é complicado, se usarmos o DirectX ou o OpenGL padrão, o que significaria que somente na próxima geração de gráficas é que seria exequível. Se usarmos o Mantle API da AMD que até será lançado para Linux (e apto para criar wrappers para o Wine), aí podemos emular o libGNM de forma mais eficiente.
Os primeiros devkits da PS4 até usavam o Windows 7 com um port do libGNM para correr os primeiros projectos dos jogos, depois usam um sistema dual boot Windows/FreeBSD (Orbis) para compilar o código e depois correr os projectos no SO nativo da consola.
De resto, é basicamente
PS3 tb era um freeBSD, então não estou surpreso 🙂
Certo, mas com arquitectura CELL. A PS4 além de correr num ambiente *NIX funciona em arquitectura x86/AMD64, o que pode tornar os ports de jogos mais simples alem de poder, em teoria, facilitar a existencia de emuladores mais eficientes.
A PS3 usava as bibliotecas usermode do BSD, e parte da API era compatível com a norma POSIX; mas o kernel não era BSD, mas um derivado do eCos.
Agora a PS4 é que usa um kernel BSD de raíz.
Já a X1 usa um derivado do Hyper-V com o kernel do Windows 8.1, formando dois ambientes virtuais sobre o NT modificado para a consola:
Um port do WinRT x86, embora com segurança reforçada, e outro ambiente designado por Xbox OS que é uma versão do DirectX 11.2 com alguns serviços do Windows especificamente desenhados para a Xbox One (para reduzir o consumo de memória).
Comparado com as outras consolas da Microsoft que usavam um kernel criado de raíz, embora baseado no DirectX mais uns pózinhos do NT API, a Xbox One usa o mesmo kernel (ou uma derivação) do Windows para PC. Até suporta NTFS, e o software de sistema no disco rígido usa NTFS (como foi revelado por um teardown), abandonando o proprietário FATX.
Cada vez mais me as grandes companhias são uns parasitas e só querem esplorar o consumidor. A sony utiliza open source e não ajuda os serviços que utiliza…
A culpa é do consumidor que não se torna mais exigente.
Relacionado com a industria dos jogos eu deixei de comprar jogos do franshising Call of Dutty porque o serviço que prestavam aos jogadores de PC era simplesmente miserável, as consolas é que tinham a atenção toda. No outro dia li uma noticia e jogos da Ubisoft onde alguém da companhia dizia que para PC não era necessário optimizar os jogos se fizesse falta comprava-se processador novo, devem querer que uma pessoa não tenha um computador mas sim um servidor para jogar, se não mereço a mesma atenção que as consolas o meu dinheiro também não levam.
Achas que é a mesma coisa optimizar um jogo para um consola, que tem hardware específico, e para um computador que tem milhões de combinações específicas?! Lol. É o mesmo problema da performance do android vs “iPhone” (repara que estou a comparar um SO a um terminal, não foi ao acaso).
Além de que a percentagem de pirataria em PC é francamente superior à das consolas.
Cumps
Eu sei que é completamente diferente optimizar um jogo para PC onde o hardware é genérico enquanto que nas consolas é especifico, mas isso não é razão para não se tentar, tens muitas companhias que o fazem e é a essas que eu dou o meu dinheiro. Aquelas que querem simplesmente “xular” os jogadores de PC não levam o meu dinheiro. Que eu saiba o meu dinheiro é igual ao dos jogadores da consolas logo mereço o mesmo tratamento. Se eu pago não tenho nada a ver com a pirataria e existe também pirataria para consolas.
vota com a tua carteira… mas as consolas é onde esta a maior parte do lucro
Mas toda a gente diz que a Sony usa os serviços open source e não ajuda.
Alguém decente o suficiente para apresentar provas concretas em como não ajuda? Acho que não tem interesse nenhum mandarem essas “postas” para o ar em tom acusatório sem provas. Há que investigar primeiro e perceber se está a ser dado algum contributo por parte da Sony para o open source. E também há que ter em mente que não são obrigado a tal, senão o conceito do open source ficaria deturpado e deixaria de fazer sentido tal como é hoje.
Preocupem-se em arranjar dinheiro para comprar a consola e respectivos jogos e deixem-se de falsos moralismos acerca de factos que desconhecem.
O senhor falou. Esta é a Palavra do senhor!
boas..
pois…a sony também contribui, mas se calhar contribui pouco…deveria contribuir mais…
Outras empresas como a intel/amd/ibm contribuem muito, mas…como é sabido, só contribuem, porque caso contrario os seus productos não correriam linux por exemplo 😀 , ou seja contribuem por necessidade…
Só a IBM espera investir “1 billion Dollars” nos próximos 5 anos…
cmps
Pode-se fazer dinheiro a partir de OpenSources?
claro…
o máximo que poderes 😉
Há muitas licenças…
se for gpl, ou lgpl, tens que libertar o código fonte que evoluíste para a comunidade poder também ela aproveitar os teus avanços…
Se utilizares mais algum código que não seja gpl ou lgpl e que tenha a tua licença , esse é teu…
cmps
Está explicado o porque de estar a dar tantos problemas…
boas…
O porquê não esta explicado…mas existem algumas hipotses, uma delas é o facto do talvez ter estado em teste pouco tempo…
Eu não sei, mas não é por ser bsd que dá problemas…muito pelo contrario, o bsd é muito estável…mais que o windows por exemplo…
A questão da sabotagem nem sei o que pensar dela…mas a ser verdade é grave…
cmps