AULA 8 – Software do computador

DEFINIÇÃO

Software é a parte lógica do computador, caracterizado por conjuntos de instruções (comandos) e regras que permitem o hardware do computador executar tarefas.

Atua como interface de comunicação entre o homem e a máquina computador, já que o hardware e o ser humano falam línguas diferentes.

Defini desde como os circuitos eletrônicos do hardware devem funcionar e até como o usuário vai interagir com o hardware para que as ações de ambos se transformem em dados e informações.

Desta forma o software é que programa (define, controla e organiza) o que o hardware do computador faz.

A linguagem de programação é uma linguagem específica e padronizada que pode ser entendida pelo hardware ou por outros softwares do computador. Usamos as linguagens de programação para criar (escrever) programas.

Os objetivos de um software (programa) são diversos, porém sempre visam resolver um problema ou atender uma necessidade através do uso de computadores.

Instalar um programa é torna-lo ativo no computador para que possa realizar suas funções automaticamente ou através da intervenção direta de seu usuário.

Executar um programa é iniciar ou realizar tarefas no computador através de rotinas pré-programadas.

aula8_funcao_software

Figura: Identificando a função do software no computador.

FUNÇÕES

* Definir e controlar o que o hardware deve fazer.

* Estabelecer uma interface de comunicação entre o usuário e o hardware.

* Permitir a inserção, processamento e acesso de informações pelo do usuário.

  • * Resolver problemas e atender necessidades do mundo real através de computadores.

 

CATEGORIAS DE SOFTWARE

Podemos organizar a quantidade enorme de softwares diferentes que temos a disposição atualmente em três categorias de acordo com sua função principal no computador.

Aplicativos

Programas criados para atender necessidades específicas dos usuários do computador.

Os aplicativos podem ser modificados depois de escritos adicionando mais rotinas e opções de execução, estas modificações posteriores podem ser chamadas de complementos, atualizações e etc.

Dentro desta categoria ainda temos a subdivisão dos aplicativos de acordo com as necessidades e funções que disponibilizam para seus usuários.

Exemplos:

Processadores de texto: Aplicativos criados para escrever e criar documentos de texto no computador.

Navegadores Web: Aplicativos para acessar sites e páginas web numa rede de computadores.

Comunicadores instantâneos: Aplicativos para que usuários diferentes possam se comunicar através de uma rede de computadores.

Jogos: Aplicativos de entretenimento e interação ativa entre os usuários e o hardware do computador.

Softwares de segurança: Aplicativos que protegem os dados e recursos do computador contra usuários ou softwares mal-intencionados.

 

Drivers

Programas que ativam as funcionalidades do hardware instalado no computador. São programas escritos em linguagem de máquina exclusivamente para um hardware e sistema operacional destinado.

Deste modo todo hardware no computador para estar acessível ao usuário precisa ter um driver associado e instalado.

O sistema operacional que é o principal software do computador, como veremos a frente, necessita de um driver instalado para se comunicar com o hardware conectado ao computador.

O Sistema operacional tem um banco de drivers para que durante a instalação já configure e ative tudo que é preciso automaticamente, porém não acontece em todos os casos.

Sempre que conectados um novo hardware ao computador é necessária a instalação de um driver correspondente. Podemos também atualizar um driver e restaurar sua instalação para uma versão anterior.

 

Sistemas de Software:

São conjuntos de programas com funções específicas que trabalham juntos para disponibilizar todos os recursos do computador ao seu usuário. Temos vários tipos de acordo com o contexto e nível de funcionamento.

 

FIRMWARE

Sistema elementar de um computador, armazenado diretamente em um circuito de memória eletrônica acoplado a placa mãe. Comumente armazenado em CHIPS de memória ROM.

É responsável por inicializar o computador e ceder funções de configuração do funcionamento do hardware instalado. Em alguns casos pode também oferecer opções mais completas e uma interface mais intuitiva de configuração dos recursos do computador.

Sua atualização pode não ser possível ou exigir equipamentos específicos ou/e conhecimentos avançados do usuário.

Exemplos: Sistema BIOS, Sistemas de Roteadores Wi-fi, aparelhos de TV e Ar condicionado.

 

SISTEMA OPERACIONAL

É um conjunto de softwares que trabalham juntos e sincronizados afim de permitir e facilitar o uso dos recursos do computador por seus usuários.
É o software de base do usuário para todos os outros softwares e recursos do computador.

aula8_funcao_sistemaoperacional

Funções:

  • * Controlar e gerenciar o funcionamento do hardware do computador usando os drivers.
  • * Disponibilizar os recursos do computador aos usuários através dos aplicativos.
  • * Oferecer uma interface de acesso do usuário aos recursos do computador.

 

Exemplos: Windows, Linux, Android, MacOS, IOS, ChromeOS, FreeBSD e etc.

 

PARTES DO SISTEMA OPERACIONAL

 O sistema operacional pode ser dividido em duas partes ou modos de funcionamento, kernel e usuário.

Modo Kernel

É o núcleo do sistema operacional, onde toda a comunicação com o hardware do computador é realizada e as solicitações do usuário são efetivamente processadas. Este modo é protegido e o usuário por padrão não tem acesso a esta área do sistema.

Modo Usuário

É a área de contato do sistema operacional com o usuário e seus aplicativos. Aqui o usuário pode executar suas tarefas como abrir programas, salvar arquivos e etc.

Nesta área também está a interface do usuário que pode ser gráfica ou via terminal de comando de texto.

Estes modos ou níveis de funcionamento do sistema operacional se comunicam utilizando as chamadas de sistema.

 

aula8_estrutura_sistemaoperacional

Figura: Modelo de estrutura de um Sistema operacional

 

PROCESSO DE BOOT DO SISTEMA OPERACIONAL

 1. Processador acessa o chip de memória ROM da placa mãe e executa o programa BIOS que inicia todo o hardware conectado.

  1. 2. Software BIOS consulta o setup para verificar configurações, testa o hardware e identifica quais são os dispositivos de boot para inicializar o S.O.
  2. 3. O setor de inicialização do dispositivo de boot é acionado e inicia o programa Boot Loader.
  3. 4. O Boot loader identifica as partições ativas e os sistemas operacionais instalados e aciona o kernel do S.O padrão.
  4. 5. O kernel e acionado pelo Boot Loader e começa a carregar o S.O na memória RAM.
  5. 6. O Kernel carrega os drivers dos dispositivos na RAM
  6. 7. O Kernel carrega a interface de usuário (Tela de logon/Área de trabalho)

 

DISTRIBUIÇÃO DO SOFTWARE

SOFTWARE PAGO

São softwares onde o seu desenvolvedor cobra uma taxa de uso de cada usuário que utilize seu software.

A taxa de uso é chamada de *Licença de Software que é paga no momento da compra do software.

Esta licença é disponibilizada ao usuário em forma de um código alfanumérico chamado “SERIAL” ou “CHAVE DE ATIVAÇÃO” que é validado e ativado no momento da instalação do software no computador.

O usuário não pode alterar ou melhorar o software. Tem que usar do jeito que foi desenvolvido pelo fabricante.

A fabricante não divulga os detalhes de seu funcionamento e nem o “código fonte” do programa.

Exemplos: Windows, Microsoft Office.

 

SOFTWARE LIVRE

Softwares de domínio público, ou seja, pertencem a comunidade de usuários.

Não há necessidade de qualquer pagamento para poder adquirir ou instalar o software.

O software pode ser utilizado para qualquer fim ou em qualquer ambiente sem restrições.

Os códigos fontes destes softwares são disponibilizados para o usuário, podendo o usuário mais avançado personalizar e melhorar o software original.

O usuário também pode fazer cópias e distribuir o software para quem quiser e pode cobrar ou não um valor por isto.

Costumam seguir diretriz *GPL (Licença Pública Geral) que é o padrão mais popular atualmente.

Exemplos: Linux, WordPress, MySQL.

*Observação: A GPL surgiu de um programador chamado Richard Matthew Stallman que tem uma visão de que o software criado dever ser compartilhado livremente para todos.

 

SOFTWARE GRATUITO

Software que não é preciso pagar nenhum valor para adquiri-lo ou utiliza-lo.

Software gratuito não é software livre, o software gratuito pode ter seu código fonte bloqueado e o usuário impedido de fazer alterações.

Exemplos: Android , GoogleChrome, Whatsapp.

 

SOFTWARE DE CÓDIGO ABERTO (Open Source)

Software que tem seu código a total disposição de seu usuário e permite que seja alterado e licenciado como outro produto sem nenhum tipo de restrição. O que não é a mesma coisa que software livre.

O software de código aberto pode ser considerado uma expansão do conceito de software livre.

O conceito de Software Open Source surgiu em 1998 com Bruce Perens tem suas regras mantidas pela OSI ( Open Source Initiative).

Exemplos: Mozilla Firefox, LibreOffice e Thunderbird.