Sockets são implementados entre a camada de aplicação e a ca...

Próximas questões
Com base no mesmo assunto
Q2780322 Arquitetura de Software

Sockets são implementados entre a camada de aplicação e a camada de transporte. A interface de socket define uma interface entre a aplicação e as entidades de transporte: conjunto de primitivas para definir portas, estabelecer conexão (ou não), enviar e receber dados. Socket é um descritor de arquivo: paradigma abrir-ler-escrever-fechar. São algumas primitivas básicas do socket:

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos comentar a questão e analisar as alternativas para entender por que a alternativa correta é a D.

Os Sockets são interfaces de comunicação entre a camada de aplicação e a camada de transporte no modelo de rede. Eles permitem que aplicações se comuniquem através de uma rede, utilizando primitivas específicas para estabelecer conexões, enviar e receber dados.

Para trabalhar com sockets, especialmente no contexto de programação de rede, algumas das primitivas básicas incluem:

  • socket(): Cria um novo socket, que será usado para comunicação.
  • bind(): Associa o socket a um endereço IP e a um número de porta específicos.
  • listen(): Coloca o socket em modo de escuta, aguardando conexões de clientes.
  • accept(): Aceita uma conexão de um cliente, retornando um novo socket para essa conexão.

Analisando as alternativas:

Alternativa D - socket(); bind(); listen(); accept(): Esta é a alternativa correta, pois lista primitivas fundamentais para operações com sockets em uma aplicação servidor. Essas funções são usadas para criar um socket, associá-lo a um endereço e porta, colocar o socket em modo de escuta e aceitar conexões de clientes.

Alternativa A - do(); while(); write(); read(): Essa alternativa mistura dois comandos de loop (do e while) com funções de leitura e escrita de arquivos (write e read), mas não são primitivas específicas de sockets.

Alternativa B - close(); accept(); while(); write(): Aqui há uma mistura de primitivas, mas while() não é uma primitiva de socket, e close() e accept() são usadas em contextos diferentes.

Alternativa C - accept(); connect(); while(); do(): Novamente, temos uma mistura incorreta de comandos de loop (while e do) com primitivas de socket, mas não são todas específicas para operações com sockets.

Alternativa E - recvfrom(); sendto(); while(); read(): recvfrom() e sendto() são primitivas de sockets, mas while() e read() não são necessariamente associadas a primitivas básicas de sockets.

Portanto, com base nas funções corretas usadas para manipular sockets, a alternativa D é a correta.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo