sexta-feira, 27 de junho de 2014

iOS x Android x Windows Phone x Firefox OS x Ubuntu Touch

Olá pessoal!

Nesse post vamos comparar os cinco sistemas operacionais móveis abordados anteriormente aqui no blog: o iOS e o Android, que dominam o mercado desde o lançamento dos smartphones; o Windows Phone, que começou um pouco atrasado, mas já possui grande destaque no mercado; e os novatos Firefox OS e o Ubuntu Touch.

Para facilitar essa comparação, vamos compará-los em três quesitos: interface, aplicativos, e por fim, desempenho.


- Interface:

Nesse quesito, os sistemas mais criativos e inovadores são o Ubuntu Touch e o Windows Phone. Já o iOS e o Android, são bem parecidos, enquanto o Firefox OS parece ser uma junção dos dois.
O Ubuntu Touch tem uma interface visualmente muito agradável, com os recursos do aparelho acessíveis em poucos toques, e uma das principais características é a completa abolição dos botões.
No sistema da Microsoft, os ícones grandes e quadrados tornam sua interface única entre os outros sistemas, e deixa seu uso muito simples e intuitivo.
Os astros, iOS e Android, parecem ter a fórmula para o sucesso, suas interfaces podem não ser tão bonitas quanto a do Ubuntu, mas sempre agradaram o usuário com sua facilidade de uso. Porém, a interface da Apple peca na pouca personalização permitida ao usuário.
Já o Firefox OS parece seguir a fórmula dos líderes do mercado, sua interface tem funções muita parecidas com a do iOS, e também com a do Android, parecendo uma combinação das duas.


-Aplicativos:

Quando o assunto é apps, a Apple e o Google lideram. Há mais tempo nesse mercado, o número de apps nas suas stores já chegam na casa do milhão. Porém, a App Store, da Apple, leva vantagem na qualidade dos apps, pois estes são avaliados antes de serem disponibilizados. Enquanto a Google play, por ter um modelo aberto, sofre com apps maliciosos.
O Windows Phone sofre a consequência de ter chegado atrasado no mercado de smartphones, sua store ainda está longe de alcançar o número de apps da Apple e da Google, mas por ser fácil a criação de apps para esse sistema, isso pode não estar muito longe de acontecer.
Os recém-lançados Firefox OS e Ubuntu Touch obviamente ainda não batem de frente com os principais sistemas, porém eles possuem grande potencial. Os apps do Firefox OS são feitos com base em HTML5, mesma base da grande maioria dos apps disponíveis, o que facilita muito a migração. Já o Ubuntu Touch usa a mesma estrutura do Linux para PC, com isso basta adaptar os softwares para uma versão portátil, e toda a oferta de aplicativos que o computador possui, também estará disponível para os smartphones.


-Desempenho

Nesse ponto o iOS parece ser o grande vencedor. Como o desempenho depende do software e do hardware, e dentro das concorrentes a Apple é a única que desenvolve os dois em conjunto, essa interação é perfeita, o que resulta num ótimo desempenho.
Dentro dos sistemas licenciáveis (onde a plataforma pode ser usada por qualquer fabricante, desde que os pré-requisitos sejam atendidos), a Microsoft aparece como a empresa mais exigente, o que garante um bom desempenho para o Windows Phone.
Por ser o sistema móvel mais utilizado no mundo, o Android sofre com perda de desempenho em vários aparelhos, pois muitos hardwares não interagem bem com o sistema. Além disso, as atualizações do Android são cada vez mais exigentes, e isso faz com que aparelhos mais antigos e de baixo custo não possam ser atualizados, e seus usuários prejudicados.
Por outro lado, o sistema do Mozilla foi pensado justamente para esse mercado de aparelhos de baixo custo, ou seja, eles terão um bom desempenho mesmo com um hardware mais limitado.
Já o Ubuntu Touch terá dois segmentos, um para os aparelhos de alto rendimento, e outro para os de baixo rendimento, e isso faz com que o desempenho seja adaptado para as limitações de cada hardware.


Para nos ajudar nessa comparação, coloquei abaixo três vídeos. No primeiro, os três principais sistemas são colocados frente a frente. Nos outros dois vídeos, os sistemas mais novos são analisados pela tecmundo.


Após essas comparações, vimos que a experiência do Android e do iOS contam muito, mas as inovações do Windows Phone, do Ubuntu Touch e do Firefox OS, mostram que esses sistemas são ótimos concorrentes, só acrescentam ao mercado e dão mais opções ao consumidor. A verdade é que não há um sistema melhor que o outro, todos tem suas vantagens e desvantagens, cabe a você escolher aquele que mais satisfaz suas exigências.




Referências:
http://www.techtudo.com.br/artigos/noticia/2013/04/android-ios-ou-windows-phone-qual-e-o-melhor-sistema-para-smartphones.html
http://pt.wikipedia.org/wiki/Firefox_OS
http://www.tecmundo.com.br/firefox/35829-primeiras-impressoes-firefox-os-video-.htm
http://www.tecmundo.com.br/firefox/26308-firefox-os-vai-rodar-75-dos-aplicativos-de-ios-e-android.htm
http://www.tecmundo.com.br/ubuntu/36336-o-ubuntu-phone-tem-chances-contra-o-android-.htm
http://www.tecmundo.com.br/ubuntu/37062-primeiras-impressoes-ubuntu-touch.htm

Windows Phone

Fonte

E no clima de greve e gripe (obrigado inverno) vamos finalizar as postagens dos sistemas operacionais móveis, nessa postagem falaremos sobre o Windows Phone.

Comparação entre o Windows Mobile e o Windows Phone. Fonte
Desenvolvido pela Microsoft e com foco na fluidez e no baixo consumo de hardware, o Windows Phone é o S.O. Móvel que diferente dos outros mostrados até agora (Firefox OS e Ubuntu Touch) possui código, ou seja, seu desenvolvimento só é feito através de funcionários da Microsoft ou de empresas/pessoas com autorização da mesma.

Sucessor do Windows Mobile, o Windows Phone deixou de ser um sistema focado no mercado empresarial, onde disputando espaço no mercado contra a BlackBerry, e passou a ser focado no mercado consumidor, onde enfrenta principalmente o IOs e o Android.



O kernel utilizado atualmente (a partira da versão 8) é o Windows NT, mesmo kernel utilizado no Sistema para computadores Windows 8 e no sistema operacional do Xbox One. Isso significa que eles compartilham as configurações de segurança, conexão, arquivos, etc... Mas isto não implica que uma aplicação seja compatível com todas as plataformas.

Boa parte dos celulares com Windows Phone possuem um hardware modesto, e apesar do sistema não possuir um numero exorbitante de aplicações as que já existem apresentam bons resultados sem perder desempenho. Em matéria vista no Tecmundo, de acordo com o site All About Windows Phone, 99,6% dos app são compatíveis com aparelhos com 512 MB de memoria RAM, e 98,4% são compatíveis com aparelhos com uma memoria ainda menor, 256 MB. Isso faz com que por mais simples seu celular com Windows Phone seja, ele não vai sofrer com problemas de aplicativos incompatíveis ao seu sistema. (exceto em jogos extremamente pesados é claro).
Fonte



Metro em todos os aparelhos. Fonte
A interface utilizada pelo sistema é a Metro, que tem o objetivo de ser simples, limpa e moderna. A interface Metro foi desenvolvida justamente para o Windows Phone, mas logo depois migrou também para o Xbox e para o Windows 8. Apesar de Muitas pessoas ainda não gostarem da Metro, esse modelo minimalista e de cores solidas tem se tornado popular devido a sua clareza e sua economia de recursos.


Para desenvolver para Windows Phone você pode utilizar HTML, Javascript, CSS, C#, C++, Visual Basic, Silverlight, etc. Podendo utilizar várias linguagens em uma mesma aplicação. Para mais informações consulte o site de desenvolvedores de Windows Phone da Microsoft, DevCenter.

Como sempre, no final da postagem deixo videos para quem quiser ver se se aprofundar mais no assunto, o primeiro vídeo é do pessoal do tecmundo fazendo uma analise do windows phone 8.1 (versão atual do sistema),




Obrigado e se lembre de deixar seu comentário.


Fontes:
http://pt.wikipedia.org/wiki/Windows_Phone
http://windowsphonebrasil.com.br/categoria/desenvolvimento/
https://dev.windowsphone.com
http://pt.wikipedia.org/wiki/Windows_Phone_8
http://www.digitaltrends.com/computing/rumor-xbox-one-will-run-windows-8-apps/#!4XXTf
http://www.tecmundo.com.br/windows-phone-8-1/53994-como-a-microsoft-consegue-rodar-o-windows-phone-8-1-com-512-mb-de-ram.htm

segunda-feira, 16 de junho de 2014

Sistemas Operacionais - Uma visão geral


·        O que é?

De acordo com Tanenbaum e Woodhull (Sistemas Operacionais, 2000),
O software de computador pode ser dividido, grosso modo, em duas espécies: programas de sistema, que gerenciam a operação do computador em si, e programas aplicativos, que executam o trabalho que o usuário realmente deseja. O programa de sistema mais fundamental é o sistema operacional, que controla todos os recursos do computador e fornece a base sobre a qual os programas aplicativos podem ser escritos.
        Assim, sistema operacional é essencial para o funcionamento do computador, pois é o software intermediário entre os aplicativos e o hardware, fazendo a conexão entre ambos.

·        Como funciona?

o   Núcleo (ou kernel) – é o software que contém os componentes centrais do sistema operacional. É ele que decide quais aplicativos tem acesso ao hardware e gerencia o acesso à memória RAM, entre outras coisas.
§  Execução de programas – o sistema operacional gerencia a execução de programas, tornando essa mais eficiente. Também é graças a ele que os aplicativos são mais simples de desenvolver e executar, pois o kernel do SO faz o trabalho “mais pesado”, por assim dizer.
§  Modos – há dois modos básicos num SO: o modo protegido (protected mode) e o modo supervisor (supervisor mode). O modo supervisor é o utilizado pelo kernel para as tasks que precisam de acesso irrestrito ao hardware. Ele entra em cena quando o computador está ligando, por exemplo, ou quando um programa faz uma interrupção e o controle volta para o kernel. O modo protegido é utilizado basicamente para quase todo o resto: as aplicações rodam no modo protegido e dependem do kernel para interagir com o hardware.
§  Memória virtual – faz com que o usuário pense que há muito mais memória RAM disponível do que realmente há. Graças a quem? Ao kernel, é claro. Ele decide que memória cada programa vai usar num determinado momento, permitindo ao SO usar a mesma locação de memória para tasks variadas.
§  Multitarefa – Adivinhem? O kernel tem um pedaço de software chamado scheduler, que determina quanto tempo cada programa levará executando, e em que ordem serão executados. Isso permite executar vários programas no mesmo computador, dando a impressão de que estão sendo executados ao mesmo tempo.
o   Networking – Computadores, mesmo executando sistemas operacionais diferentes, podem se conectar para compartilhar recursos. Isso permite que o SO de um computador acesse outro computador para usar recursos do outro como se estes estivessem presentes no computador local.

Referências:
OPERATING System. Disponível em: <http://en.wikipedia.org/wiki/Operating_system>. Acesso em: 16 de junho de 2014.
TANENBAUM, Andrew S; WOODHULL, Albert S. Sistemas Operacionais: Projeto e Implementação. Tradução de Edson Furmankiewicz. Porto Alegre: Bookman, 2000.

sábado, 14 de junho de 2014

Ubuntu Touch

fonte

Ainda em desenvolvimento pela Canonical e com parceiros da comunidade Ubuntu, o Ubuntu Touch é o sistema operacional mobile que possui foco na portabilidade de dispositivos, no desempenho e no melhor aproveitamento da interface gráfica.



Também conhecido como Ubuntu Phone, ou Ubuntu Mobile, o Ubuntu Touch teve seu conceito anunciado no fim do ano de 2011, quando a foi anunciado que a versão 14.04 do Ubuntu (sistema operacional para computadores) iria ter suporte para Smartphones, Tablets e TVs. No começo do ano passado (2013) foi revelado o sistema e lançado o download da versão de desenvolvedor.


fonte
Assim como o Firefox OS, o Ubuntu Touch utiliza o Kernel Linux, o mesmo usado no Android, fazendo assim o seu sistema ser compatíveis com todos (ou pelo menos a maioria) dos dispositivos que rodam o Android.


fonte

A primeira vista o sistema parece ser uma versão menor do Ubuntu para computadores, e é essa a intenção mesmo.

O grande foco e aposta do Ubuntu Touch é a compatibilidade de dispositivos, fazendo com que seu computador, Smartphone e até TV se tornem um aparelho só, compartilhado seus arquivos e funcionalidades para uma maior praticidade ao usuário.

Como o SO Portátil e o SO para computadores do Ubuntu trabalham com uma mesma estrutura, a comunicação entre os diferentes dispositivos fica bem mais fácil. Os Aplicativos encontrados na versão de desktop do sistema vão ser compatíveis com os aparelhos com o Ubuntu Touch, bastando apenas alguns tratamentos para a adequação da interface no dispositivo.

Outro objetivo da Canonical é que seu SO portátil esteja tanto em Smartphone com hardware fraco quanto nos mais robustos, e trazendo atualizações constantes para os mesmos, fazendo assim com que o consumidor sempre possuas as ultimas novidades tecnológicas em suas mãos. Entretanto os requerimentos de hardware ainda exigem um hardware mais potente (algo comum na faze de desenvolvimento).


No que se diz a respeito do desenvolvimento de aplicativos, o Ubuntu Touch é bem flexível pois para quem já desenvolve para Ubuntu, é só adequar a interface ao tamanho reduzido da interface touch. E para quem só possui conhecimento em programação web, o ubuntu touch suporta programas em HTML 5 (semelhante ao firefox OS). Conheça mais sobre o kit de desenvolvimento aqui.

O Ubuntu Touch também possui um emulador para quem deseja testar o sistema sem ter que instalar em seu aparelho, entretanto, o emulador que eu consegui encontrar só se encontra disponível para ser instalado em computadores com o Ubuntu como sistema operacional, sendo assim, não pude testar o sistema, mas vou deixar o link aqui para quem tiver o Ubuntu poder testar.

Nos finais das publicações sempre procuro deixar videos curtos relacionados ao tema, e nesse não vai ser diferente, estou deixando um vídeo das primeiras impressões do pessoal do tecmundo quando o ubuntu touch foi lançado oficialmente (CES 2013) e um review (muito bom) da versão de desenvolvedor por Tim Schofield (em ingles).





Qualquer coisa que precise ser editada ou adicionada eu atualizarei a publicação. Lembre-se sempre de comentar.
Obrigado

fontes:
http://www.ubuntu.com/phone
http://developer.ubuntu.com/
http://en.wikipedia.org/wiki/Ubuntu_Touch
http://www.techrepublic.com/blog/10-things/10-reasons-why-the-ubuntu-phone-should-be-your-next-mobile-device/





sábado, 7 de junho de 2014

Breve história do Linux

DOCUMENTÁRIO SOBRE O LINUX

Olá pessoal, estava aqui pesquisando algo sobre o Linux como de costume e encontrei um belo documentário que conta como tudo começou. Aos amantes do Linux, é um prato cheio e aos que não gostam é uma oportunidade de conhecer um pouco sobre sua história.

Espero realmente que gostem, segue o documentário abaixo:




domingo, 1 de junho de 2014

Firefox OS




Sistema B2G em um sansung
galaxy s2. Fonte
Originalmente apresentada como Boot to Gecko (B2G) o firefox OS é um novo sistema operacional de código aberto disponível para Smartphones. Desenvolvido pela Mozilla, esse sistema prioriza o baixo consumo de memoria e de processamento para assim ser instalado em Smartphones simples e baratos, que consequentemente, possuem hardware mais fracos.








Os aplicativos utilizados no Firefox OS são desenvolvidos de maneira semelhante as páginas WEB, utilizando linguagens como HTML5, CSS e Javascript. Motivo esse que estimula novos desenvolvedores a
criar suas aplicações e publica-las na marketplace (central de aplicativos firefox).



Existem três tipos de aplicativos no Firefox OS:
Aplicativos Hospedados (host app): Modo mais comum e simples de aplicativos,como o nome sugere, eles ficam hospedados em servidores (assim como as paginas web) e não possuem acesso a recursos mais profundos do sistema (acelerômetro, câmera, etc..). Ao meu ver, são basicamente atalho para as páginas web do aplicativo relacionado.
Aplicativos Empacotados (Packaged app): São os aplicativos com o conceito de "app" que estamos acostumados, são instalados e possuem seus conteúdos salvos no aparelho, alem disso, utilizam os recursos mais profundos dos sistema.
Aplicativos Hibridos (Hybrid app): São aplicativos que misturam os conceitos de aplicativos empacotados e aplicativos hospedados, ou seja, são instalados no aparelho, possuem acesso aos recursos mais profundos do sistema e possuem acesso com um servido de hospedagem para recursos de atualização, funcionamento e etc..

Aquitetura do Firefox OS. Fonte
A arquitetura do sistema é baseada em três modulos:
Gonk: Camada de baixo nível, onde a abstração de hardware e o kernel são encontrados. O kernel utilizado é baseado na versão de código livre do android, para que o sistema possa utilizar ferramentas comuns no desenvolvimento para android e também para que o sistema seja suportado por mais dispositivos, aumentando assim a quantidade de aparelhos compatíveis com
Gecko: Camada responsável por implementar os padrões de HTML 5, CSS e Javascript, linguagens no qual o sistema foi construídos. Além disso essa camada é responsável por fazer com que os aplicativos criados para o firefox OS sejam compatíveis com outro sistemas que o navegador seja utilizado.
Gaia: É a camada responsável pela interface gráfica do sistema, ou seja, tudo que é carregado para ser exibido ao usuário.

Experimente você mesmo!


Calma, voce não precisa ir comprar um aparelho com o sistema para testar. O Firefox OS possui um simulador para que você possa experimentar, testar e utilizar os sistema, com as limitações de um simulador é logico.
O simulador é uma extensão para o navegador Mozilla Firefox e pode ser instalada através desse link aqui.
Caso tenha duvidas de como instalar ou como usar o simulador, basta usar esse link aqui, ele possui alguns guias que podem te ajudar. Lá também se encontra instruções de como criar seu app para o firefox OS.
Teste com o simulador e comente o que achou, mas lembre-se, apesar do simulador ser bem construído, ainda é comum acontecer erros e o programa parar de funcionar.


Para quem não quiser instalar o simulador vou deixar dois videos, um da analise do sistema  em uma das suas primeiras versões em um aparelho mais barato, e o outro (em ingles) em um aparelho mais robusto.






Fontes:
http://pt.wikipedia.org/wiki/Firefox_OS
http://www.mozilla.org/
https://wiki.mozilla.org/
http://allfirefoxos.com/


sexta-feira, 16 de maio de 2014

SaaS - Software como um Serviço


Como começou?

Pode ser que você já tenha visto a sigla SaaS, mas não tenha tido a menor idéia do que isto significa. A sigla vem do inglês Software as a Service (SaaS), que no Brasil ganhou a tradução literal de Software como Serviço.


software como serviço é um programa que somente é utilizado através da internet, ou seja, você não precisa ter ele instalado em seu computador para usá-lo.
Hoje em dia, muitas empresas de TI desenvolvem aplicativos e oferecem seus serviços através da internet. O famoso site Paypal é um software como serviço, pois você não precisa ter um programa em seu computador para operar suas compras, você pode fazer as transações pelo site e pagar pequenas taxas por isso.

Como surgiu o Software como serviço?

Antes dos anos 90 e da popularização da internet, toda empresa que precisava de um software especifico para uma determinada função, seja controle de estoque, pagamento, emissão de nota fiscal, entre outros, ela precisava comprar um software para ser instalado em seus computadores. A empresa precisava também obter a licença para usar as funcionalidades deste software e devia criar servidores próprios para interligar os computadores que iriam usá-lo.

As empresas estavam ficando insatisfeitas com os altos custos para manter um software, que consistia em:
  • Comprar o software;
  • Pagar altas taxas de licenciamento para acessar recursos e funcionalidades do software;
  • Dispor de hardware necessário para suportar o software;
  • Montar um servidor próprio para interligar os computadores que fossem utilizar o software;
  • Pagar taxas de manutenção e atualizações.
As empresas começaram a exigir das empresas de TI um modelo mais viável para a compra e utilização dos programas.

Chega a internet

Com a popularização da internet no inicio da década de 90, as empresas de TI inventaram um meio de hospedar o software na rede para oferecer os serviços do aplicativo de forma online. Com isso, o cliente não precisaria mais gastar com hardware e nem com licenças, somente iria pagar para utilizar os serviços prestados pelo software.

O alicerce do SaaS

software como serviço não poderia existir se não fosse pela Cloud Computing (Computação em nuvem), uma tecnologia que oferece espaço para armazenagem de dados na rede virtual da internet. Daí o significado do nome, uma vez que o espaço de armazenagem não é físico, e sim, um espaço que fica online.
Todo software como serviço precisa de um conjunto de servidores compartilhados para oferecer ao cliente um armazém de dados que ele possa acessar de qualquer computador, bastando apenas estar conectado à internet.

Desafios do SaaS

O SaaS foi divisor de águas no mundo dos negócios, algumas empresas logo abraçaram a idéia, enquanto outras se mantiveram com o pé atrás. Afinal, que segurança a internet pode oferecer para dados sigilosos de uma empresa?
Mesmo sendo um modelo viável em termos de soluções de TI, o SaaS ainda enfrenta muitos desafios no que toca a questão de confiabilidade e segurança.
Muitas empresas não gostam da idéia de compartilhar dados secretos através da internet, pois acham que não há segurança alguma na rede virtual. Aqui está o maior desafio do modelo SaaS, demonstrar ao cliente que os mecanismos de hospedagem do aplicativo oferecem toda a segurança na proteção de seus dados.
Talvez este seja o maior objetivo de um fornecedor de SaaS: ganhar confiabilidade junto aos clientes.

REFERENCIA:
Software como um Serviço: Como tudo começou. Disponível em: <https://www.asaas.com/blog/software-como-servico-como-tudo-comecou/> Acessado em 16 de maio de 2014.  

domingo, 11 de maio de 2014

Noções Básicas de Sistemas Operacionais

O que é Sistemas Operacionais?
Segundo Paulo José (2002), SO é um tipo especial de software (os programas) que gerencia informações para que a máquina se comporte de uma determinada maneira. Pode se dizer que SO é o chefe dos softwares, pois seu objetivo é controlar a máquina para que os outros programas rodem.

Objetivo dos SO:
Reduzir a complexidade de uma tarefa, melhor dizendo, esconder a complexidade de uma tarefa para os programadores comuns. Ele fornece um conjunto de comandos, conhecido como: system calls, que são usados pelos programadores para se comunicar com os recursos de hardware (NETO; COELHO).

São responsáveis pelos:
Os sistemas operacionais são responsáveis pelo gerenciamento de memória, do processador, de arquivos, de proteção e de dispositivos (para saber mais leia  arquivo de Romildo Martins Bezerra, link disponível abaixo).

Tipos de SO:
Eles podem ser divididos de acordo com a interação dos seus usuários com os programas, número de programas que estão sendo executados simultaneamente, e o tempo de resposta que é exigido, afirma Maria Aparecida e José Carlos (2006). São eles: Sistemas Operacional Batch, Sistemas Operacional monousuário-monotarefa, Sistemas Operacional monousuário-multitarefa, Sistemas Operacional multiusuário-multitarefa, Sistemas Operacional de rede e Sistemas Operacional de tempo real.

Referências:
http://www.metropoledigital.ufrn.br/aulas/disciplinas/sist_operacional/aula_03.html
http://www.inf.puc-rio.br/~inf1503/material/01_Ap_Nocoes.pdf
http://www.inf.ufrgs.br/~alvares/INF01040/ApostilaConceitosBasicos.pdf
http://www.ifba.edu.br/professores/romildo/downloads/ifba/introducao-processos-memoria.pdf

O Plágio

O que é o plágio?
Referencia ao manga Naruto, onde
quem possui esse olho pode copiar os
movimentos de seus inimigos. Fonte
De acordo com o Wikipédia, site que serviu de fonte para nosso ctrl-c/ctrl-v em nossa fase inicial de estudo ( até hoje para alguns): "O plágio é o ato de assinar ou apresentar uma obra intelectual de qualquer natureza (texto, música, obra pictórica, fotografia, obra audiovisual, etc) contendo partes de uma obra que pertença a outra pessoa sem colocar os créditos para o autor original. No acto de plágio, o plagiador apropria-se indevidamente da obra intelectual de outra pessoa, assumindo a autoria da mesma.".

Em parte dos países do globo terrestre, o plágio é considerado antiético, na outra parte, além de ser considerado antiético é considerado crime, no caso do brasil através da lei 9610 do código penal brasileiro.

Crescemos plagiadores?
Imagem utilizada em um blog contendo
diversos trabalhos escolares prontos.  fonte
Para entregar aquele trabalho escolar que a professora do fundamental pediu muitas vezes recorríamos ao famoso "copiar e colar" do conteúdo da internet e entregávamos aos professores, que, por muitas vezes, não analisavam profundamente nossos trabalhos ou não davam as orientações certas sobre como fazer uma pesquisa. Apesar desse ato ser famosos naquele aluno que tinha preguiça e simplesmente copiava o conteúdo que encontrava, essa atitude de plágio também ocorriam naqueles alunos que entenderam o assunto da pesquisa mas, devido ao bom conteúdo que encontraram, não encontravam palavras melhores para o assunto encontrado.
Com a grande acessibilidade a conteúdos bem escritos e elaborados surge uma certa dificuldade de escrever sobre esse mesmo assunto sem a semelhança ou referencia com outros textos.

As citações e criações de referencias bibliográficas servem para ajudar você a criar um conteúdo com base em outro já existente, mas não pense que copiar todo um conteúdo e colocar a referencia não é plágio. As referencias e citações servem para você demostrar o ponto de vista de outro autor e depois colocar o seu ponto de vista, assim você mostra as diferenças ou semelhanças de opiniões entre você e o autor citado.

Com a acessibilidade da internet e um acervo de informações que cresce a cada dia, como criar um conteúdo que não se assemelhe a nenhum outro já disponível a mesma? Esse grande numero de informações já disponíveis acabam passando uma falsa sensação, para aqueles novatos em desenvolver trabalhos acadêmicos, de poderem copiar grande parte de um conteúdo já existente, afinal "se já existem vários conteúdos semelhantes na rede, um a mais não vai fazer diferença.".

Abaixo coloquei um video bem curto falando sobre o plágio.



Escreva nos comentários suas experiencias a respeito de plágio no seu inicio de estudo. como ele era tratado?


referencias:
Plágio, Wikipédia, http://pt.wikipedia.org/wiki/Pl%C3%A1gio
Plágio na internet: o que fazer?, por Luiz Castro Junior
Significado de plágio. http://www.significados.com.br/plagio/



domingo, 4 de maio de 2014

Sistema Operacional Móvel


O que é um Sistema Operacional?
Sistema Operacional é um programa ou um conjunto de programas cuja a função é servir de interface para entre um computador (ou dispositivo) e um usuário. Comumente chamada pela sigla SO em português ou OS (Operating System) em inglês é o responsável por controlar os recursos e gerenciar quando e quais aplicações devem ser executadas, e quais recursos físicos as mesmas podem utilizar.


Porque de um SO móvel?
Com a evolução tecnológica mundial e o desenvolvimento de tecnologias mais potentes e menores, surgiu a necessidade de criar (ou aperfeiçoar) sistemas que se adeque melhor a essa tecnologia.


Nesse tópico vamos fazer uma breve introdução dos principais sistemas disponíveis atualmente, e de acordo com o tempo vamos nos aprofundando em cada uma dela, mostrando como funciona, vantagens e desvantagens, etc.


iOS

Antes chamada de iPhone OS, o iOS é o SO Móvel da Apple e foi desenvolvido originalmente para o iPhone, mas também é utilizado para iPod e iPad.
O SO foi lançado e apresentado no ano de 2007 e originalmente não era permitido aplicativos de desenvolvedores terceiros no SO, mas no final deste mesmo ano foi anunciado o SDK do sistema para os desenvolvedores.
Em março de 2008, foi lançado o primeiro beta do SO e com o grande numero de vendas do iphone, cresceu o interesse dos desenvolvedores pelo SDK.


Android

Baseada em linux e desenvolvida originalmente para celulares, o android foi desenvolvido pela Android inc. e tinha por objetivo ser uma plataforma aberta, flexível e de fácil migração para os desenvolvedores.
Comprada pela Google em 2005 seus co-fundadores foram trabalhar para a google para desenvolver o sistema móvel.
Em 2008 o android se tornou Open-source (código livre), isso implicava em uma liberdade para desenvolvedores criarem suas aplicações para esse sistema. Nessa mesma data foi lançado e comercializado o primeiro aparelho com android, o Motorola Milestone.




Windows Phone 

Sucessor do Windows Mobile, o Windows Phone foi desenvolvido pela Microsoft e lançada entre 2010 e 2011.
Originalmente programada para ser lançada em 2009, mas diversos atrasos fizeram com que a microsoft lança-se um sistema intermediário, o Windows Phone 6.5. Só apos um ano foi lançada a versão desejada, o Windows Phone 7.
Tem como principais representantes os aparelhos da linha Lumia, da Nokia e Omnia, da Sansung.




Firefox OS
Lançado em 2013, o sistema operacional móvel desenvolvido pela Mozilla foi baseada no seu própio navegador, o Firefox.
Criado especialmente para dispositivos móveis mais modestos o Firefox OS prioriza o baixo consumo de recursos do aparelho.
A plataforma possui código aberto e tem como diferencial rodar aplicativos criados em HTML 5


Ubuntu Touch
Ainda em desenvolvimento pela Canonical e apresentada no inicio de 2013 o Ubuntu Touch foi baseado no android e no linux e pode vir a funcionar em qualquer dispositivo android.

sábado, 3 de maio de 2014

Compiladores versus Interpretadores


Compiladores e interpretadores são formas de tradução de um código geralmente de alto nível para um código que o computador (a máquina) interprete. Este tradutor tem a função de traduzir uma linguagem abstrata para uma linguagem binária. Abaixo segue separadamente algumas das funções de ambos. 

  • O Compilador:
O Compilador é um programa ou um grupo de programas que escrito por uma linguagem (esta sendo necessária de compilação para sua execução) ao ser compilado gera outro código que é interpretado pelo computador. Este código compilado é chamado de código objeto, podendo ser um arquivo executável que é reproduzido em um sistema operacional, por exemplo. 

Os compiladores analisam o código em três partes, de forma sintática ou hierárquica, análise léxica ou linear e análise semântica.

Alguns compiladores contam com um pré-processamento. Este pré-processamento é responsável por modificar o código-fonte conforme necessidades que o compilador identifique que sejam necessárias, por exemplo, otimização de código.

O Compilador uni todo o programa em um arquivo EXE em formato binário, que em seguida será executado pelo computador. O processo de compilação é feito uma única vez, o que torna o processo de leitura do programa, muito rápido. Linguagens compiladas geralmente são usadas em jogos, robótica, automação industrial, pois são áreas em que a velocidade de execução do programa precisa ser rápida. 

  • O Interpretador:
O interpretador ao contrário do compilador roda o código-fonte escrito como sendo o código objeto, ele traduz o programa linha a linha, o programa vai sendo utilizado na medida em que vai sendo traduzido. Cada execução do programa precisa ser novamente traduzido e interpretado.

O interpretador analisa sintaticamente e semanticamente o código, se estas duas etapas forem realizadas e executadas de forma correta o código está pronto para funcionar.

O interpretador nada mais é que um intermediário entre, o código-fonte a ser executado, e o computador, ou seja, o interpretador “entrega” o código-fonte ao computador em uma linguagem de baixo nível sempre que o programa é executado. 

Vantagens e desvantagens


Vantagens do Compilador:
  • O código compilado é mais rápido de ser acessado;
  • Dificulta ser quebrado e visualizado o código-fonte original;
  • Permite otimização do código por parte do compilador;
  • Compila o código somente se estiver sem algum erro.
Desvantagens do Compilador:
  • Para ser utilizado o código precisa passar por muitos níveis de compilação.
  • Processo de correção ou alteração do código requer que ele seja novamente recompilado.

Vantagens do Interpretador:
  • Correções e alterações são mais rápidas de serem realizadas;
  • Código não precisa ser compilado para ser executado;
  • Consomem menos memória.
Desvantagens do Interpretador:
  • Execução é mais lenta do programa;
  • Necessita sempre ser lido o código original para ser executado.

REFERENCIAS:

Fábio Almeida, O que são interpretadores e compiladores? Qual a diferença?. Dispnível em: < http://www.criarprogramas.com/2011/03/o-que-sao-interpretadores-e-compiladores-qual-a-diferenca> Acessado em 3 de maio de 2014.

Nícolas Muller, Diferenças entre compiladores e interpretadores. Disponível em: < http://www.oficinadanet.com.br/artigo/1527/diferencas_entre_compiladores_e_interpretadores> Acessado em 03 de maio de 2014.




quinta-feira, 1 de maio de 2014

Noções Básicas de Sistemas Operacionais

LINUX VS WINDOWS
  1.   O que é Linux ?


R = É um sistema operacional, assim como o Windows da Microsoft e o Mac OS da Apple. Ele foi criado em 1991 pelo finlandês Linus Torvalds, e o nome é a mistura do nome do criador com Unix, um antigo sistema operacional da empresa de mesmo nome.


            2.   O que é Windows ?


R = Windows é um Sistema Operacional Multitarefa que só começa a ser tecnicamente considerado como um SO a partir da versão Windows NT, lançada em Julho de 1993 pela Microsoft. Diferente das suas versões anteriores, não depende do MS-DOS, pois é ele mesmo quem se auto-gerencia.

Sua principal característica é a forma como se apresenta. É fácil aprendê-lo porque sua interface gráfica é uniforme em todos os aplicativos.

CARACTERÍSTICAS DO LINUX VS WINDOWS

Ø  DISTRIBUIÇÕES
Linux
A maioria das variantes do Linux estão disponíveis gratuitamente.
Windows
Entre R$ 300,00 e R$ 700,00, de acordo com a versão desejada.
Ø  FACILIDADE DE USO
Linux
A maioria das distribuições Linux vêm melhorando bastante nesse quesito.
Windows
A Microsoft fez vários avanços e mudanças que o tornaram um sistema muito mais fácil de usar do que o Linux.

Ø  CONFIABILIDADE
Linux
A maioria das distribuições Linux são notoriamente confiáveis e muitas vezes pode funcionar por meses e anos sem precisar ser sequer reiniciado.

Windows
Embora o Microsoft Windows tenha feito grandes melhorias na confiabilidade ao longo dos últimos anos e versões do Windows, ele ainda não pode coincidir com a confiabilidade do Linux.

Ø  SOFTWARE
Linux

O Linux tem uma grande variedade de programas disponíveis, utilitários e jogos. No entanto, o Windows tem uma seleção muito maior de software disponível.

Windows
Por causa da grande quantidade de usuários do Microsoft Windows, há uma seleção muito maior de softwares disponíveis, utilitários e jogos para Windows.

Ø  CUSTO POR SOFTWARE
Linux

Muitos dos softwares, utilitários e jogos disponíveis no Linux são freeware e/ou código-fonte aberto. Mesmo programas complexos como o Gimp, OpenOffice, StarOffice, e o Wine estão disponíveis gratuitamente ou a baixo custo.
Windows
Embora o Windows tenha softwares, utilitários e jogos de graça, a maioria dos programas custam entre US$ 20,00 e US$ 200,00+ por cópia.

Ø  HARDWARE
Linux

O Linux e as empresas fabricantes de hardware têm feito grandes avanços no suporte de hardware para Linux e, hoje, o Linux suporta a maioria dos dispositivos de hardware. No entanto, muitas empresas ainda não oferecem drivers ou suporte para seu hardware no Linux.
Windows
Devido à quantidade de usuários do Microsoft Windows e com o apoio mais amplo de drivers, o Windows tem um suporte muito maior para os dispositivos de hardware e uma boa maioria dos fabricantes de hardware apoiam os seus produtos no Microsoft Windows.

Ø  SEGURANÇA
Linux

Linux é e sempre foi um sistema operacional muito seguro. Embora ele ainda possa ser atacado, quando comparado ao Windows é muito mais seguro.
Windows
Embora a Microsoft tenha feito grandes melhorias ao longo dos anos com a segurança em seu sistema operacional, o Windows continua a ser mais vulnerável a vírus e outros ataques.

Ø  CÓDIGO-FONTE
Linux

Muitos programas e as distribuições do Linux estão abertas e permitem aos utilizadores personalizar ou modificar o código como eles desejam.

Windows
O Microsoft Windows não é open source e a maioria dos programas Windows não são open source. Ou seja, são softwares proprietários onde todos que usam não podem modificar o código para deixá-lo como deseja.

Ø  SUPORTE
Linux

Embora possa ser mais difícil encontrar usuários familiarizados com todas as distribuições do Linux, há uma vasta quantidade de documentação disponível online, livros e fóruns na web.
Windows
Microsoft Windows inclui a sua própria seção de ajuda, tem grande quantidade de documentação disponível online, bem como livros de cada uma das versões do Windows.

CURIOSIDADES DO LINUX

1)      Qual a ligação do LINUX com um pinguim?
Quando da criação da logotipo para o Linux, muitos apareceram com versões satíricas dos concorrentes. Outros resolveram utilizar animais selvagens e agressivos, como águias e tubarões. Torvalds acabou entrando no meio da discussão, pois não queria uma imagem agressiva. Então, lembrando de quando seu amigo Andrew Tridgell o levou a um zoológico em Canberra, onde foi bicado por um pinguim, Torvalds sugeriu a simples imagem deste animal gordinho e com expressão de satisfeito. Foi então que surgiu o Tux, mistura do nome Torvalds com Unix.

2)      Por que o LINUX tem tantos nomes?
O Linux não é totalmente um sistema operacional. Ele é o que se chama de kernel (o núcleo do sistema operacional). O núcleo do sistema é o responsável pela integração dos dispositivos de hardware do computador com os programas (softwares). Como o Linux está disponível de graça e com código-fonte aberto, qualquer pessoa ou organização pode juntá-lo a um conjunto de softwares para criar um sistema operacional customizado. Cada uma destas customizações é chamada de distribuição ou distros.

1)  Por que o Linux é mais seguro do que Windows?


As senhas no Linux

As senhas de usuário do Linux ficam armazenadas em arquivos de configuração, mas calma, ainda há de nascer um mortal capaz de decifrá-las. As senhas são guardadas criptrografadas nos arquivos de configuração.
As senhas criptografadas se encontram no arquivo /etc/shadow, a seguir um exemplo do que este arquivo armazena:

root:x:14287:0:99999:7:::
nicholas:$1$UAASD/Io$XasdaspxQ.VTGd/ASDYA59xL.:14287:0:99999:7:::
daemon:x:14287:0:99999:7:::
bin:x:14287:0:99999:7:::
sys:x:14287:0:99999:7:::

Isso é só uma parte do arquivo, nele veremos todos os grupos que existem dentre outras informações, mas o que realmente importa para o nosso artigo é a linha que contém o usuárionicholas, nesta linha você pode observar um emaranhado de caracteres depois dos “:” (destacado em vermelho) essa é a senha criptografada. Se você pensou em digitar isso no campo de senha, vai dar errado, pois ao digitar a senha ela será criptografada novamente e comparada com essa. Logicamente, a comparação vai dar errado.

Uma coisa interessante é que somente o usuário root tem o poder para visualizar o conteúdo deste arquivo, eliminando assim qualquer possibilidade de um roubo desde arquivo de senha utilizando um usuário comum.

Firewal Iptables

O Iptables é o firewal que vem junto com o kernel do Linux, ele é um dos, se não o mais poderoso firewal para linux, nele você pode criar desde regras simples, a regras complexas para definir o que entra e sai do seu computador.

Linux tem vírus?

De maneira resumida não existem vírus para o Linux, existem alguns vírus “testes de conceitos” que foram criados para tentar burlar alguma proteção do Linux, alguns conseguem, mas em casos bem específicos. E quando conseguem o campo de ataque do vírus se restringem, na maioria dos casos, a própria pasta do usuário. Nenhum vírus ainda (do meu conhecimento) conseguiu o feito de se espalhar remotamente.
Todos esses “testes de conceitos” foram criados sem o objetivo maior de atacar outros computadores, e sim  por questões de experiência. Uma outra coisa interessante é que quando é descoberto uma vulnerabilidade ela é rapidamente corrigida pela equipe de desenvolvimento do kernel Linux.

REFERENCIAS:

Claudia Sardinha, O que é Linux?.  Disponível em: <http://www.techtudo.com.br/artigos/noticia/2011/12/o-que-e-linux.html> Acessado em 2 de maio de 2014.

Linux vs Windows: saiba suas diferenças. Disponível em: < http://meupinguim.com/linux-vs-windows-suas-diferencas> Acessado em 2 de maio de 2014.

Microsoft Windows. Disponível em: < http://pt.wikipedia.org/wiki/Microsoft_Windows> Acessado em 2 de maio de 2014.


 O que é Windows?.  Disponível em: < http://www.fundacaobradesco.org.br/vv-apostilas/win_p1.htm/> Acessado em 2 de maio de 2014.