shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Dúvida export


From: Felipe Kellermann
Subject: Re: [shell-script] Dúvida export
Date: Sat, 24 Jun 2006 21:19:10 -0300 (BRT)
User-agent: Pine <http://www.washington.edu/pine/>

On Sat, 24 Jun 2006 8:50pm  -0300, Gilberto Martins wrote:

> Olá Felipe.
> 
> Achei interessante o teu texto, mas não entendi se vc quis dizer que :
> a) FIFOs têm uma característica chamada de "bloqueante"

Uma leitura/escrita, em UNIX, em um FIFO, faz o processo que está 
executando a operação bloquear. Faça um teste assim:

  % mkfifo teste
  % cat teste

O cat vai ser bloqueado até que exista alguém para escrever. E iria 
acontecer o mesmo caso fosse o contrário:

  % mkfifo teste
  % print palavra > teste

O shell vai ser bloqueado ("travado" por causar uma outra impressão) até 
que tenha alguém para ler. Obviamente, existe a opção de leitura ou 
escrita não bloqueante. Fiz este suporte na bash há um tempo. Assim tu vai 
tentar ler. Se tiver alguma coisa, ótimo. Se não tiver, fica sabendo que 
não tinha nada e segue. O mesmo para escrita. Se tinha alguém para ler, a 
escrita é feita. Se não tinha, continua normal. Enviei para a lista há um 
tempo o patch, eu acho. Se não achar, pode pedir que eu envio mais 
informações sobre o assunto.


> b) FIFOs realmente podem provocar travamentos ?
> 

Podem, como mostrei nos exemplos. Na zsh existe o zsh/select, que torna 
possível o shell fazer um select(2) (uma chamada de sistema que verifica 
se existe dado pronto para ser consumido, ou se existe consumidor, etc).

Eu acredito que a melhor referência sobre o assunto sejam os livros do 
próprio Tanenbaum, do Stevens ou do Silberschatz, ambos de sistemas. Os 
livros deles têm tradução para português.

-- 
Felipe Kellermann


reply via email to

[Prev in Thread] Current Thread [Next in Thread]