PplWare Mobile

Memory Clean: Optimize a memória do seu Mac com um clique

                                    
                                

Este artigo tem mais de um ano


Autor: Pedro Simões


  1. tfae says:

    O ideal em qualquer sistema é que toda a memória RAM disponível esteja ocupada com informação.
    Dessa forma, quando a informação é necessária já estará em RAM e o seu acesso será mais rápido.
    Claro está que o sistema terá de saber gerir essa memória e ir libertando os recursos que já não são necessários (os que já não são utilizados há mais tempo, por exemplo), conforme a necessidade de alocação de mais memória.
    Isto tudo para dizer que este tipo de aplicações é um pouco “desnecessária”, mas é claro que pode ser útil em algumas situações 🙂

    • Nunes says:

      Isso está longe do ideal! Memória RAM cheia obriga quase sempre a usar o disco para paging, o que torna as coisas significativamente mais lentas! Por isso o ideal é haver sempre alguma memória livre disponível, para que qualquer programa possa ter flexibilidade em termos de memória. É tb importante que os programas libertem memória

      • tfae says:

        Sim, correcto. O que eu quis dar a entender foi que ter RAM “mais vazia do que cheia”, como muitos querem, não é o ideal, e que o ideal é ter o máximo de informação em memória.
        Claro que, como bem dizes, deveremos ter algum espaço disponível que permita essa flexibilidade, e isso subentendi no 3º parágrafo da minha resposta :
        “Claro está que o sistema terá de saber gerir essa memória e ir libertando os recursos que já não são necessários, conforme a necessidade de alocação de mais memória.”
        🙂

        • Nunes says:

          Não há uma quantidade de memória preenchida ideal, são vários factores envolvidos, dependendo das aplicações, quantidade total de memória, necessidade de abrir aplicações, etc!
          Nem sempre o sistema liberta a memória necessária para as aplicações. Daí que muitas pessoas recorram a este tipo de aplicações para que poder utilizar outra aplicação que necessita de muita memória!

          • tfae says:

            Cada vez menos isso é necessário.
            Os SOs de hoje em dia fazem cada vez mais uma melhor gestão da memória, precisamente para evitar escritas em disco!
            O OSX faz essa gestão, o Android faz essa gestão, o iOS faz essa gestão, e presumo que os demais SOs também o façam.
            Este tipo de aplicações cada vez menos são necessárias, chegando mesmo a serem desaconselhadas. Poderás ver a explicação do porquê no comentário do Nelson, mais abaixo (11:46 pm) ou então aqui:
            http://reviews.cnet.com/8301-13727_7-57589907-263/the-necessity-of-regular-use-of-the-purge-command-in-os-x/
            😉

          • Nunes says:

            Não disse que era aconselhável, aliás noutro comentário disse que pode tornar o sistema um pouco instável! Mas isso não significa que para certo tipo de utilizadores não chegue a um ponto em que é uma boa opção como último recurso, em vez de reiniciar o computador para libertar a memória!
            Quanto à gestão de memória, sim melhorou, mas a melhoria e o aumento de RAM nos computadores, têm sido aproveitados pelos programas, sistema e utilizadores… Por isso o problema continua a ser possível, apenas se torna menos comum ficar com a RAM cheia!

            A gestão de memória no Android e iOS é significativamente diferente do OS X, dado que não fazem Page out para o disco. No caso do iOS limita-se a guardar o estado da aplicação, fechar a aplicação e libertar a memória! Isso tem impacto na utilização, embora a memória gasta por cada programa seja mais pequena que no OS X!

      • Nelson says:

        Não, não obriga.

        Atualmente, a maior parte da memória RAM não é utilizada para guardar programas, nem variáveis ou buffers, é utilizada como cache, cachê de ficheiros, cache de páginas web. Essa cache em RAM é gerida pelo sistema operativo, e vai ao ar em menos de um ápice.

        Primeiro, porque o acesso á memória RAM é muito rápido, segundo, porque o sistema operativo não precisa de apagar, apenas fazer unlink (esquecer que tem lá a cachê), finalmente, é indiferente para um programador, pois um programa só deve fazer leitura de um endereço de memória depois de escrever para lá.

        • Nelson says:

          Além disso, o que esses utilitários fazem, é só ordenar para fazer unlink da cache, o que não tem utilidade.

          • Nunes says:

            Não é só isso que faz. Tem tb como consequência libertar uma parte considerável da memória RAM inactiva, algo que o sistema só faz gradualmente, e assim uma pessoa passa a ter mais memória livre disponível para abrir programas que requerem mais memória do que aquela que estava disponível!
            O problema é que às vezes esta acção pode tornar o sistema um pouco instável

          • Rascas says:

            O Nelson tem razão na maior parte do que diz.

            No mac os, a memória inactiva é precisamente a “cache”.

            Quando limpas a cache (memória inactiva), por exemplo, ficheiros previamente acedidos, programas anteriormente acedidos, vão demorar mais a serem reabertos quando forem precisos. Isto é mais fácil verificar se tiveres um disco mecanico porque com um ssd isto é obviamente tudo mais rápido. Num sistema unix (ou linux), quando tens pouca RAM livre, e abres um programa pesado, o sistema 1º usa a memória livre, depois começa a libertar esta memoria “inactiva” até não conseguir mais e se necessário começa a utilizar o swap.

            No windows não tenho grande conhcimento mas não deve andar mto longe disto.

          • Nunes says:

            @ Rascas
            “a memória inactiva é precisamente a “cache”.”
            Cache não é o mesmo que memória inactiva! Mais não seja porque a definição de cache tb engloba coisas que estão na memória activa!
            Neste contexto, fala-se em cache para o que foi escrito da RAM para o disco. O comando Purge chega a indicar isso mesmo – disk cache! Daí o meu comentário, dado que não percebi a ideia que o Nelson queria usar com o termo – o primeiro comentário dele ainda não tinha aparecido!
            De qualquer das formas, o Sistema não liberta a memória inactiva de qualquer maneira! Na sua gestão pode escrever parte dessa memória para o disco, ou disponibilizar menos memória RAM a outros programas do que o que o utilizador preferia, para manter parte da memória inactiva em RAM! Por isso o Purge liberta mais RAM do que a gestão normal do sistema!

          • Nelson says:

            Que é que interessa libertar a inactiva? A inactiva é o lixo e a cache.

            O SÓ já sabe que é lixo, e quando for preciso, marca-a como livre.

            É só mudar uma flag!

          • Nunes says:

            @ Nelson
            Não é só mudar uma flag, pois o sistema pode considerar que é necessário passar alguma coisa para o disco, e em caso de memória cheia é mais do que certo que não vai disponibilizar a quantidade de RAM ideal para um novo programa, por exemplo! A gestão de memória do sistema não é perfeita e só liberta RAM de forma muito gradual, tentando manter em equilíbrio a necessidade presente e futura!
            Com certo tipo de utilização/aplicação é fácil ficar com o disco cheio com swap files (paging)! Experimenta por exemplo pôr a imagem do desktop a mudar de minuto a minuto num computador com pouca memória livre, e vê o resultado!

          • Nelson says:

            Já tentei vezes suficientes, já fui suficientemente detalhado.

            Ou aprendes, ou mostras factos, ou ficas com a tua ideia.

            Ou se quiseres, eu posso dizer:

            Tens razão, pá, é mesmo isso, quando eu tiver fazer sistemas operativos outra vez, vais-me dar explicações, OK?

          • Nunes says:

            @ Nelson
            não Nelson, não foste detalhado porque não percebes o que é memória inactiva ou como funciona a memória virtual!
            Se prestasses um pouco de atenção ao comportamento do teu Mac com aplicações exigentes e uso diversificado, verificavas os limites da gestão de memória e como a coisa não funciona como dizes!

        • Nunes says:

          :S
          memória cheia não obriga a fazer paging? claro que obriga, experimenta ter a memória RAM cheia… tens logo actividade considerável no disco. Mesmo que parte da memória seja classificada como inactiva, o sistema não liberta essa memória toda quando a RAM fica cheia, prefere usar o disco para fazer paging (faz parte da memória virtual), daí ter que esperar mais tempo enquanto escreve para o disco, ou quando vai buscar ao disco. E antes do sistema libertar a memória tem que ser o programa a indicar que essa memória pode ser liberta, pelo menos é assim no Mac.

          • Nelson says:

            Não! Só faz page swap quando a “wired” e activa for superior á RAM. Isso só acontece quando um programa necessita realmente mesmo de muita memória.

            A inactiva nunca faz page swap!

            Tens aí muitos erros, o SO não liberta a inactiva toda de uma vez, vai fazendo-o gradualmente. Libertando primeiro os dados menos necessários (vários fatores de optimização: mais velhos, menos utilizados, etc.)

            A inactiva, é basicamente o “enquanto não for preciso mais memória, vai ficando aqui, já que não tenho mais utilidade para esta memória livre”.

            Inclusive, acelera o acesso ao disco (leitura/escrita), e poupa bateria, pois é utilizada como cache de disco.

          • Nunes says:

            :S
            devias ver como funciona a memória virtual e a sua gestão de memória, pois creio que estás a confundir a gestão da RAM com gestão de memória! Libertar memória RAM não é o mesmo que libertar memória, é apenas libertar memória física. No Mac continua com referência na memória virtual até instrução em contrário…
            A memória inactiva da RAM libertada continua na memória virtual, e pode ter sido necessário escrever para o disco, sim… se ainda não estivesse em disco!
            https://developer.apple.com/library/mac/documentation/Performance/Conceptual/ManagingMemory/Articles/AboutMemory.html
            “In OS X, if an inactive page contains data that has not been written to the backing store recently, its contents must be paged out to disk before it can be placed on the free list.”

            Para além disso, a RAM que vai libertando, a partir de determinado ponto pode não ser suficiente para a utilização – mesmo havendo bastante memória inactiva – aumentando a frequência de uso do disco! Encontras casos destes descritos na internet!

          • Nunes says:

            :S
            devias ver como funciona a memória virtual e a sua gestão de memória, pois creio que estás a confundir a gestão da RAM com gestão de memória! Libertar memória RAM não é o mesmo que libertar memória, é apenas libertar memória física. No Mac continua com referência na memória virtual até instrução em contrário…
            A memória inactiva da RAM libertada continua na memória virtual, e pode ter sido necessário escrever para o disco, sim… se ainda não estivesse em disco!

            “In OS X, if an inactive page contains data that has not been written to the backing store recently, its contents must be paged out to disk before it can be placed on the free list.”
            Para além disso, a RAM que vai libertando, a partir de determinado ponto pode não ser suficiente para a utilização – mesmo havendo bastante memória inactiva – aumentando a frequência de uso do disco! Encontras casos destes descritos na internet!

          • Nelson says:

            “In OS X, if an inactive page contains data that has not been written to the backing store recently, its contents must be paged out to disk before it can be placed on the free list.”

            Sabes ler ou não?

            A memória inativa é usada como cache, se tiver uma alteração que ainda não esteja no disco, e se essa página tiver que ir, as alterações têm de ser escritas no disco. Isso não óbvio? Isso é que é u,a cache de disco. Porém, as alterações são logo feitas no primeiro tempo oportuno.

          • Nunes says:

            @ Nelson
            sabes ler? mas isso é uma pergunta de jeito para algo que demonstra o contrário do que o que tu disseste!? A frase refere “paged to disk” e “backing store”, ambos termos usados em operações da memória virtual! Não está a falar em guardar ficheiros no sistema de ficheiros… os conteúdos continuam na memória virtual, apenas podem deixar de estar na memória física.
            Aprende primeiro o que é memória virtual, e tenta compreender o que é que considerado como memória inactiva pelo sistema! Só a frase citada já deveria ser o suficiente para compreenderes que nem tudo que está na memória inactiva é uma espécie de cache de ficheiros no disco!

            “as alterações são logo feitas no primeiro tempo oportuno”
            what?? Isto é gestão de memória, não um mecanismo para guardar ficheiros! A gestão de memória só escreve para o disco quando é mesmo necessário, não quando é oportuno!
            “Isso é que é u,a cache de disco”???? O cache no disco é o(s) swap file(s)!

          • Rascas says:

            Nunes, está visto que sabes usar o google para procuras mas dou-te um conselho, que até recomendas-te ao Nelson, que é tentar ver / por em prática aquilo que lês. Não leves tudo aquilo que vês / lês por assegurado.

            Fazer copy/paste de artigos sem os perceber para te tentares fazer de entendido não é boa ideia e podes passar por lorpa…

  2. Nelson says:

    Sinceramente,meste tipo de ferramentas, seja em que OS for, seja em que circunstância, o prejuízo (memória que elas ocupam) é sempre superior aos ganhos.

    O sistema operativo foi optimizado durante anos para optimizar os recursos que tem, e este tipo de ferramentas acabam por limpar a memória, mas depois o que foi limpo, o mais provável é que tenha de ser lido outra vez tudo do disco, que é logo muito penalizados em termos de performance.

  3. Vítor Ferreira says:

    Para tal basta ir à linha de comando do Mac OS X e fazer:

    $ purge

    VF

  4. Jorge Armijo says:

    Tem alguma app para limpar ram no iPhone 4 ?

    • xbuzzy says:

      fechar as apps 🙂

    • Nelson says:

      Para quê?

      A totalidade da RAM do iOS é sempre utilizada para, e só para o sistema operativo e a aplicação que está na frente, o SÓ trata de marcar de marcar as páginas de memória (parcelas da RAM) dos programas que não estão á tua frente logo como inactivos, ou seja, depois de esgotada a RAM livre, essa RAM marcada como inactiva, passa logo toda a páginas de RAM livre.

      Não vale a pena marcar páginas inactivas como livres sem necessidade, porque isso não demora absolutamente nada.

      Quando fechas as app’s, nem sequer marca as páginas como livres necessariamente. No iOS, cada app deve saber guardar o seu estado atual (por exemplo, onde é que as peças se encontram num jogo de xadrez), esse estado é guardado na memória flash, quando voltas á app, é enviado um aviso ao programa, a notificar que já tem um estado guardado, e o programa trata de fazer loading do jogo, e pôr as peças de xadrez no mesmo sítio. Quando tu fechas as app’s, a única coisa que faz, é apagar esse estado.

      Ou sejam nunca tens de te preocupar com a memória livre ou fechar app’s.

      E sim, são estás as regras que a Apple dita para todas as aplicações da App Store. Se não quiserem guardar o estado, é com os programadores, mas ninguém tem o direito de usar bateria ou memória quando não estão á frente.

  5. hahahahaha says:

    Para que tanta complicação. Basta abrir o terminal e digitar

    sudo purge

  6. EduardoSilva says:

    Eu pensava (e continuo a pensar…) que o Mac OS (eu uso Lion ainda… não sei se as novas versões melhoram isso) mantinha muitos dados na RAM para optimização… no entanto com o tempo fui constatando que alguma coisa não está bem, pois o Mac OS chega a níveis muitíssimo baixos de memória RAM muitas vezes (chega mesmo ao ponto de ficar sem memória RAM). Concordo que a ideia seja optimizar… no entanto, quando se fica sem memória RAM, não vejo que optimização temos se é necessário começar a usar o disco… Parece-me que este facto tem sido observado por muitas pessoas, daí surgirem este tipo de ferramentas para “limpar” a memória RAM inactiva.

    Pessoalmente também uso esta aplicação, das que experimentei é a que “limpa mais memória inactiva”. No entanto o que não gosto desta aplicação é que é muito lenta a limpar a memória, o que faz com que o sistema fique “lento” por um bom bocado (por isso nunca uso o “auto clean” desta ferramenta). Tal como referido pelo Vitor Ferreira o comando “purge” também permite “libertar” memória inactiva (se bem que liberta menos que o “memory clean”, não sei bem a razão) e é bastante mais rápido.

    Para limpar a memória inactiva com o purge “de vez em quando” criei dois “workflows” no meu sistema:

    -1) cada vez que o mac os liga o screensaver corre o comando “purge” (usado para isso uma pequena ferramenta chamada “Sleepwatcher” – http://www.bernhard-baehr.de/) – que permite correr aplicações quando o mac os entra/sai do screensaver mode. Isto é interessante pois permite limpar a memória quando não estou activo no computador…
    -2) tenho também um “crontab” script que corre o comando purge em momentos específicos do dia (normalmente a horas que não estou no meio de alguma actividade “importante”).

    Cumprimentos!

    • Bónus says:

      No Mavericks a gestão da memória foi muito melhorada, mas continua a guardar muito dados. Vejo a memória quase sempre “cheia”, mas por outro lado vejo as aplicações a gastarem muito menos memória que nas versões anteriores. No meu caso, o Safari no Mavericks usa cerca de 25% da memória que usava no Mountain Lion. E nota-se bem o sistema mais rápido.

  7. jedi says:

    existe alguma coisa para windows? deste tipo?

Deixe um comentário

O seu endereço de email não será publicado.

You may use these HTML tags and attributes: <a href="" title="" rel=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste site ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. A administração deste site reserva-se, desde já, no direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação do seu autor (nome completo e endereço válido de email) também poderão ser excluídos.