Gente, desenvolvendo o protocolo PTDS1, acabei desenvolvendo um procolo simples para IPC (Inter Process Comunication), chama-se PCPR (Protocolo de comunicação de processos remotos):
[2][msg][data_size][data][cks][4]
[2] byte 2 (1 byte);
[msg] mensagem (1 byte)
[data_size] tamanho do bloco de dados de 1 à 250 (1 byte)
[data] dados (maximo 250 bytes)
[cks] checksum do pacote, exeto o primeiro e os 2 ultimos caracteres (2, cks e 4)
[4] byte 4 indicando o fim do pacote (1 byte)
cada frame do pacote tem no máximo 255 caracteres.
Não serve para enviar grandes blocos de dados como arquivos, para isto estou desenvolvento o PTDS.
Ótimo para IPC entre processos remotos
sexta-feira, 27 de novembro de 2009
segunda-feira, 16 de novembro de 2009
E Se a nossa informática não fosse em base 2
Você nunca pensou como seria a nossa informática se em vez da base 2, utiliza-se outras bases?
A base 2 na informatica dá-se devido ao fato de que transistores (dispositivos eletrônicos que, na informática, são utilizados para guardar bits) assumem dois estados, ligado ou desligado, ou seja, 1 e 0.
Mas e se tivessem outras bases. Veja esta lista que mostra quantos valores caberiam em alguns tipos de variáveis muito conhecidas dos programadores:
Legenda
B = Base binaria
T = Base trinaria
O = Base Octal
H = Base Hexadecimal
Byte
B 256
T 6.561
O 16.777.216
H 4.294.967.296
Word
B 65.536
T 43.046.721
O 281.474.976.710.656
H 18.446.744.073.709.551.616
Integer 32Bits
B 4.294.967.296
T 1.853.020.188.851.841
O 79.228.162.514.264.337.593.543.950.336
H 340.282.366.920.938.463.463.374.607.431.768.211.456
Integer 64Bits
B 64 18.446.744.073.709.551.616
T 64 3.433.683.820.292.512.484.657.849.089.281
O 6.277.101.735.386.680.763.835.789.423.207.666.416.102.355.444.464.034.512.896
H 115.792.089.237.316.195.423.570.985.008.687.907.853.269.984.665.640.564.039.457.584.007.913.129.639.936
A base 2 na informatica dá-se devido ao fato de que transistores (dispositivos eletrônicos que, na informática, são utilizados para guardar bits) assumem dois estados, ligado ou desligado, ou seja, 1 e 0.
Mas e se tivessem outras bases. Veja esta lista que mostra quantos valores caberiam em alguns tipos de variáveis muito conhecidas dos programadores:
Legenda
B = Base binaria
T = Base trinaria
O = Base Octal
H = Base Hexadecimal
Byte
B 256
T 6.561
O 16.777.216
H 4.294.967.296
Word
B 65.536
T 43.046.721
O 281.474.976.710.656
H 18.446.744.073.709.551.616
Integer 32Bits
B 4.294.967.296
T 1.853.020.188.851.841
O 79.228.162.514.264.337.593.543.950.336
H 340.282.366.920.938.463.463.374.607.431.768.211.456
Integer 64Bits
B 64 18.446.744.073.709.551.616
T 64 3.433.683.820.292.512.484.657.849.089.281
O 6.277.101.735.386.680.763.835.789.423.207.666.416.102.355.444.464.034.512.896
H 115.792.089.237.316.195.423.570.985.008.687.907.853.269.984.665.640.564.039.457.584.007.913.129.639.936
sexta-feira, 13 de novembro de 2009
Protocolo para tranferencia de arquivos e IPC multiplos
Comecei agora a desenvolver um protocolo para fazer a comunicação entre dois processos remotos, permitindo que arquivos, mensagens de IPC e outros dados sejam transferidos simultaneamente.
O protocolo possui uma interface para a transferencia de arquivos bem trabalhada, permitido que, centenas de arquivos sejam tranferidos simultanemante (Claro que tudo depende da capacidade da rede).
Estou trabalhando com pacotes de no máximo 512 bytes. Não sei se é essa a causa, mas algo esta consumindo CPU. Vou fazer testes com buffers maiores.
Pretendo, ao término, disponibilizar o protocolo.
O protocolo possui uma interface para a transferencia de arquivos bem trabalhada, permitido que, centenas de arquivos sejam tranferidos simultanemante (Claro que tudo depende da capacidade da rede).
Estou trabalhando com pacotes de no máximo 512 bytes. Não sei se é essa a causa, mas algo esta consumindo CPU. Vou fazer testes com buffers maiores.
Pretendo, ao término, disponibilizar o protocolo.
Assinar:
Postagens (Atom)