Você está na página 1de 21

Software

Elab. por dr Lino

Software: conjunto de instrues ou programas capazes de fazer funcionar a parte fsica do computador

Elab. por dr Lino

Software (Classificao)
Podemos classificar o software quanto finalidade de seu desenvolvimento em bsico e aplicativo e quanto s leis e regras que regem seu uso, redistribuio e modificao, em software livre e proprietrio. Software bsico o conjunto de softwares que permite ao usurio criar, depurar e modificar as aplicaes criadas por ele: Sistema operacional; Interface grfica; Linguagens de programao; Utilitrios.
Elab. por dr Lino 3

Sistema operacional (SO)


Para realizar o controle do computador como um todo, foram desenvolvidos programas supervisores que se encarregam das funes repetitivas, e por vezes bastante complexas, envolvidas em sua operao. Esses programas so denominamos Sistemas Operacionais. Diferentes modelos de UCP ou famlias de computadores normalmente diferem quanto ao sistema operacional utilizado. Para micros, os sistemas operacionais mais difundidos so: MS-DOS, Windows 95, Windows 98, Windows ME, Windows 2000, Linux: para os PC compatveis; SYSTEM 8, MacOS X: para as mquinas Apple; UNIX, Linux: para os sistemas multiusurio.
Elab. por dr Lino 4

Funes de um sistema operacional


Gesto de memria; Gesto de processador; Gesto de arquivos; Gesto de dispositivos de E/S.

Elab. por dr Lino

Tipos de sistemas operacionais


Os sistemas operacionais so classificados considerando-se a interaco dos usurios com seus programas, o nmero de programas em execuo simultnea e o tempo de resposta exigido.

a) Sistema Operacional Batch Os programas dos usurios so submetidos em lotes sequenciais para execuo atravs de dispositivos de E/S. O usurio no tem nenhuma interaco com o seu programa durante a execuo, somente recebe uma listagem com os resultados. O tempo de resposta pode variar de poucos minutos at vrias horas.
b) Sistema Operacional Monosurio-Monotarefa Voltado ao usurio que interage com a mquina atravs do vdeo/teclado, surgiu com os microcomputadores. Um nico usurio pode estar utilizando a mquina e permitida a execuo de uma nica tarefa de cada vez, deste usurio. Exemplo: DOS
6

Elab. por dr Lino

c) Sistema Operacional Monousurio-Multitarefa Onde um nico usurio pode estar utilizando a mquina, mas mais de uma tarefa pode estar sendo executada, pois h uma gesto mais eficiente dos recursos de mquina. Exemplo: Windows 95, Windows 98, Windows ME, OS/2
d) Sistema Operacional Multiusurio-Multitarefa Em um sistema multiusurio, fatias de tempo do processador so utilizadas pelos diversos usurios do sistema, em um processo chamado timesharing. Os usurios tm a sensao de ter o computador a sua disposio, mas na verdade suas tarefas so executadas serialmente. Exemplo: UNIX, LINUX.

Elab. por dr Lino

e) Sistema Operacional de rede Exemplo: Windows NT, Windows 2000

f) Sistema Operacional de Tempo Real Caracteriza-se por ser, em grande parte, dependente da aplicao. O computador est ligado a processos externos dos quais recebe realimentao. Os sinais recebidos comandam as aces do S.O. O resultado das computaes pode ser usado para direccionar o processo fsico (ver Figura a seguir). Esses sistemas so projectados para uma aplicao especfica. Exemplo: monitorizao de pacientes, controle de elevadores, controle de trfego, etc.

Elab. por dr Lino

Figura - Esquema de funcionamento de um S.O. de tempo real

Tendncias em SO
As verses mais recentes dos SOs comerciais so tipicamente ambientes operacionais que integram:
Interface grfica; Facilidades para atendimento a redes; Facilidades de comunicao com outros SOs. Interface Grfica

Programa que transforma as ordens e os comandos de um sistema operacional, ou de outro tipo de software, em palavras e smbolos grficos mais fceis de serem entendidos pelo usurio. Exemplo: Windows (anterior ao Windows 95, para o MS-DOS). Elementos tpicos de interfaces grficas: Janelas; cones (smbolos grficos); Menus (pop-up, pull-down); Caixas de dilogo.
Elab. por dr Lino

Dispositivos apontadores: Mouse; Canetas electrnicas; Dedo (em telas sensveis ao toque).
9

Processos e Threads
O conceito de processo a base para implementao de um sistema multiprogramado. O processador projectado apenas para executar instrues, no sendo capaz de distinguir qual programa se encontra em execuo. A gesto de um ambiente multiprogramado funo exclusiva do sistema operacional, que deve controlar a execuo de diversos programas e o uso concorrente do processador. Portanto, para que um programa seja executado tem que estar associado a um processo. A gesto de processos uma das principais funes de um sistema operacional. Atravs de processos, um programa pode alocar recursos, compartilhar dados, trocar informaes e sincronizar sua execuo. Nos sistemas multiprogramados, os processos so executados concorrentemente, compartilhando o uso do processador, da memria principal e dos dispositivos de E/S.
Elab. por dr Lino 10

Estrutura do processo
Inicialmente, um processo pode ser entendido como um programa em execuo, s que seu conceito mais abrangente. Em um sistema multiusurio, cada usurio associado a um processo. Ao executar um programa, o usurio tem a impresso de possuir o processador e todos os demais recursos reservados exclusivamente para o seu uso. Na realidade, o processador executa o programa de um usurio durante um intervalo de tempo e, no instante seguinte, poder estar processando um outro programa.
Para que a troca de programas ocorra sem problemas, necessrio que todas as informaes do programa interrompido sejam guardados para que, quando este retornar a ser executado, no lhe falte nenhuma informao necessria a continuao do processamento. Todas as informaes importantes e necessrias execuo de um programa fazem parte de um processo.

Um processo tambm pode ser definido como o ambiente onde o programa executado. Este ambiente, alm das informaes sobre a execuo, possui tambm o quanto de recursos do sistema um programa pode utilizar, como o espao de endereamento, tempo de processador e rea em disco.
Elab. por dr Lino 11

Estados do processo
Em um sistema multiprogramvel, um processo no deve alocar a CPU com exclusividade, de forma que possa existir um compartilhamento no uso do processador. Os processos passam por diferentes estados ao longo do seu processamento, em funo de eventos gerados pelo sistema operacional ou pelo prprio processo. Um processo pode encontrar-se em 3 estados diferentes: Execuo (Running) Um processo dito no estado de execuo quando est sendo processado pela CPU. Os processos se alternam na utilizao do processador seguindo uma poltica estabelecida pelo sistema operacional. Pronto (Ready) Um processo est no estado de pronto quando ele tem condies lgicas de executar e apenas aguarda para ser executado. O sistema operacional responsvel por determinar a ordem e os critrios pelos quais os processos em estado de pronto devem fazer uso do processador. Esse mecanismo conhecido como escalonamento.
Elab. por dr Lino 12

Espera (Wait) Um processo no estado de espera aguarda por algum evento externo ou por algum recurso para prosseguir seu processamento, ou seja, ele no tem condies lgicas de executar. Mudanas de estado de processos Um processo muda de estado durante o seu processamento em funo dos eventos originados por ele prprio (evento voluntrio) ou pelo sistema operacional (eventos involuntrios). Basicamente, existem quatro mudanas de estado que podem ocorrer a um processo: Pronto Execuo Aps a criao de um processo, o sistema o coloca em uma lista de processos no estado pronto, onde aguarda uma oportunidade para ser executado. Cada sistema operacional tem seu prprios critrios e algoritmos para a escolha da ordem em que os processos sero executados. Execuo espera Um processo em execuo passa para o estado de espera por eventos gerados pelo prprio processo, como uma operao de E/S, ou por eventos externos (sistema operacional suspende por algum perodo a execuo do processo).
Elab. por dr Lino

13

Espera Pronto Um processo no estado de espera passa para o estado pronto quando a operao solicitada concedida ou o recurso esperado concedido. Um processo em estado de espera sempre ter que passar pelo estado de pronto antes de poder ser seleccionado para execuo.
Execuo Pronto Um processo em execuo passa para o estado de pronto por eventos gerados pelo sistema, como o trmino da fatia de tempo que o processador possui para a sua execuo.

Elab. por dr Lino

Figura mudana de estado de processo

14

Um processo em estado de pronto ou de espera pode no se encontrar na memria principal. Esta condio ocorre quando no existe espao suficiente para todos os processos na memria principal e parte do contexto do processo levado para a memria secundria. Uma tcnica conhecida como swapping retira processos da memria secundria para a memria principal seguindo critrios de cada sistema operacional. Threads Threads: Processos podem ser divididos em pedaos para que ele no deixe de responder por algum motivo externo, onde isto possa atrapalhar a execuo do mesmo, ou para agilizar a programao e execuo. Quando programas so divididos em threads, podemos ter partes do processo rodando em paralelo, threads tambm so escalonveis. Trocas de contexto Processos so interrompidos e retomados a todo tempo, para que o sistema operacional possa fazer esse tipo de aco, necessrio a troca de contexto. Para que o sistema operacional possa interromper um processo e retomar ele mais tarde, ele usa a PCB (Process Control Block) para guardar todas as informaes que a CPU estava usando naquele momento e possa consulta-la mais tarde para que retome exactamente no ponto em que foi interrompido anteriormente. Elab. por dr Lino 15

Utilitrios
Softwares de apoio soluo de problemas de disco, memria, etc. Compactadores e descompactadores de arquivos, programas antivrus. Ex.: Norton Utilities, PC Tools, Virus Scan, F-Prot, WinZip. Vrus: programas capazes de se instalar de forma clandestina nos sistemas. Podem adoptar procedimentos perturbadores (fazer uma bolinha pular na tela) ou declaradamente destrutivos (apagar informaes) e so capazes de se auto reproduzir.

Elab. por dr Lino

16

Software aplicativo
So as aplicaes criadas para solucionar problemas especficos e que se valem das facilidades oferecidas pelo software bsico. Ex. contabilidade, folha de pagamento, correco de provas.

Software livre O conceito de software livre foi criado por Richard Stallman (da Free Software Foundation) em 1983. Software Livre refere-se liberdade dos usurios para executarem, copiarem, distriburem, estudarem, modificarem e melhorarem o software. Mais precisamente, diz respeito a quatro tipos de liberdade para os usurios: A liberdade de executar o programa, para qualquer finalidade. A liberdade para estudar como o programa funciona e adapt-lo s suas necessidades. A liberdade de redistribuir cpias de modo que se possa auxiliar um vizinho ou amigo. A liberdade de melhorar o programa e publicitar suas melhorias para o pblico, de modo que a comunidade como um todo seja beneficiada.
Elab. por dr Lino 17

Software Proprietrio
Software Proprietrio o software que no livre ou semi-livre. Seu uso, redistribuio ou modificao so proibidos ou so cercados de tantas restries que na prtica no so possveis de serem realizados livremente. Mecanismos que barateiam o custo de software proprietrio, sobretudo para empresas: Licena de uso empresarial: comprador adquire o direito de usar o software em um nmero determinado de mquinas a um preo menor do que a soma dos valores do nmero de cpias envolvidas.

Verso para rede: uma variao da licena de uso empresarial. O software comprado com autorizao para instalao em um servidor e uso em um nmero determinado de mquinas.

Elab. por dr Lino

18

Pirataria de Software
No mbito do software livre, no h pirataria de software, uma vez que a cpia e uso dos softwares esto garantidos de forma livre para os usurios. A pirataria de software existe para quem copia ou usa ilegalmente um software proprietrio. Uma cpia de um programa legal quando: Foi comprada por quem o usa e est sendo usada de acordo com o que foi acertado na compra; No foi comprada por quem o usa, mas essa pessoa est autorizada a usla (ver shareware, freeware e demos a seguir); uma cpia de segurana (backup) produzida pelo proprietrio do software ou pessoa autorizada, estando prevista na compra ou autorizao a realizao dessa cpia; uma cpia gerada no mesmo processo de instalao do software. H leis internacionais relacionadas pirataria de software desde 1976. Em vrios pases pirataria de software crime.
Elab. por dr Lino 19

Demos, Freewares e Sharewares


H softwares que podem ser usados temporria ou permanentemente a um custo zero ou muito prximo a isso, so os demos, freewares e sharewares.

Demos: softwares em verso reduzida, distribudos livremente, sem qualquer custo. Freewares: totalmente gratuitos. Nesta categoria esto os softwares de domnio pblico, que qualquer um pode usar sem custo ou restrio, uma vez que o desenvolvedor no reclama direitos autorais, e aqueles softwares que ainda que protegidos por direito autoral, foram liberados para uso e cpia pelo desenvolvedor. Sharewares: softwares distribudos gratuitamente para serem testados pelo usurio. Se houver interesse em ficar permanentemente com o software, ento ele dever ser registado e pago. Demos, Freewares e Sharewares podem em geral ser obtidos em BBSs ou via Internet, por download, ou ao adquirir revistas especializadas em Informtica.

Elab. por dr Lino

20

Obrigado pela Ateno dispensada

Elab. por dr Lino

21