• Nenhum resultado encontrado

Até muito pouco tempo, a grande preocupação dos projetistas de sistemas operacionais estava centrada no conceito de interligação entre equipamentos, com uma grande parcela dos investimentos sendo direcionada para a área hoje denominada de “redes locais”. Segundo Deitel (1990), a evolução deste tipo de aplicação passou, logo a

seguir, pela introdução do conceito de processamento em lotes (batch) e, após, pelo conceito de tempo compartilhado ou time-sharing (CTSS)(CORBATÓ, MERWIN-DAGGETT e DALEY, 1962), que culminou com o surgimento do sistema Multics (DALEY e DENNIS, 1968, BENSOUSSAN,CLIGEN e DALEY, 1972), que pretendia suportar um grande número de

usuários simultâneo. Apesar de não ter sido um sucesso comercial, esse sistema influenciou o desenvolvimento de vários sistemas posteriores.

Analisando-se o modelo evolutivo dos sistemas operacionais a partir de uma análise das seções anteriores, ou seja, sob a ótica de requisitos funcionais, também é possível identificar um movimento cíclico semelhante àquele discutido anteriormente na seção 2.3. Esta análise é apresentada a seguir.

Segundo Deitel (1990), nos primórdios da computação, logo após o advento dos

hardware. A complexidade de controle nas operações de entrada/saída conduziu ao desenvolvimento das bibliotecas de E/S (Figura 16).

Figura 16 - Fase 0: primeiro estágio evolutivo dos sistemas operacionais.

A partir deste pequeno, mas importante nível de abstração, os programadores passaram a ser mais produtivos. Afinal, não era mais necessário preocupar-se com os detalhes de mais baixo nível. Mais tarde surge o conceito de sistema operacional e aplicações mais complexas começam a ser construídas, demandando novas necessidades, como a interligação entre computadores.

Nas primeiras implementações de redes locais, o suporte era fornecido por aplicações que rodavam acima do sistema operacional, o que tornava o sistema ineficiente e instável. Como essa facilidade não era suportada pelos sistemas, tornou-se necessária a construção de bibliotecas específicas para implementar os mais variados protocolos de comunicação.

Surgiram então vários fornecedores de protocolos de comunicação no mercado e, novamente, aplicações mais complexas foram sendo construídas, gerando novas demandas (Figura 17). Vários fornecedores de soluções surgiram no mercado nesta época.

Entretanto, à medida que o tempo foi passando, os projetistas de sistemas operacionais agregaram ao núcleo do sistema as tarefas de suporte à rede, tornando-as uma facilidade “natural” do sistema.

Na fase seguinte, os protocolos, antes executados como extensões, passaram a fazer parte dos sistemas (Figura 18). Isso fez com que os programadores não precisassem mais se preocupar com detalhes de protocolos, visto que a API do sistema operacional passou a prover abstrações que permitiam a eles acessar tanto os recursos locais como os recursos remotos, através de operações tradicionais de leitura/escrita.

Figura 18 - Fase 2: protocolos incorporados ao sistema operacional

Esta realidade verificou-se também com as interfaces de interação entre hardware e o usuário. Nos últimos 10 anos, observou-se um direcionamento dos investimentos no sentido de se abandonar as antigas interfaces de comunicação orientadas a caractere, para a adoção cada vez maior de suporte a interfaces gráficas. Em paralelo ao desenvolvimento destas interfaces gráficas, um novo periférico passou a compor “naturalmente” o contexto de um ambiente de computação: o mouse. Da mesma forma, as primeiras soluções incorporavam uma aplicação que executava sobre o sistema operacional e que fornecia o suporte necessário para a utilização deste recurso de hardware. Não se admite, atualmente, que um sistema operacional não suporte de forma natural (ou nativa) equipamentos deste tipo.

A partir do momento em que se disponibilizaram para o usuário interfaces que permitiam a utilização de gráficos, novas necessidades e produtos surgiram no sentido de agregar facilidades de sons e manipulação de imagens. Novamente seguiram-se as antigas práticas de se agregar aplicações para suportar estas facilidades e, num momento seguinte, os sistemas operacionais passaram a suportar originalmente estes recursos. Mais uma vez, aplicações novas e mais complexas começaram a ser construídas. Então surgiu a Internet e, com ela, novas demandas.

Num primeiro momento, foram construídas aplicações que permitiam a navegação pela rede através de aplicações chamadas navegadores ou browsers (Figura 19).

Figura 19 - Fase 1: Navegadores desenvolvidos como bibliotecas externas

O movimento seguinte foi o de incorporar os recursos de navegação (browsing) no sistema operacional para criar um tal nível de abstração que, tanto os recursos da máquina local, como os recursos remotos, passam a ser tratados da mesma forma (exceto pelo atraso imposto pelos canais de comunicação). Tomando-se por base o modelo acima, observa-se um movimento cíclico no processo evolutivo. Em princípio, os recursos disponibilizados pelo sistema operacional permitem a construção de aplicações capazes de gerar novas demandas, que são atendidas através de soluções proprietárias. Numa geração seguinte, essas soluções são incorporadas ao sistema, gerando novo nível de abstrações (Figura 20). E o ciclo se repete.

Figura 20 - Fase 2: Navegadores incorporados ao sistema operacional

Seguindo-se este caminho evolutivo, as pesquisas indicam que, possivelmente, o próximo modelo a ser agregado ao contexto dos computadores está associado à utilização de soluções de interface de voz, em substituição dos recursos de hardware, teclado e mouse. As aplicações atualmente existentes ainda são incipientes e não têm suporte de sistema operacional. Na verdade, os sistemas operacionais, em sua grande maioria, ainda

tratam esta facilidade como um recurso multimídia e, assim, classificam-na como dado, fornecendo somente suporte para os aspectos de armazenamento e transferência de/para os periféricos associados (placas de som e sintetizadores). Assim, projeta-se um movimento imediato no sentido de construirem-se aplicações específicas para reconhecimento de voz (como o ViaVoice da IBM), e uma posterior absorção desta facilidade pelo sistema operacional.

Com base nas tendências de pesquisa, descritas anteriormente, e na observação de que há uma demanda crescente por soluções de extração e manipulação de conhecimento

(HAN e KANEBER, 2000; ZAIANE e JIAWEI, 1995), estima-se que outro possível movimento de absorção de soluções proprietárias ocorrerá sob a forma da incorporação, pelo sistema operacional, das funções de gerência de conhecimento. O uso cada vez maior destas técnicas nas aplicações tem ocorrido em função de novas demandas que a atual plataforma computacional disponibiliza.

Zaiane e Jiawei(1995)afirmam que:

"(...) estamos vivendo num período era denominado 'Era da Informação'. Isso porque acreditamos que a informação conduz ao poder e ao sucesso e graças aos avanços tecnológicos, como computadores ou satélites, estamos coletando uma tremenda quantidade de informação. Confrontados com essa enorme quantidade de dados, nós estamos criando novas necessidades para auxiliar-nos a tomar melhores decisões gerenciais. (...)".

Dieng et al. (1998), ao pesquisarem técnicas, métodos e ferramentas que auxiliem a

gerenciar o conhecimento corporativo, afirmam:

"(...) há um interesse crescente na capitalização do conhecimento (tanto teórico quanto prático) de grupos de pessoas na organização. Grupos, esses, possivelmente dispersos geograficamente. Portanto, há a necessidade de ferramentas que possam viabilizar a integração de recursos e conhecimento (know-how) corporativo. (...)".

Este fato tem desencadeado um processo de produção de bibliotecas proprietárias para suporte a algoritmos de redes neurais, lógica difusa, raciocínio baseados em casos, sistemas especialistas e algoritmos genéticos, os quais são embutidos nas aplicações de forma transparente. Portanto, pode-se antecipar que um possível próximo movimento deverá ser o da absorção desta tecnologia pelos sistemas operacionais (Figura 21).

Figura 21 - Próximas demandas

É importante destacar, ainda, que o ciclo evolutivo acima apresentado não descarta as tecnologias que a fase anterior produziu, mas procura agregar num todo uniforme, e pelo menos teoricamente consistente, o conjunto de soluções que estavam anteriormente dispersos. Dessa forma, é criado um nível mais amplo de abstração, que remete ao ciclo evolutivo através da geração de novas aplicações e demandas. Exemplos de frameworks híbridos são descritos em Bridges e Vaughn (2000)e Leckie(1995).