terça-feira, 1 de novembro de 2011

A história do PalmOS


O PalmOS começou como um sistema muito simples, destinado a oferecer funções de assistente pessoal, utilizando pouco processamento e pouca memória RAM. Essa característica acabou sendo fundamental para o sucesso da plataforma, já que os aparelho podiam ser simples, leves e baratos. Para ter uma idéia, o Palm original, batizado de Pilot 1000 utilizava um processador Motorola Dragon Ball de apenas 16 MHz, combinado com 128 KB de memória e uma tela monocromática de 160×160:
Apesar das limitações, o sistema era surpreendentemente rápido e responsível. Embora fosse monotarefa, o chaveamento entre os programas era bastante transparente, o que criava uma impressão de simplicidade e confiabilidade.
Os primeiros modelos ainda usavam pilhas e memória SRAM, mas incluíam uma solução interessante para evitar a perda dos dados ao trocar as pilhas. Em vez de usarem uma bateria de backup, eles incluíam um pequeno capacitor, que mantinha o fornecimento elétrico para a memória enquanto as pilhas eram trocadas.
Além da simplicidade dos aparelhos, a plataforma contava com boas ferramentas de desenvolvimento, o que levou ao aparecimento de uma gigantesca variedade de aplicativos, cobrindo as mais diversas áreas. Em 1999, apenas três anos após o lançamento do Palm Pilot original, a plataforma já contava com mais de 30.000 aplicativos, e o número continuou crescendo nos anos seguintes.
A plataforma Palm passou por duas grandes mudanças dentro de sua via útil. A primeira foi a migração para os processadores ARM, que aconteceu em 2002, com o lançamento do PalmOS 5 e do Tungsten E. O maior poder de fogo dos processadores ARM permitiu que os Palms exibissem arquivos de vídeo, tocassem MP3 e executassem aplicativos mais pesados, mas em troca tornou a plataforma mais complexa e criou problemas de incompatibilidade com aplicativos antigos, que passaram a rodar via emulação.
A segunda migração foi a inclusão das funções de smartphone, que deram origem à família Treo. Na verdade, o Treo se originou na Handspring, uma pequena empresa fundada por ex-funcionários da Palm, que acabou sendo incorporada por ela em 2003. O "Handspring Treo" passou então a ser o "Palm Treo", que conhecemos.
O primeiro Treo lançado pela Palm foi o Treo 600, lançado em 2003. Ele utilizava um processador de 144 MHz e uma tela de 160×160, que limitavam bastante as funções do aparelho. Em 2004, foi lançado o Treo 650, que trouxe um processador atualizado, de 312 MHz e uma tela de 320×320.
O Treo 650 foi o primeiro a rodar o PalmOS 5.4 (Garnet), que acabou se tornando a versão final do sistema:
Na época, a Palm havia acabado de incorporar a equipe do antigo BeOS e planejada usar o sistema como base para o desenvolvimento do PalmOS 6 (Cobalt), que daria continuidade à plataforma.
Apesar de suas qualidades, o Garnet era ainda um sistema monotarefa, que utilizava uma interface antiquada (mesmo para os padrões de 2004) e era limitado em diversas áreas. Algumas poucas tarefas, como ouvir música usando o Pocket Tunes, podiam ser executadas em background, mas se você estivesse navegando e chaveasse para o notes para fazer alguma anotação, por exemplo, o navegador era fechado e, ao abrí-lo novamente, você voltava a navegar a partir da página home.
Devido ao uso do sistema NVFS e da migração do uso de memória SRAM para memória flash, o sistema tinha também problemas de estabilidade ao rodar aplicativos antigos. Quando um travamento acontecia, todo o sistema parava e a única solução era abrir o compartimento da bateria e pressionar o botão de reset usando a stylus.
O Cobalt, por sua vez, seria um sistema modernizado, com uma interface remodelada, suporte a multitarefa e diversos outros recursos. No papel parecia bom, mas na prática o sistema acabou se revelando muito lento e pesado, sem falar na falta de compatibilidade com os aplicativos antigos, que precisariam rodar dentro de uma nova camada de emulação. Isso fez com que o Cobalt acabasse sendo abandonado, sem chegar a ser usado em nenhum aparelho comercial.




Caio Fonseca

domingo, 30 de outubro de 2011

A historia do IOS


O ano era 2007, só começou realmente (9 de janeiro), ea Apple tinha algo acontecendo que ele queria ensinar ao mundo, foi o iPhone, um smartphone multi-tela que sabe compreender os complexos processos de um terminal móvel para fazer assimilado por qualquer pessoa, através de uma interface simples e tela projetada para entender gestos complexos. Naquela época, o sistema operacional foi menor no sentido de que era uma plataforma fechada e barrada, porque as aplicações nativas que foram construídos ali, que a Apple tinha projetado, e pouco mais: Maps, Mail Fotos, iPod, calendário, calculadora ...

O que aconteceu com as empresas que desejam incorporar o software certo para gadget? A Apple compreendeu que essas empresas de software poderia realizar os seus próprios desenvolvimentos sobre o browser, o Safari, alavancando o poder dele. É claro, esta solução não era o mais ideal e, gradualmente, mostrou aqueles que queriam trazer o iPhone mais um passo e falar sobre o jailbreak. Este método de "abrir" o iPhone veio rapidamente, como se o terminal é posto à venda em 29 de junho de 2007, em 10 de julho e foi capaz de fazê-lo. Nascido originalmente como a melhor maneira de usar o iPhone fora dos Estados Unidos abriu a sua exclusividade com a tecnologia EDGE, o jailbreak deu lugar imediatamente para outros desenvolvimentos independentes, tais como a inclusão de músicas da biblioteca como toques e mensagens. O iPod touch é introduzido pela primeira vez em setembro daquele ano não fizeram nada, mas continuar a promover esta nova tendência.
Quando a 09 de agosto de jogo viu o primeiro oficial não-nativos, em Cupertino percebeu que havia potencial neste campo e teve de usá-lo, é por isso que em 27 de outubro, a Apple lançou o primeiro kit de desenvolvimento é disponibilizados para os engenheiros de software para o ano seguinte, em março. O nível seguinte foi cantada, foi uma evolução lógica. Se depois disso ser autorizados a desenvolver aplicativos de terceiros teria de estabelecer um lugar para ficar e se ofereceu para você, e é assim que a App Store nasceu em 11 de Julho, logo após a chegada do iPhone 3G foi já incorporados a segunda versão do sistema operacional, iPhone OS 2.0.



Matheus Ângelo

terça-feira, 25 de outubro de 2011

A história do Symbian.


A Psion era uma pequena empresa Inglesa, que começou a produzir computadores de mão em 1984, que culminaram no Psion Series 5, um handheld bastante poderoso (para a época), que oferecia um volume surpreendente de recursos e rodava um sistema operacional próprio, o EPOC.
O Psion Series 5 era baseado em um processador ARM7100 de apenas 18.4 MHz, combinado com 8 MB de memória SRAM, usada para armazenamento e instalação de programas, que podia ser expandida através de cartões compact flash de até 128 MB. Na época, os cartões de memória eram ainda muito caros (eles vieram a se popularizar apenas a partir de 2004), de forma que 128 MB pareciam realmente uma capacidade inatingível.
Outra característica curiosa é que o Psion 5 funcionava com duas pilhas AA, que resistiam a até 30 horas de uso contínuo. Com isso, a autonomia não era problema, já que você podia comprar dois pares de pilhas recarregáveis e simplesmente ir trocando-os conforme o uso (os dados da memória eram preservados durante as trocas graças a uma bateria de backup, como as usadas nas agendas eletrônicas).
A característica que mais chamava a atenção era o teclado, que deslizava quando o aparelho era aberto, melhorando o aproveitamento do espaço e colocando a tela numa posição confortável para uso prolongado. Isso tornou o Psion o preferido entre engenheiros, médicos e profissionais em geral, já que era o único portátil da época que permitia trabalhar confortavelmente por longos períodos, substituindo um notebook:
Entre os aplicativos instalados, estavam um processador de textos, planilha, gerenciador de contatos, agenda, calculadora, leitor de e-mails e navegador, que podiam ser usados caso você comprasse o modem serial, que era vendido como acessório.
A tela era monocromática e não oferecia um contraste muito bom, refletindo muito a luz ambiente. Entretanto, ela tinha como grande vantagem a resolução de 640×240, espaçosa mesmo para os padrões atuais:
Em termos de hardware, o Psion 5 era bastante modesto, a começar pelo processador. O grande destaque era o sistema operacional, que aproveitava muito bem os recursos de hardware, e rodava com um desempenho surpreendente.
O Psion 5 foi seguido pelo Series 5 MX, pelo Psion Revo e pelo Series 7, um modelo maior e com tela colorida. Nenhum deles fez muito sucesso, o que acabou levando a empresa a descontinuar a linha em 2001. Apesar disso, o EPOC sobreviveu, dando origem ao Symbian, que o sistema mais usado em smartphones, sobretudo em aparelhos da Nokia, LG, Samsung, Motorola e Sony-Ericsson.
Duas vantagens do Symbian é que ele tem o apoio de vários fabricantes (incluindo a Nokia, que possui mais de 30% mercado global de aparelhos) e que ele é um sistema relativamente leve (principalmente se comparado ao Windows Mobile, que seria seu concorrente direto) permitindo que ele seja usado em aparelhos mais compactos, sem que as funções ou a autonomia da bateria sejam comprometidas.
A família Symbian é dividida em duas plataformas, parcialmente incompatíveis. De uma lado temos o S60, desenvolvido pela Nokia (e encontrado também em alguns aparelhos da LG, Samsung e alguns outros fabricantes, que licenciam o sistema) e o UIQ, encontrado em aparelhos da Sony-Ericsson e da Motorola. Entre os dois, o S60 é o mais usado, simplesmente porque a Nokia vende um volume muito maior de aparelhos.
Uma das principais diferenças entre os dois é que o S60 é controlado através das teclas, oferecendo uma interface mais familiar para quem está acostumado a usar as interfaces de celulares, enquanto o enquanto o UIQ oferece suporte a telas touchscreen e ao uso da stylus:
A relação entre o Symbian, o S60 e o UIQ pode parecer complicada, mas na verdade não é. O Symbian é o sistema operacional, que inclui drivers e bibliotecas de funções, enquanto o S60 e o UIQ são interfaces que rodam sobre ele, incluindo aplicativos e bibliotecas de desenvolvimento.
Se fôssemos traçar um paralelo com as distribuições Linux, o Symbian seria composto pelo Kernel e as bibliotecas básicas do sistema, enquanto o S60 e o UIQ seriam o KDE e o Gnome; interfaces que rodam sobre ele.
Continuando, embora o Symbian tenha nascido como um sistema proprietário, ele fez o caminho inverso em 2008, quando a Nokia, que já tinha 48% das ações da empresa, comprou o restante da Symbian, incluindo os direitos sobre o sistema, para em seguida anunciar a abertura do código fonte e a transferência do desenvolvimento para uma fundação neutra, a Symbian Foundation, processo que foi concluído até 2010.
Essa decisão pode parecer estranha a princípio, mas na verdade foi cuidadosamente calculada. A Nokia utiliza o Symbian na maior parte dos seus aparelhos, que representam alguns bilhões anuais apenas em lucro líquido. Com isso, comprar os direitos sob o sistema de forma a evitar que outra empresa concorrente o fizesse faz bastante sentido.
Por outro lado, manter o sistema proprietário significaria que a Nokia teria que arcar sozinha com todo o desenvolvimento do sistema e correr o risco de ver os desenvolvedores de softwares e outras empresas que utilizam o sistema debandarem para o Android, que é uma plataforma aberta. Com isso, comprar e em seguida abrir o sistema acabou se revelando a melhor saída.
A Symbian Fundation já contou com nomes de peso, como a Motorola, Sony Ericsson e a NTT DoCoMo, que estão contribuindo com código do UIQ e outros componentes, além da própria Nokia, que anunciou planos de abrir o S60 e doar o código à fundação. Vale lembrar que recentemente, devido basicamente à desistência dos particupantes, a Nokia assumiu novamente o controle total do Symbian, encerrando a fundação.

segunda-feira, 24 de outubro de 2011

Motorola está preparando seu próprio sistema operacional mobile.

2010-05-azingo


Não é segredo nenhum que mesmo com o sucesso dos seus aparelhos Android, a Motorola sempre alimentou o sonho de ter o seu próprio sistema operacional. O CEO da compania, Sanjay Jha, declarou isto abertamente.

O que é segredo é que aparentemente a Motorola já começou a mexer uns pauzinhos para chegar no seu objetivo, comprando uma compania chamada Azingo. Apesar de estar longe de ser um competidor de peso no mercado, o Azingo desenvolveu uma plataforma baseada em Linux que é promissora e bastante robusta. O Azingo Mobile poderia se tornar o sistema próprio que Sanjay Jha tanto quer.

É bom que existam mais plataformas no mercado, pois um dos principais motivos do bom desempenho recente da Motorola é justamente o Android. Em uma jogada tão arriscada quando lançar um sistema próprio, o tiro pode acabar saindo pela culatra e jogando a empresa de volta na mesmice e aparelhos mais-ou-menos em que estava antes.


André Luiz Gonçalves dos Santos

domingo, 23 de outubro de 2011

Conheça os dez melhores aplicativos para Windows Mobile.

Windows Live para Windows Phone
O Windows Live integra o Live Messenger (o bom e velho MSN), o Live Mail (o bom e velho Hotmail), visualizador de fotos. Tem também, agora, o feed “O que há de novo”, que mostra as atualizações da rede e de seus amigos. Para instalá-lo, é necessário antes desinstalar qualquer outra versão que esteja em operação no aparelho.

SPB Keyboard
Teclado virtual para touchscreen, que substitui aquele que já acompanha o aparelho. Disponibiliza exibição tela inteira ou meia tela. Facilita a digitação de mensagens ou textos. Não funciona em smartphones sem tela sensível ao toque. Versão demo.

SPB Mobile Shell
Modifica a interface do sistema, deixando todas as funções mais fáceis de serem acessadas. Conta com visualizadores 3D de SMS e e-mail, widgets personalizados, integração com Facebook e Twitter.

Facebook for Windows Mobile
Direciona o usuário automaticamente para a página do Facebook. Muito fácil de usar, disponibiliza as mesmas funções do computador, além de fazer ligações para contatos direto da lista de amigos.

WMWifirouter
Excelente ferramenta que transforma o celular em um roteador, compartilhando a conexão da internet do celular via Bluetooth, Wi-Fi ou USB. Versão de testes.

MSN Weather
Widget que facilita o acesso a previsões do tempo de hora em hora, no mundo inteiro. Analisa condições climáticas. Permite que sejam salvos alguns favoritos na homepage, para que o usuário tenha acesso mais rápido a qualquer momento.

SPB Brain Evolution
Jogo de inteligência que ajuda a treinar o cérebro e oferece resultados do seu desempenho intelectual. Vários níveis de dificuldade. Com treino diário, prometem os desenvolvedores, seu cérebro ficará mais rápido. Versão demo.

Guitar Hero 5
Em todas as músicas é possível escolher guitarra, bateria ou baixo. Disponibiliza download de MP3 para mais qualidade das músicas. Versão demo.
Home Screen Customizer
Organizador da home do Windows Mobile. Permite a inclusão ou remoção de painéis e movimentação, para os favoritos e mais utilizados.

SPB Radio
Um programa de sincronização de rádio que oferece stream em tempo real, pesquisa de estação e catálogo com mais de 1.500 estações programadas. Versão demo.





Caio Fonseca


segunda-feira, 17 de outubro de 2011

Sistemas Operacionais - Visão Geral

1- Conceitos Básicos


Visão Top-down:  Máquina Virtual
O SO deve facilitar e padronizar o acesso aos recursos
do sistema, servindo de interface entre o usuário e os
recursos do sistema computacional, tornando esta
comunicação transparente, eficiente e menos suscetível
a erros.
Visão Botton-up:  Gerenciador de Recursos           
O SO deve permitir o compartilhamento de recursos,
entre os diversos usuários, de forma organizada e
protegida.   Tal compartilhamento além de dar impressão
ao usuário de ser o único a utilizar um determinado
recurso permite a diminuição de custos, na medida que
mais de um usuário passa a utilizar as mesmas
facilidades concorrentemente e de forma segura.


2- Gráficos:
 Sistemas Operacionais mais utilizados no mundo:
                   

Navegadores mais utilizados:


 Países que mais utilizam a Internet:

        
3 - Funcionamento
Componentes básicos de um computador
1.     Processador
  • ULA
  • UC
  • Registradores
  • Clock
3.     Memória
  • Principal
  • Secundária
  • Cache
4.     Barramentos
5.     Dispositivos de Entrada e Saída


1.     Componentes básicos de um computador



2.     Processador (ou microprocessador)

É um circuito integrado (ou chip). É considerado o cérebro do computador. É ele que executa os programas, faz os cálculos e toma as decisões, de acordo com as instruções armazenadas na memória.
Os microprocessadores formam uma parte importantíssima do computador chamada de UCP (Unidade Central de Processamento), ou em inglês CPU (Central Processing Unit). Antes da existência dos microprocessadores, as CPUs dos computadores eram formadas por um grande número de chips, distribuídos ao longo de uma ou diversas placas. Um microprocessador nada mais é que uma CPU inteira, dentro de um único chip.
Ligando-se um microprocessador a alguns chips de memória e alguns outros chips auxiliares, construiu-se um computador inteiro em uma única placa de circuito, chamada placa mãe dos microcomputadores.


A CPU realiza as seguintes tarefas:
1.     Busca e executa as instruções existentes na memória. Os programas e os dados que ficam gravados no disco (rígido ou disquete) são transferidos para a memória. Uma vez estando na memória a CPU pode executar os programas e processar os dados.
2.     Comanda todos os outros chips do computador
A CPU é composta por:
  • unidade de controle (UC)
  • unidade lógica e aritmética (ULA)
  • registradores
  • unidade lógica e aritmética (ULA) assume todas as tarefas relacionadas às operações lógicas (and, or, not, etc.) e aritméticas (adições, subtrações, ...)
  • unidade de controle (UC) assume toda a tarefa de controle das ações a serem realizadas pelo computador, comandado todos os demais componentes de sua arquitetura. É a UC que deve garantir a correta execução dos programas e a utilização dos dados corretos nas operações que as manipulam.
  • Os registradores
A CPU contém internamente uma memória de alta velocidade que permite o armazenamento de valores intermediários ou informação de comando. Esta memória é composta por registradores (ou registros) na qual cada registro possui uma função própria. Uma registro memoriza um número limitado de bits, geralmente uma palavra de memória. Os registros mais importantes:
  • contador de programa (PC) que aponta para a próxima instrução a executar;
  • registro de instrução (IR) que armazena a instrução em execução;
  • outros registros que permitem o armazenamento de resultados intermediários.
  • Clock
Clock é um circuito oscilador que tem a função de sincronizar e ditar a medida de velocidade de transferência de dados entre duas partes essenciais de um processamento, por exemplo, entre o processador e a memória principal. Esta frequência é medida em ciclos por segundo, ou hertz .
3.     Memória
Constitui de um conjunto de circuitos capazes de armazenar os dados e os programas a serem executados pela máquina. Temos as seguintes categorias de memória:
a ) A memória principal (ou memória de trabalho)
É onde normalmente devem estar armazenados os programas e dados a serem manipulados pelo processador. Este tipo de memória aparece como um conjunto de chips que são inseridos na placa mãe do computador.
Tipos de memória
Os chips de memória podem ser divididos em duas grandes categorias:
  • RAM (memória de leitura e escrita)
São chips de memória que podem ser gravados pela CPU a qualquer instante. A CPU usa a RAM para armazenar e executar programas vindos do disco, para ler e gravar os dados que estão sendo processados. É uma memória volátil ( quando o computador é desligado, todos os seus dados são apagados). Por esta razão, os dados e programas devem ficar gravados no disco, que é uma memória permanente.
·                    Memórias não voláteis
São memórias cujas informações mantidas não são perdidas caso o computador seja desligado.
Exemplo: BIOS (basic input-output system – sistema básico de entrada e saída). Está gravado em uma memória permanente localizada na placa mãe. Tipos de memórias permanentes:
  • ROM
São chips que podem ser lidos pela CPU a qualquer instante, mas não podem ser gravados pela CPU. A gravação é feita pelo fabricante. Este tipo de memória foi usada para armazenar a BIOS.
  • PROM
É uma ROM programável. A gravação pode ser feita apenas uma vez, pois utiliza um processo irreversível.
  • EPROM
É uma ROM programável e apagável. Pode ser programada comportando-se com o uma ROM. A EPROM pode ser apagada com raios ultravioletas de alta potência.
  • EEPROM
É um tipo de memória ROM mais flexível. Pode ser apagada sob controle de software. Utilizada para armazenar as BIOS atuais.
Memória fora da placa mãe
A placa mãe contém quase toda a memória de um microcomputador, mas outras placas também podem conter memórias, do tipo RAM e do tipo ROM. As placas de vídeo contém uma ROM com a sua própria BIOS e uma RAM chamada de memória de vídeo
b) A memória secundária (ou memória de massa)
Não é acessada diretamente pela CPU. O acesso é feito através de interfaces ou controladoras especiais. É uma memória do tipo permanente. Possui alta capacidade de armazenamento e um custo menor que o da memória principal. A memória secundária não é formada por chips, e sim por dispositivos que utilizam outras tecnologias de armazenamento (magnética ou ótica).
Exemplos: disco rígido, disquete, fita magnética e cd-rom.
Placas controladoras:
·         SCSI (small compact system interface) permite a conexão de diversos periféricos;
·         IDE (intelligent drive electronics)
3.     A memória cache
É uma área reservada de memória que possui duas funções:
  • Aumentar o desempenho do computador
  • Aumentar o tempo de vida das unidades de disco
Temos dois tipos de memória cache:
  • A que vem incorporada à máquina, dessa forma é mais rápida que a memória RAM;
  • A que é implementada via software na memória RAM, aumentando o desempenho do acesso ao disco.

4.     Barramentos
Um barramento ou bus, é um caminho comum pelo qual os dados trafegam dentro do computador. Este caminho é usado para comunicação e pode ser estabelecido entre dois ou mais elementos do computador.
O tamanho do barramento determina quantos dados podem ser transferidos em uma única vez (16 bits, 32bits, ...)
Um PC possui muitos barramentos, que incluem:
·         Barramento do processador
É o barramento que o chipset (chips de suporte adjacentes contidos na placa mãe) usa para enviar/receber informações do processador.
·         Barramento de cache
É um barramento dedicado para acessar a cache. Usado pelos Pentium Pro e Pentium III.
·         Barramento de memória
Conecta o sub-sistema da memória ao chipset e ao processador.

·         Barramento local de entrada/saída (E/S)
Usado para conectar periféricos de alto desempenho à memória, chipset e processador. Exemplo: placas de vídeo, interface de redes de alta velocidade. Os mais comuns:
  • Vesa local bus (VLB)
  • Peripheral component inter connect bus (PCI)
·         Barramento padrão de entrada/ saída(E/S):
Usado para periféricos lentos (mouses, placas de som) e também para compatibilidade com dispositivos antigos.
  • Industry standard architecture (ISA)
Todos os barramentos possuem duas partes: um barramento de endereçamento (que transfere a informação de onde o dado se encontra) e um barramento de dados (que transfere os dados em si, ou seja, o valor de memória).
5.     Dispositivos de Entrada e Saída ou Periféricos
São equipamentos utilizados como portadores das informações que o computador irá processar. Através desses dispositivos, o computador pode armazenar, ler, transferir e receber dados.
Dispositivos de entrada:
  • Teclado
  • Mouse
  • Drive de CD-ROM
  • Microfone
  • Scanner
Dispositivos de saída:
  • Vídeo
  • Impressora
  • Alto-falante
Dispositivos de entrada e saída:
  • Disco rígido
  • Drive de disquete
  • Unidade de fita magnética
  • Modem
Tipos de comunicação com os dispositivos:
A CPU comunica-se com os periféricos através de circuitos chamados interfaces ou portas de E/S, que implementam a transmissão de dados segundo duas políticas:
·         comunicação paralela: impressora;
·         comunicação serial: mouse, modem.


 4 – Tipos de Sistemas

Quais são os tipos de sistemas operacionais?

Existem 4 tipos básicos de sistemas operacionais. Eles são divididos em grupos relacionados com o tipo de computador que controlam e o tipo de aplicativos que suportam. Estas são as categorias mais abrangentes:
·         sistema operacional de tempo real (RTOS - Real-time operating system). É utilizado para controlar máquinas, instrumentos científicos e sistemas industriais. Geralmente um RTOS não tem uma interface para o usuário muito simples e não é destinado para o usuário final, desde que o sistema é entregue como uma "caixa selada". A função do RTOS é gerenciar os recursos do computador para que uma operação específica seja sempre executada durante um mesmo período de tempo. Numa máquina complexa, se uma parte se move mais rapidamente só porque existem recursos de sistema disponíveis, isto pode ser tão catastrófico quanto se uma parte não conseguisse se mover porque o sistema está ocupado.
·         monousuário, monotarefa. O sistema operacional foi criado para que um único usuário possa fazer uma coisa por vez. O Palm OS dos computadores Palm é um bom exemplo de um moderno sistema operacional monousuário e monotarefa.
·         monousuário, multitarefa. Este tipo de sistema operacional é o mais utilizado em computadores de mesa e laptops. As plataformas Microsoft Windows e Apple MacOS são exemplos de sistemas operacionais que permitem que um único usuário utilize diversos programas ao mesmo tempo. Por exemplo, é perfeitamente possível para um usuário de Windows escrever uma nota em um processador de texto ao mesmo tempo em que faz download de um arquivo da Internet e imprime um e-mail.
·         multiusuário. Um sistema operacional multiusuário permite que diversos usuários utilizem simultaneamente os recursos do computador. O sistema operacional deve se certificar de que as solicitações de vários usuários estejam balanceadas. Cada um dos programas utilizados deve dispor de recursos suficientes e separados, de forma que o problema de um usuário não afete toda a comunidade de usuários. Unix, VMS e sistemas operacionais mainframe como o MVS são exemplos de sistemas operacionais multiusuário.

Foto cedida Apple Tela do sistema operacional Mac OS X Panther
É importante diferenciar os sistemas operacionais multiusuário dos sistemas operacionais monousuário que suportam rede. O Windows Server e o Novell Open Enterprise Server podem suportar centenas ou milhares de usuários em rede, mas os sistemas operacionais em si não são sistemas multiusuário de verdade. O administrador do sistema é o único "usuário" do Windows Server ou do Novell Open Enterprise Server. O suporte à rede e todos os usuários remotos são, do ponto de vista do sistema operacional, um programa sendo executado pelo administrador.
Agora que você conhece os tipos de sistemas operacionais, vamos entender as suas funções básicas.

4 - Sistemas Multiprocessados

INTRODUÇÃO AOS SISTEMAS OPERACIONAIS

1 - Introdução
Os sistemas multiprocessados são sistemas com múltiplos processadores e caracterizados pela execução simultânea de duas ou mais instruções pelo uso de mais de um processador. Nesse caso, os conceitos de multiprogramação são aplicados a vários processadores ao mesmo tempo.
Os sistemas multiprocessados permitem que vários programas sejam executados em paralelo, ou que um programa tenha duas ou mais de suas instruções executadas em paralelo.
O multiprocessamento pode ocorrer em múltiplos processadores que compartilham uma mesma memória primária (fortemente acoplados) ou em múltiplos computadores independentes, com o uso de sistemas operacionais de rede ou sistemas operacionais distribuídos (fracamente acoplados). No caso de computadores independentes, cada um tem seus próprios recursos.
Os sistemas multiprocessados podem ser classificados como fortemente acoplados e fracamente acoplados, que está relacionado à forma de comunicação entre esses múltiplos processadores.
Os sistemas fortemente acoplados são classificados em simétricos e assimétricos.
 Nos sistemas fracamente acoplados, os processadores estão em diferentes máquinas e são classificados como sistemas operacionais de rede e sistemas operacionais distribuídos.
No entanto, não existe muito consenso em torno das definições de sistemas operacionais distribuídos. Alguns autores consideram esse sistema fortemente acoplado quando provê um nível de integração e compartilhamento de recursos mais intenso e transparente ao usuário. O fato é que, nesse caso, fortemente ou fracamente acoplado depende da solução de software  adotada.
 2 - Sistemas fortemente acoplados
Pela necessidade de formas mais rápidas de processamento, as tecnologias têm caminhado para a utilização de técnicas de paralelismo. Paralelismo consiste em dividir o processo em fragmentos e executar simultaneamante em diferentes processadores, isso para aumentar a velocidade de execução de um programa.
Sistemas fortemente acoplados são os que têm mais de um processador ligado no mesmo barramento. Nesse caso, existe processamento paralelo, aumento da capacidade de processamento, compartilhamento da memória e de periféricos e também tolerância a falhas [se um processador parar, o outro continua funcionando].
2.1 - Sistemas simétricos
Uma forma de paralelismo é SMP [Symmetric Multi-Processor, ou multi processadores simétricos], onde um grupo de processadores trabalha em conjunto compartilhando uma única memória através de um único barramento. Isso torna possível qualquer processador executar uma parte do processo.
O Multiprocessamento simétrico trata todos os processadores igualmente. Qualquer processador pode fazer o trabalho de outro processador, e os processos são divididas em correntes que podem rodar concorrentemente em qualquer processador disponível. O SMP melhora tanto o desempenho da própria aplicação quanto o processamento total do sistema.   Os sistemas SMP requerem alguma forma de memória compartilhada e suporte do sistema operacional, além de aplicações que saibam tirar proveito do paralelismo.
Os sistemas modernos como Linux, Windows, Mac OS e membros da família Unix suportam SMP.
Num sistema SMP, em cada um dos processadores roda uma cópia idêntica do sistema operacional, existe comunicação entre esses processadores e as tarefas [processos] são distribuídas [escalonadas] entre os processadores.
Atualmente multiprocessamento SMP é muito usado em máquinas com mais de um processador. Essa máquina usa arquitetura de processadores paralelos MIMD [Multiple Instruction Multiple Data]. No entanto, se houver mais de 8 processadores em paralelo a solução é NUMA [Non-Uniform Memory Access, ou acesso não uniforme à memória].
2.2 - Sistemas assimétricos
Nos sistemas de multiprocessamento assimétrico, os processadores não são tratados igualmente e existe um processador que é o mestre e controla o sistema, que fica distribuindo tarefas para cada processador escravo.
Essa solução é antiga e permitia adicionar mais um processador a um sistema desenvolvido para trabalhar com um único processador. Essa solução foi usada nos anos 1960 e 1970, como

5 - Interface de uso

Sistema operacional com interface gráfica, no caso, o Debian com blackbox.
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 dois tipos de interface: o GUI (graphical user interface), conhecida também por interface gráfica, e o CUI (command-line interface), sendo essa mais conhecida como interface de linha de comando.

GUI (Graphical User Interface)

Nesse tipo de interface, o usuário tem a disposição um ambiente de trabalho composto por menus, ícones, janelas e outros itens disponíveis. 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.
Sistema operacional em linha de comando.

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.


“TUI”à Text User Interface ou Interface de Usuário Textual (e às vezes Terminal User Interface), foi inventado após a invenção das interfaces gráficas do usuário, para distingui-los de interfaces de usuário baseadas em texto. Tui´s são diferentes de interfaces de linha de comando em que, como GUI’s, eles usam a área da tela inteira e não proporcionam necessariamente linha por saída de linha. No entanto, Tuis usam somente texto, símbolos e cores disponíveis em um terminal de texto típico, enquanto GUIs normalmente usam modos gráficos de alta resolução.


6 - Sistemas operacionais on line ou WebTops
 Trata-se de sistemas identicos aos que conhecemos (Windows, Linux, Mac, Unix) disponíveis na web para podermos acessar de onde quisermos, desde que tenha acesso à internet.
Estes sistemas possuem várias utilidades: armazenar arquivos, criar um documento de texto, ouvir música, enfim, tudo aquilo que o desenvolver do sistema disponibilizar.
Segundo o Wikipédia os sistemas operacionais online são:
Um webtopweb desktopdesktop 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, Yahoo! e Windows Live 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, Macintosh, 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).

Exemplos de Webtops:
eyeOS -. webtop bonito alimentado pelo software eyeOS;
Glide - sistema operacional on-line com suporte para BlackBerry, Palm, Windows Mobile, Symbian e os usuários do iPhone.
  
7 - Pseudossistema Operacional

        Pseudo-Sistema Operacional ou Pseudo-OS são sistemas operacionais que não são íntegros, ou seja, embora apresentem uma interface de usuário, estes não se comunicam diretamente com o hardware do computador, sendo necessária a utilização de outro sistema operacional como hospedeiro para este Pseudo-OS para que este possa acessar por meio do kernel do sistema hospedeiro à memória e ao hardware do computador. Alguns exemplos de Pseudo-OS são os WebOS, que não se comunicam diretamente com o hardware e a memória do computador e para sua execução são necessários aplicativos como um browser (ou navegador) compativel e um sistema operacional com kernel rodando no computador (servindo de sistema operacional hospedeiro). Um outro exemplo situado como meio termo entre pseudo-sistema e um sistema completo são as versões do Windows do 1.0 ao 4.2, pois são executadas em cima de uma versão original ou modificada do MS-DOS, mas também possuem funções próprias de gerenciamento da máquina.

Tipos:
          §  WebOS ou Internet Pseudo-OS
          §  Pseudo-OS executável
          §  Máquina Virtual como o VMware

Vídeo Aula: Pseudo-classes em CSS