quinta-feira, 27 de outubro de 2011

10 coisas que não existiriam se não fosse o Linux

Linux. Muita gente treme só de ouvir falar no sistema operacional criado por Linus Torvalds e divulgado ao mundo a partir de 1991. Contudo, essa história de que “Linux é difícil de usar” tem ficado dia a dia mais para trás, vide distribuições cada vez mais funcionais e amigáveis para o usuário final como Fedora e Ubuntu.
Contudo, o sistema operacional livre mais usado no mundo não corresponde apenas às várias distribuições que milhões de pessoas usam ao redor do globo terrestre. Ele está em lugares que você, provavelmente, nem imagina, comprovando toda sua robustez e versatilidade.
Ele é usado em diversas funções diferentes e aqui vai uma lista de dez coisas que provavelmente não existiriam se não fosse o Linux.

Grandes servidores

Serviços que você utiliza todos os dias, como Google e Facebook têm Linux rodando em seus servidores para armazenar muito conteúdo. Todos os serviços de web da Google, como Docs, Agenda e Calendário, ficam hospedados em máquinas com o sistema operacional do pinguim.

Sistemas de controle de tráfego aéreo

Para que as pessoas viajem em segurança de uma parte a outra do mundo, há a necessidade de controle de tráfego aéreo. A maioria das máquinas operadas pelos controladores de voo usa Linux para garantir que o avião que carrega você de um ponto a outro decole e pouse em segurança.

Sistemas de alta tecnologia para controle de tráfego

Segundo o site LinuxforDevices.com, a cidade de San Francisco, uma das mais populosas dos Estados Unidos, usa um sistema de alta tecnologia para controle de tráfego terrestre. O município tem um trânsito caótico e é com Linux rodando em seus computadores que a prefeitura local pretende reduzir esse problema.


Android

O Android é o sistema operacional desenvolvido pela Google para dispositivos portáteis. Ele é um dos mais usados do gênero e cada vez mais novos aparelhos de grandes fabricantes são lançados com ele instalado. Pois se você ainda não sabia, agora é a hora: Android é desenvolvido tendo como base o Linux.

Trem de alta velocidade japonês

Outra ajuda que o Linux dá ao mundo dos transportes é funcionando nos computadores que operam o sistema de trens de alta velocidade no Japão. Sempre que nessas enormes e velozes máquinas de ferro embarcam passageiros e eles partem rumo ao seu destino, é o sistema criado por Linus Torvalds demonstrando a sua versatilidade.

Bolsa de Nova York

A Bolsa de Valores de Nova York também usa Linux. Desde 2007, o local que é o ponto nevrálgico do sistema financeiro estadunidense optou por instalar o sistema livre em suas máquinas. Os motivos são simples e claros: redução de custos (afinal, Linux é de graça e não se paga licença) e aumento de flexibilidade (não à toa o sistema é chamado de “livre”).

Supercomputadores

Outra informação recorrente no mundo do software livre é a preferência de desenvolvedores de supercomputadores pelo Linux. Estimativas apontam para cerca de 90% das supermáquinas existentes hoje rodando alguma variação de Linux. A explicação talvez seja a mais óbvia: o sistema livre é gratuito e flexível.

Carros inteligentes da Toyota

Recentemente, de acordo com o site LinuxInsider, a Toyota aderiu à Linux Foundation, a fundação criada em 2007 e que é responsável pela colaboração para aprimoramento do sistema. A justificativa, segundo o gerente geral de projetos da empresa Kenichi Murata, foi o fato de o sistema Linux possuir “a flexibilidade e a maturidade tecnológica” de que eles precisam para desenvolver veículos inteligentes.

Acelerador de partícula

A Cern, Organização Europeia para a Investigação Nuclear, maior laboratório de física de partículas do mundo e referência global no assunto, faz uso do sistema em suas pesquisas relacionadas a partículas de energia. O famoso acelerador de partículas do laboratório funciona com Linux.

Submarinos nucleares

A Lockheed Martin, maior produtora de produtos aeroespaciais para fins militares do mundo, apresentou, em 2004, a linha de submarinos nucleares BAEs Astute-class. O sistema central dessas máquinas subaquáticas possui a distribuição de Linux Red Hat instalada.




Maria Aparecida da Silva Ribeiro nº 27 1F2

sexta-feira, 21 de outubro de 2011

Sistema Operacional - Visão Geral


Definição de Pseudo-sistema Operacional

Pseudo-sistema operacional são sistemas operacionais que não são integros, ou seja , embora apresentem uma interface de usuário, estes não se comunicam diretamente com o hardware do computador, sendo necessária a utulização de outro sistema operacional como hospedeiro para esse pseudo-OS para que este possa acessar por meio do núcleo do sistema  hospedeiro à memoria e ao hardware do computador.
Tipos de Pseudo-OS
WebOS ou internet Pseudo-OS
Pseudo-OS executável
Máquina virtual como o Vmware, QEMU ou VirtualBox

Fonte: http://pt.wikipedia.org/wiki/Pseudossistema_operacional


Gráficos





Funcionamento
Um sistema operacional possui as seguintes funções:
1.                gerenciamento de processos;
2.                gerenciamento de memória;
3.                sistema de arquivos;
4.                entrada e saída de dados
Gerenciamento de processos
O sistema operacional multitarefa é preparado para dar ao usuário a ilusão que o número de processos em execução simultânea no computador é maior que o número de processadores instalados. Cada processo recebe uma fatia do tempo e a alternância entre vários processos é tão rápida que o usuário pensa que sua execução é simultânea.
São utilizados algoritmos para determinar qual processo será executado em determinado momento e por quanto tempo.
Os processos podem comunicar-se, isto é conhecido como IPC (Inter-Process Communication). Os mecanismos geralmente utilizados são:
·                    sinais;
·                    pipes;
·                    named pipes;
·                    memória compartilhada;
·                    soquetes (sockets);
·                    trocas de mensagens.
O sistema operacional, normalmente, deve possibilitar o multiprocessamento (SMP ou NUMA). Neste caso, processos diferentes e threads(Linha ou Encadeamento de execução (em inglês: Thread),O que  THREAD é uma forma de um processo dividir a si mesmo em duas ou mais tarefas que podem ser executadas concorrentemente. O suporte à thread é fornecido pelo próprio sistema operacional (SO), no caso da linha de execução ao nível do núcleo (em inglês: Kernel-Level Thread (KLT)), ou implementada através de uma biblioteca de uma determinada linguagem, no caso de uma User-Level Thread (ULT).
Uma linha de execução permite que o usuário de programa, por exemplo, utilize uma funcionalidade do ambiente enquanto outras linhas de execução realizam outros cálculos e operações.
 podem ser executados em diferentes processadores. Para essa tarefa, ele deve ser reentrante e interrompível, o que significa que pode ser interrompido no meio da execução de uma tarefa.
Gerenciamento de memória
O sistema operacional tem acesso completo à memória do sistema e deve permitir que os processos dos usuários tenham acesso seguro à memória quando o requisitam. O primeiro servidor para WWW rodou em um NeXTSTEP baseado no BSD.
Vários sistemas operacionais usam memória virtual, que possui 3 funções básicas:
1.                assegurar que cada processo tenha seu próprio espaço de endereçamento, começando em zero, para evitar ou resolver o problema de relocação (Tanenbaum, 1999);
2.                prover proteção da memória para impedir que um processo utilize um endereço de memória que não lhe pertença;
3.                possibilitar que uma aplicação utilize mais memória do que a fisicamente existente.
 Swapping
Dentro de gerenciamento de memória, pode não ser possível manter todos os processos em memória, muitas vezes por não existir memória suficiente para alocar aquele processo. Para solucionar esse problema existe um mecanismo chamado swapping, onde a gerência de memória reserva uma área do disco para o seu uso em determinadas situações, e um processo é completamente copiado da memória para o disco; este processo é retirado da fila do processador e mais tarde será novamente copiado para a memória; Então, o processo ficará ativo na fila novamente. O resultado desse revezamento no disco é que o sistema operacional consegue executar mais processos do que caberia em um mesmo instante na memória. Swapping impõe aos programas um grande custo em termos de tempo de execução, pois é necessário copiar todo o processo para o disco e mais tarde copiar novamente todo o processo para a memória. Em sistemas onde o usuário interage com o programa durante sua execução, o mecanismo de swapping é utilizado em último caso, quando não se é possível manter todos os processos na memória, visto que a queda no desempenho do sistema é imediatamente sentida pelo usuário.[10]
Sistema de arquivos
A memória principal do computador é volátil, e seu tamanho é limitado pelo custo do hardware. Assim, os usuários necessitam de algum método para armazenar e recuperar informações de modo permanente.
Um arquivo é um conjunto de bytes, normalmente armazenado em um dispositivo periférico não volátil (p.ex., disco), que pode ser lido e gravado por um ou mais processos.
Entrada/saída (em inglês: Input/output, sigla I/O) é um termo utilizado quase que exclusivamente no ramo da computação (ou informática), indicando entrada (inserção) de dados por meio de algum código ou programa, para algum outro programa ou hardware, bem como a sua saída (obtenção de dados) ou retorno de dados, como resultado de alguma operação de algum programa, consequentemente resultado de alguma entrada.
São exemplos de unidades de entrada de um computador: disco rígido, microfone, teclado, mouse, tela sensível ao toque, Scanner, Leitor de código de barras, Celular, Pendrive, Máquina fotográfica digital, Webcam, joystick e outros acessórios de jogos.
São exemplos de unidades de saída de um computador: monitor, caixas de som, impressora, disco rígido.
Algumas unidades são de entrada e saída de dados ou também chamados Dispositivos Híbridos: disco rígido, disco flexível ou disquete, monitor sensível a toques, pendrive, joystick vibratório e impressora.
As interfaces de entrada e saída são responsáveis pela conexão entre as várias partes de um sistema computacional baseado na arquitetura de Von-Neumann. Esta interface é responsável por conectar fisicamente o processador e a memória do sistema ao barramento, tornando-se o terceiro elemento do sistema computacional proposto.
Ao contrário do que se pode pensar a interface de entrada e saída não é só o conector físico e sim também o responsável pela comunicação lógica entre o barramento e o dispositivo. Essa função de conexão foi basicamente desenvolvida para que seja possível a comunicação entre vários dispositivos, fazendo com que a velocidade do barramento seja mais bem aproveitada e ainda tanto os periféricos quanto os elementos essenciais tenham programação/produção mais voltada ao seu desempenho, deixando a interconexão com as interfaces de entrada e saída.
FONTE: http://pt.wikipedia.org/wiki/Sistema_operativo#Gerenciamento_de_processos 


Tipos de Sistemas Operacionais
Sistemas Fortemente Acoplados
São compostos por 2 ou mais processadores compartilhando a mesma memória e controlados por
apenas um único sistemas operacional. Fortemente utilizados em sistemas que fazem uso intensivo da UCP, o processamento é voltado para solução de um único problema.
Tipos de Sistemas Operacionais
Sistemas Fracamente Acoplados
Caracterizam-se por possuir dois ou mais sistemas de computação, conectados através de linhas de comunicação.
Cada sistema funciona de modo independente, possui seus próprios processadores, memória e dispositivos.
Fonte: http://www.eduardosilvestri.com.br/fmu/redes/sistop/4aula/SO-Aula004.pdf


Interface de usohttp://bits.wikimedia.org/skins-1.18/common/images/magnify-clip.png
Sistema operacional com interface gráfica, no caso, o Linux Ubuntu 11.04 (rodando a interface Unity)
Os sistemas operacionais fornecem abstração de hardware para que seus recursos possam ser usados de maneira correta e padronizada, mas para ser possível operar um computador, é necessário fornecer também uma interface para que o usuário possa desfrutar dos recursos do sistema. Atualmente existem três tipos de interface: GUI (graphical user interface) ou interface gráfica, TUI (text user interface) ou interface textual, e CUI (command-line user interface) ou interface de linha de comando.
GUI (Graphical user interface)
Nesse tipo de interface, o usuário tem à disposição um ambiente de trabalho composto por menus, ícones, janelas e outros itens. O usuário interage com esse tipo de interface usando o mouse, podendo também usar o teclado e teclas de atalho. É possível fazer todo tipo de tarefa usando interface gráfica, como edição de vídeos e imagens, sendo somente alguns tipos muito específicos de tarefas que se saem melhor em linha de comando. Acrescentar facilidade de uso e agilidade é o objetivo da GUI, tendo a desvantagem de consumir muito mais memória que interfaces de linha de comando. Em sistemas unix-likes, existe a possibilidade de escolher o gerenciador de janelas a utilizar, aumentando em muito a liberdade de escolha do ambiente.
TUI (Text user interface)
http://bits.wikimedia.org/skins-1.18/common/images/magnify-clip.png
Aplicativo com interface textual (TUI), rodando no sistema operacional FreeDOS
Assim como na GUI, a TUI também tem à disposição um ambiente de trabalho composto por menus, janelas e botões, porém essas interfaces não têm a capacidade de reproduzir figuras, salvo as que são tratadas como caracteres ASCII. Essa interface, antes da popularização da GUI, tinha um uso difundido em aplicações baseadas no MS-DOS, que, aliás, nas versões mais recentes contava com um gerenciador de programas e arquivos baseado em TUI (o DOS Shell). As TUIs, ao contrário das GUIs, não dependem de um gerenciador de janelas específico para funcionar, podendo mesmo serem inicializadas a partir da linha de comando. Atualmente essa interface é muito rara, praticamente restrita a sistemas implementados na década de 1980 e início da década de 1990.
CUI (Command-line user interface)
Além da interface gráfica, existe a interface de linha de comando, que funciona basicamente com a digitação de comandos, sendo nesse relativamente pouco interativa. Os comandos digitados são interpretados por um interpretador de comandos, conhecidos também por shells, bastante comuns em sistemas unix-likes. Um exemplo de interpretador de comandos seria o Bash. Usada geralmente por usuários avançados e em atividades específicas, como gerenciamento remoto, utiliza poucos recursos de hardware em comparação a interface gráfica. Nesse tipo de ambiente, raramente se usa o mouse, embora seja possível através do uso da biblioteca ncurses no desenvolvimento dos softwares.
FONTE: http://pt.wikipedia.org/wiki/Sistema_operativo#Gerenciamento_de_processos.
 Sistemas Operacionais Online

Na onda da Web 2.0, não são somente os aplicativos que estão ganhando mercado, os sistemas operacionais online também diariamente conquistam inúmeros adeptos. Baseados na tecnologia Cloud Computing (Computação em Nuvem), os sistemas rodam direto do navegador e utilizam recursos de um distante DataCenter, economizando recursos locais. Executam tarefas fundamentais de um sistema operacional, como armazenar fotos, vídeos, músicas e arquivos em geral, além de acessar vários aplicativos (na grande maioria de recursos simples) como navegadores, editores de textos, gerenciadores de e-mails, planilhas de cálculo, editores de imagem, etc.
Além da facilidade e comodidade, os sistemas operacionais online são uma ótima alternativa para quem não possui um computador em casa. Segundo o Comitê Gestor da Internet, as Lan Houses e Telecentros são responsáveis por mais da metade dos acessos à rede no Brasil. Deste modo, é fácil resolver o problema de não usar sempre o mesmo computador.
Fonte:http://www.mxstudio.com.br/carreira/mercado/sistemas-operacionais-online/
WEB TOP
Um webtop, web desktop, desktop online, ou OS online. OS é a sigla para Operacional System (Sistema Operacional) é uma página de internet personalizada, geralmente baseada na tecnologia AJAX, em que é possível escolher o conteúdo, bem como definir a ordem e a aparência dos mesmos.
São em geral fornecidos por serviços online como Google e Yahoo! E normalmente rodam miniaplicações próprias, mas podem servir de plataforma também para miniaplicações desenvolvidas por terceiros
Um OS Online funciona como o Windows, Macintoshi, ou Linux, porem utilizando um navegador como o Internet Explorer e o Firefox. Alguns deles têm interfaces que lembram desktops de sistemas operacionais como o Windows e o Linux (KDE).
Fonte: http://pt.m.wikipedia.org/wiki/Webtop
Exemplos de WEB Tops:
eyeOS
é um sistema para escritórios, de código aberto, gratuito e multi-plataforma que utiliza os conceitos da Cloud computing, baseado na área de trabalho de um sistema opercaional. É licenciado sobre a licença GPL. O pacote básico inclui uma estrutura completa de um sistema operacional e algumas aplicações de escritório, como um processador de texto, calendário, gerenciador de arquivos, programa mensageiro, navegador, calculadora, entre outros.
Fonte: HTTP://pt.m.wikipedia.org/wiki/EyeOS
Icloud
O CloudMe (anteriormente icloud) é o primeiro sistema operativo online do mundo, criado pela empresa sueca Xcerion. O seu nome provém da computação em nuvem, que é a representação que se faz quando se desenha sistemas ligados à internet, que por seu tamanho e característica metamórfica, geralmente é representada por uma nuvem.
Fonte: HTTP://pt.m.wikipedia.org/wiki/Icloud

Pseudo Sistema Operacional
Na visão top-down o sistema operacional age como uma espécie de ‘camada’ que fica entre o hardware e o usuario, possibilitando a ele formas mais amigaveis de interagir com o computador , como por exemplo os sistmas de janelas vistos em todos os sistemas operacionais modernos.
Já na visão botton-up, o sistema operacional faz todo o gerenciamento de hardware do computador, como o controle da alocação de memória utilizada pelos softwares do usuário, o controle dos dispositivos de entrada e saida de dados (mouse, teclado, impressoras...) e o gerenciamento do hd.
Fonte: http://hospedagemsegura.com.br/tecnilogia/o-universo-dos-sistemas-operacionais


quinta-feira, 20 de outubro de 2011

Dennis Ritchie

Cientista norte-americano, Dennis Ritchie nasceu no dia 9 de setembro de 1941, em Bronxville, Nova Iorque. Doutorou-se em matemática aplicada na Universidade de Harvard no ano de 1968, com uma dissertação subordinada ao tema "Hierarquias de funções subrecursivas". Seguindo as pisadas do seu pai, ingressou na Bell Labs em 1967, onde contribuiu inicialmente para o projeto Multics - uma cooperação da General Electric, MIT e Bell Labs - ao escrever compiladores para as linguagens BCPL e ALTRAN.
No início dos anos 70 desenvolveu, juntamente com Ken Thompson o sistema operativo UNIX. Para o efeito, desenvolveu a linguagem de programação C por melhoramento e aperfeiçoamento da linguagem B inicialmente criada por Ken Thompson.
Quer o sistema operativo Unix quer a linguagem de programação C constituíram feitos importantíssimos para o desenvolvimento da tecnologia computacional. O sistema operativo Unix pode ser encontrado (nas suas variadas formas e versões) em milhares de máquinas funcionais em todo o mundo e, é considerado e respeitado como o sistema operativo de eleição para determinadas aplicações e serviços de rede. A linguagem C continua - e deverá continuar - a ser utilizada como uma das mais completas linguagens estruturadas procedimentais permitindo a construção de código eficiente quer em custo de memória quer em velocidade de execução. É utilizada por programadores de todo o mundo em múltiplas áreas de desenvolvimento e existem compiladores disponíveis para quase todas as plataformas imagináveis.
Dennis Ritchie lidera uma equipa de investigação na Bell Labs dedicada a trabalhos sobre sistemas operativos distribuídos e linguagens distribuídas assim como hardware de encaminhamento e comutação. O seu grupo desenvolveu durante a década de 90 dois sistemas operativos, o Plan 9 (1995) e o Inferno (1996). Foi galardoado com vários prémios e medalhas da ACM e IEEE assim como de outras instituições americanas e internacionais pelos seus contributos para as ciências e tecnologias computacionais - nomeadamente pelo seu trabalho no Unix e na linguagem C. Em abril de 1999 recebeu a U. S. National Medal of Technology juntamente com o seu companheiro do Unix, Ken Thompson.


Nome: Gustavo Azevedo de Albuquerque  Nº: 14 - 1F2



quinta-feira, 13 de outubro de 2011

Morre Dennis Ritchie


Dennis Ritchie, criador do Unix morre aos 70


Uma das figuras mais influentes da história da computação, Dennis Ritchie, faleceu aos 70 anos nos Estados Unidos.
Ele foi o criador da linguagem de programação C, uma das mais utilizadas até hoje. Além disso, Ritchie também foi um dos criadores do sistema operacional Unix, que de suas variantes surgiram o Linux e o Mac OS X.
Dennis, que também era conhecido como “dmr” (que era parte de seu endereço de e-mail), obteve grande influência no mundo da computação, tendo recebido diversos prêmios entre eles o Turing em 1983 por seu trabalho com o Unix, e o National Medal of Technology em 1999.
Programadores também se lembram de Ritchie por seu famoso programa “hello, world”, que é muito utilizado em códigos de programação como um exemplo de um programa de computador bastante simples.
Fonte:http://exame.abril.com.br/tecnologia/noticias/dennis-ritchie-criador-do-unix-morre-aos-70



Postado por: Nícolas Ferrari Gonçalves - 1F2 

quinta-feira, 6 de outubro de 2011

Morre Steve Jobs, um mito da informática

Morreu nesta quarta-feira (5) aos 56 anos o empresário Steven Paul Jobs, criador da Apple, maior empresa de capital aberto do mundo, do estúdio de animação Pixar e pai de produtos como o Macintosh, o iPod, o iPhone e o iPad.
A luta de Jobs contra o câncer desde 2004 o deixou fisicamente debilitado nos anos de maior sucesso comercial da Apple, que escapou da falência no final da década de 90 para se transformar na maior empresa de tecnologia do planeta. Desde então, passou por um transplante de fígado e viu seu obituário publicado acidentalmente em veículos importantes como a Bloomberg. Há 42 dias, deixou o comando da empresa.
Foi obrigado a lidar com a morte, que temia, como a maioria dos americanos de sua geração, desde os dias de outubro de 1962 que marcaram o ápice da crise dos mísseis cubanos. "Fiquei sem dormir por três ou quatro noites porque temia que se eu fosse dormir não iria acordar", contou, em 1995, ao museu de história oral do Instituto Smithsonian.


Mateus Romero. Nº 29. 1F2

quarta-feira, 5 de outubro de 2011

Projeto estima que Linux tenha 30 milhões de usuários no mundo

Nesta reportagem iremos ver a média estatística de usuários que usam linux no mundo.


Não há hoje nenhum tipo de contagem oficial do número de usuários de Linux no mundo. Mesmo os institutos de pesquisas especializados apenas estimam esse dado. O motivo pode até mesmo ser o interesse dessa comunidade de manter-se assim, independente e sem um pólo centralizador.


No entanto, em 1993, interessado em fazer esse levantamento, o desenvolvedor Harald Tveit Alvestrand criou aquilo que batizou de Linux Counter —um contador de usuários. Esse contador deu origem, em maio de 1999, a uma organização sem fins lucrativos chamada Linux Counter Project (http://counter.li.org), que assumiu o controle da ferramenta desde então.

Segundo a ferramenta, até o fechamento desta reportagem, exatos 138.049 usuários utilizam Linux —e fizeram seus registros no site do projeto. Com base nesse número e em dados de mercado, a organização acredita que a comunidade Linux no mundo todo seja de aproximadamente 30 milhões usuários. 



Bibliografia: http://tecnologia.uol.com.br/ultnot/2007/04/13/ult4213u68.jhtm


Mateus Romero. Nº 29º. 1F2