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

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

Re: RES: [shell-script] Limites...


From: Mauricio
Subject: Re: RES: [shell-script] Limites...
Date: Thu, 02 Feb 2006 19:03:57 +0000
User-agent: Mozilla Thunderbird 1.0.7 (X11/20050923)

Muito obrigado Humberto! Era isso que eu estava procurando...

Abraćo,
ricio

Humberto Pereira wrote:
Olah,

Reinaldo Carvalho wrote:

Eu acho que ele quis perguntar, quantos bytes eu posso por em uma
variável do bash. (considerando que não foi configurado nenhum limite
de alocação de memória do security/limits.conf)

tipo assim..
a=a
i=0
while true ; do a=$a$a ; let i++ ; echo \$a contem $i bytes ; done

até onde isso vai? hehehe



Acredito q esse limite seja a memoria do sistema. Veja alguns testes:

[begnini 0 coke tmp]$ echo $BASH_VERSION
3.00.16(1)-release
[begnini 0 coke tmp]$ ls -lh file
-rw-r--r--  1 begnini begnini 50M 2006-02-02 12:01 file
[begnini 0 coke tmp]$ a=`cat file`
[begnini 0 coke tmp]$ echo -n "$a" > file2    (varios minutos depois...)
[begnini 0 coke tmp]$ diff file file2
[begnini 0 coke tmp]$

Ou seja, consegui criar uma variavel com 50 MB de conteudo sem problema
algum, tirando o gasto de memoria, claro.


Com um arquivo um pouco maior...

[begnini 0 coke tmp]$ ls -lha t
-rw-r--r--  1 begnini begnini 119M 2006-02-02 12:19 t
[begnini 0 coke tmp]$ a=`cat t`  (alguns minutos depois...)
[begnini 0 coke tmp]$ ps aux | grep bash
bash: fork: Não foi possível alocar memória

Ae a maquina morre :)

Versoes antigas do BASH tinham limite no tamanho da variavel. Se nao me
engano BASH 2.0 tinha como limite 64 kb.

PS: algo interessante eh a alocacao de memoria do BASH. Mesmo depois de
ter dado um unset a ou a="", o BASH continuava gastando quase a mesma
quantidade de memoria. P/ liberar a memoria do sistema, apenas matando o
shell.


[]s
Humberto Pereira


---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: address@hidden
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

Links do Yahoo! Grupos










reply via email to

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