Sobre camada de transporte e sistema operacional

12 respostas
kaolzz

Pessoal, gostaria de saber o porque de a camada de transporte ser normalmente implementada pelo sistema operacional.

Obrigado.

12 Respostas

davidtiagoconceicao

Acredito que seja para facilitar o trabalho dos desenvolvedores, uma vez que a camada de transporte dos protocolos segue uma padronização, os sistemas operacionais implementam estas rotinas e reduzem a carga do desenvolvedor.

J

Camada de transporte de rede? Se for, ela está imbutida no kernel, afim de controlar os dispositivos físicos. Para um software ter livre acesso ao hardware, ele deve rodar como módulo do kernel.

kaolzz

Digo a camada de transporte (pensando no modelo OSI).
Sim, relacionado com o kernel/sistema operacional.
Gostaria de saber o porque dela ser normalmente implementada no SO

mesmo assim, valeu pela resposta !!

o/

victorwss

kaolzz:
Digo a camada de transporte (pensando no modelo OSI).
Sim, relacionado com o kernel/sistema operacional.
Gostaria de saber o porque dela ser normalmente implementada no SO

mesmo assim, valeu pela resposta !!

o/

Acho que é para facilitar mesmo. Uma vez que ela é necessária a diversos programas em diversas linguagens diferentes, é muito mais conveniente, fácil e seguro se o SO tomar conta dela.

J

Todo software que controla hardware de computador deve ser implementado como módulo do kernel. Senão o so nega o acesso ao hardware.

victorwss

Supondo que você esteja falando de um SO decente, é claro.

J

Bom…pelo menos os multitarefas de hoje. O dos, lembro que conseguia controlar o video e o mouse diretamente com assembly inline em pascal ou c.
Hoje, o kernel controla tudo isso e gerencia quais programas podem ou não acessar hardware.

louds

Ela é implementada no kernel pois a API exposta normalmente é a de sockets, que é de alto nível.

Porém nada impede trocar datagramas diretamente com a camada de enlace, todo SO moderno permite isso.

J

louds:
Ela é implementada no kernel pois a API exposta normalmente é a de sockets, que é de alto nível.

Porém nada impede trocar datagramas diretamente com a camada de enlace, todo SO moderno permite isso.

Mas isso é sob a gerência do so. Não é diretamente no hardware. Para ser direto no hardware tem que ser implementado na forma de driver.

D

Estou estudando essas porras agora para uma prova de Redes, como odeio essa matéria, auauhahaahua

louds

Unix suporta raw sockets e packet sockets a décadas. Ambos permitem uma aplicação em userspace manipular pacotes direto no transport ou no link layers.

De qualquer forma aqui vai um link que vai te ajudar bastante a entender o problema: http://tinyurl.com/6rhv33

J

Unix suporta raw sockets e packet sockets a décadas. Ambos permitem uma aplicação em userspace manipular pacotes direto no transport ou no link layers.

Opa…eu entendi. O que quis dizer é que isso não funciona diretamente no hardware. Se vc desabilitar o módulo no kernel, não vai mais poder utilizar esse recurso. A gerência de dispositivos de hardware é padrão em SOs modernos.

Criado 3 de dezembro de 2008
Ultima resposta 3 de dez. de 2008
Respostas 12
Participantes 6