Kermit (protocolo) - Kermit (protocol)

Sapo
Protocolo de comunicação
Propósito Transferência de arquivo
Desenvolvedor (s) Universidade Columbia
Introduzido 1981 ; 40 anos atras ( 1981 )
Local na rede Internet www .kermitproject .org

Kermit é um arquivo de computador transferência / gestão de protocolo e um conjunto de ferramentas de comunicação de software utilizados principalmente nos primeiros anos de computação pessoal na década de 1980. Ele fornece uma abordagem consistente para transferência de arquivos, emulação de terminal , programação de script e conversão de conjunto de caracteres em muitos hardware de computador e plataformas de sistema operacional diferentes .

Técnico

O protocolo Kermit oferece suporte a transferências de arquivos binários e de texto em conexões seriais full-duplex e half-duplex de 8 e 7 bits de maneira independente do sistema e do meio, e é implementado em centenas de computadores e plataformas de sistema operacional diferentes. Em conexões full-duplex, um protocolo de janela deslizante é usado com retransmissão seletiva que fornece excelente desempenho e características de recuperação de erro. Em conexões de 7 bits, as mudanças de bloqueio fornecem transferência eficiente de dados de 8 bits. Quando implementado adequadamente, como na coleção do software Kermit da Columbia University , seus autores afirmam que o desempenho é igual ou melhor do que outros protocolos como ZMODEM , YMODEM e XMODEM , especialmente em conexões ruins. Em conexões sobre multiplexadores estatísticos RS-232, onde alguns caracteres de controle não podem ser transmitidos, o Kermit pode ser configurado para funcionar, ao contrário de protocolos como o XMODEM, que exigem que a conexão seja transparente (ou seja, todos os 256 valores possíveis de um byte para serem transferíveis).

O Kermit pode ser usado como um meio de inicializar outro software, até mesmo ele mesmo. Para distribuir o Kermit por meio de redes não limpas de 8 bits , a Columbia desenvolveu .boo , um sistema de codificação binário para texto semelhante ao BinHex . Por exemplo, computadores compatíveis com IBM PC e Apple com uma placa de compatibilidade instalada podem se conectar a sistemas incompatíveis, como um computador mainframe para receber MS-DOS Kermit no formato .boo. Os usuários podem digitar um "baby Kermit" em BASIC em seus computadores pessoais que baixa o Kermit e o converte em binário.

Da mesma forma, as máquinas CP / M usam muitos formatos de disquete diferentes , o que significa que uma máquina muitas vezes não pode ler discos de outra máquina CP / M, e Kermit é usado como parte de um processo para transferir aplicativos e dados entre máquinas CP / M e outras máquinas com diferentes sistemas operacionais. O programa de cópia de arquivo CP / M PIP geralmente pode acessar a porta serial de um computador ( RS-232 ) e, se configurado para usar uma taxa de transmissão muito baixa (porque não possui correção de erro embutida), pode ser usado para transferir um pequeno , versão simples do Kermit de uma máquina para outra através de um cabo de modem nulo ou, na falta disso, uma versão muito simples do protocolo Kermit pode ser codificado manualmente em binário em menos de 2K usando DDT, a CP / M Dynamic Debugging Tool. Uma vez feito isso, a versão simples do Kermit pode ser usada para baixar uma versão totalmente funcional. Essa versão pode então ser usada para transferir qualquer aplicativo CP / M ou dados.

As versões mais recentes do Kermit incluem linguagem de script e automação de comandos. A linguagem de script Kermit evoluiu de sua linguagem de comando inspirada em TOPS-20 EXEC e foi influenciada sintaticamente e semanticamente por ALGOL 60 , C , BLISS-10 , PL / I , SNOBOL e LISP .

A exatidão do protocolo Kermit foi verificada com métodos formais.

História

No final da década de 1970, os usuários dos computadores mainframe da Columbia University tinham apenas 35 kilobytes de armazenamento por pessoa. Kermit foi desenvolvido na universidade para que os alunos poderiam mover arquivos entre eles e disquetes em vários microcomputadores em torno do campus, tais como IBM ou DEC DECSYSTEM-20 mainframes e Intertec Superbrains executando CP / M . Os mainframes IBM usavam um conjunto de caracteres EBCDIC e as máquinas CP / M e DEC usavam ASCII , então a conversão entre os dois conjuntos de caracteres foi uma das primeiras funções incorporadas ao Kermit. A primeira transferência de arquivo com o Kermit ocorreu em abril de 1981. O protocolo foi originalmente desenhado em 1981 por Frank da Cruz e Bill Catchings.

A Columbia University coordenou o desenvolvimento de versões do Kermit para muitos computadores diferentes na universidade e em outros lugares, e distribuiu o software gratuitamente; O Kermit para o novo IBM Personal Computer tornou-se especialmente popular. Em 1986, a universidade fundou o Projeto Kermit, que assumiu o desenvolvimento e começou a cobrar taxas para uso comercial; o projeto era autossuficiente financeiramente. Para uso não comercial, a Universidade de Columbia afirmou que

O Kermit é para todos usarem e compartilharem. Depois de obtê-lo, sinta-se à vontade para passá-lo para seus amigos e colegas. Embora seja protegido por direitos autorais e não seja de domínio público, pedimos apenas que você não tente vendê-lo com fins lucrativos e que o use apenas para fins pacíficos e humanos.

Em 1988, o Kermit estava disponível em mais de 300 computadores e sistemas operacionais. O protocolo se tornou um padrão de comunicação de dados de fato para a transferência de arquivos entre sistemas de computador diferentes e, no início da década de 1990, podia converter codificações de caracteres multilíngues . O software Kermit tem sido usado em muitos países, para tarefas que vão desde simples atribuições de alunos até a solução de problemas de compatibilidade a bordo da Estação Espacial Internacional . Ele foi adaptado para uma ampla variedade de sistemas de mainframe, minicomputador e microcomputador , incluindo computadores de mão e calculadoras eletrônicas de bolso. A maioria das versões tinha uma interface de usuário baseada no TOPS-20 Kermit original. Versões posteriores de algumas implementações do Kermit também oferecem suporte a conexões seriais e de rede.

As implementações atualmente suportadas incluem C -Kermit (para Unix e OpenVMS ) e Kermit 95 (para versões do Microsoft Windows a partir do Windows 95 e OS / 2 ), mas outras versões também permanecem disponíveis.

A partir de 1º de julho de 2011, a Columbia University deixou de hospedar este projeto e o lançou em código aberto. Em junho de 2011, o projeto Kermit lançou uma versão beta do C-Kermit v9.0 sob uma licença BSD revisada de código aberto com 3 cláusulas .

Além das implementações desenvolvidas e / ou distribuídas pela Columbia University, o protocolo Kermit foi implementado em vários pacotes de software de comunicação de terceiros, entre outros ProComm e ProComm Plus . O termo "SuperKermit" foi cunhado por fornecedores terceirizados para se referir a implementações Kermit de alta velocidade que oferecem recursos como operação full duplex, janelas deslizantes e pacotes longos; no entanto, esse termo foi preterido pela equipe Kermit original da Universidade de Columbia, que os viu simplesmente como características do protocolo central do Kermit.

Nomenclatura e direitos autorais

Caco recebeu o nome de Caco, o sapo dos Muppets , com permissão da Henson Associates . O ícone do programa na versão Apple Macintosh era uma representação de Caco, o Sapo. No entanto, um backronym foi criado, talvez para evitar problemas de marca registrada, K L10 E rror-Free R eciprocal M icroprocessor I nterchange nas linhas T TY.

O Kermit é um protocolo aberto - qualquer pessoa pode basear seu próprio programa nele, mas alguns softwares e códigos-fonte do Kermit são propriedade da Universidade de Columbia. A partir da versão 9.0 (começando com a primeira versão de teste após Alpha.09), C-Kermit tem uma licença de código aberto, a licença BSD revisada de 3 cláusulas. Todos podem usá-lo como quiserem para qualquer propósito, incluindo redistribuição e revenda. Ele pode ser incluído com qualquer sistema operacional onde funciona ou pode ser feito para funcionar, incluindo as versões gratuita e comercial do Unix e Hewlett-Packard (anteriormente DEC) VMS (OpenVMS). O suporte técnico estava disponível na Columbia University até 30 de junho de 2011.

Veja também

Referências

Leitura adicional

links externos