sábado, 9 de junho de 2012

Arquitetura Unix



Histórico

Década de 1960
O responsável pelo desenvolvimento do sistema Unix foi Ken Thompson chamando de Unics( UNiplexed Information and Computing Service) e, posteriormente Unix. Inicialmente ele foi desenvolvido em assembly para um minicomputador, mas para torná-lo mais fácil de ser portado em outras plataformas foi desenvolvida uma linguagem de alto nível, e reescreveu o código do sistema nessa nova linguagem.

Em 1991, o finlandês Linus Torvalds começou o desenvolvimento Linux, com base no em suas experiências com o sistema Minix. O Linux evoluiu a partir da colaboração de vários programadores que ajudaram no desenvolvimento do kernel, utilitários e vários aplicativos.

A imagem a segui mostra as diversas ramificações do Unix.

Microsystem (SunOS e Solaris), HP (HP-UX), IBM (AIX) e compaq(Compaq Unix).

Características

Unix é um sistema operacional multiprogramável, multiusuário, que suporta múltiplos processadores e implementa memória virtual . Com as características a seguir:
  • Escrito em linguagem de alto nível, tornando fácil a compreensão e alteração do seu código e portabilidade para outras plataformas de hardware;
  • Oferece um conjunto de system calls que permite que programas complexos sejam desenvolvidos a partir de uma interface simples;
  • Flexibilidade, podendo se utilizado como sistema operacional de computadores pessoais, estações de trabalho e servidores de todos os portes, voltados para bando de dados, web, correio eletrônico e aplicação;
  • Implementação de threads, em algumas versões , e diversos mecanismos de comunicação e sincronização, como memória compartilhada, pipes e semáforos;
  • Suporte a um grande número de aplicativos disponíveis no mercado, sendo muitos gratuitos;
  • Suporte a diversos protocolos de rede, como o TCP/IP, e interfaces de programação, como sockets, podendo ser utilizado como servidor de comunicação, roteador, firewall e Proxy;
  • Implementação de sistema de arquivos com uma estrutura bastante simples, onde os arquivos são representados apenas como uma sequência de bytes. Além disso, existem diversas opções para sistemas de arquivos distribuídos, como NFS(Network File System), AFS (Andrew File System) e DFS( Distributed File System);
  • Oferece uma interface simples e uniforme com os dispositivos de I/O.


Estrutura do sistema

A maior parte do código do Unix é escrita em C e o restante como device drivers, em assembly o que possibilita uma grande portabilidade para diferentes plataformas de hardware. O Unix utiliza a estrutura de camadas para a construção do sistema, implementando dois modos de acesso, modo usuário e modo kernel:


sábado, 24 de março de 2012

Processadores

Vamos abordar o tema dos processadores essa parte tão importante para o desempenho de nossos computadores.



O processador ou UCP (unidade central de processamento) gerencia todo o sistema computacional controlando as operações realizadas por cada unidade funcional. Função principal é controlar e executar instruções presentes da memoria principal (memoria RAM).
O processador é composto por ULA (unidade lógica aritmética), UC (unidade de controle) e registradores.

A UC é responsável por gerenciar/organizar as atividades de todos os componentes do computador, como gravação/leitura de discos ou busca de instruções na memoria principal.

A ULA é responsável por operações lógicas (testes e comparações) e aritméticas (somas e subtrações).

Os Registradores tem como função principal armazenar dados temporariamente. O conjunto de registradores funciona como uma memoria de alta velocidade, mas de baixa capacidade. Tem registradores de uso geral que podem ser manipulados diretamente por instruções, e os de uso especifíco.

Registradores de uso especifícos


Contador de instruções (CI), ou Program Counter (PC) contém o endereçamento da próxima instrução que o processador deve buscar.

Contador de pilha (AP) ou Starck Pointer (SP) contém o endereço da memoria no topo da pilha, que é a estrutura de dados onde o sistema mantém informações sobre programas que estão sendo executadas e tiveram que ser interrompidos.

Registrador de status ou Program status word (PSW) é responsável por armazenar informações sobre a execução de instruções, como a ocorrência de um overflow.

sexta-feira, 16 de março de 2012

Estrutura do Sistema Operacional


O sistema operacional é um conjunto de rotinas que oferece serviços aos usuários e suas aplicações. O conjunto dessas rotinas recebe o nome de núcleo do sistema ou kernel.
Há três maneira de o usuário se comunicar com o kernel, uma delas é por intermédio das rotinas do sistema iniciada por aplicações.
Além disso o usuário pode interagir de forma mais amigável com o kernel usando utilitários ou linguagens de comando.

Funções do núcleo

A compreensão da estrutura e funcionamento de um sistema operacional não é simples, diferentemente de aplicações comuns sendo elas executadas de forma linear contendo inicio, meio e fim. As rotinas do sistemas são executadas de forma concorrente e sem uma ordem predefinida com base em eventos dissociados de tempo (eventos assíncronos). Muitos desses eventos estão relacionados com o hardware e a tarefas internas do próprio sistema operacional.

(imagem retirada do livro Arquitetura de sistemas operacionais 4ºed.
Francis Berenge Machado e Luiz Paulo Maia)




quarta-feira, 14 de março de 2012

Linux para recuperar o Windows

Quando o windows para de funcionar e você não consegue mais acessá-lo ou ocorre de você perder a sua partição, com esse vídeo do Baixaki você pode resolver esses e muitos outros problemas. Ou apenas Backups, resetar senhas e recuperar partições.



Aqui esta o link para download no site do Ubuntu  Download Ubuntu 11.10

sexta-feira, 9 de março de 2012

Hackers conseguem invadir Chrome






Pela primeira vez o navegador da poderosa Google cedeu as tentativas de encontrar erros no programa, até então o browser seria o único que ainda não tinha sido hackeado, dicamos agora que o chrome perdeu a "virgindade".


Os responsáveis por tal façanha foi a empresa VUPEN e um estudante russo  Sergey Glazunov, no evento Pwn2own, uma competição anual voltada para que pessoas identifiquem falhas e bugs nos principais serviços da web. A empresa conseguiu hackear 5 minutos depois do inicio do Pwn2own, tanto a empresa quanto Glazunov usaram um programa que se beneficia da vulnerabilidade do sistema operacional, para realizar o hack em um PC com windows 7. dessa forma eles obtém o controle total do sistema da Microsoft.