Que fait FreeMemory?

13

Il existe une application très appréciée sur le Mac App Store appelée FreeMemory . Il prétend pouvoir "augmenter votre mémoire libre d'un simple clic". Bien qu'il soit gratuit en ce moment, je pense qu'il coûte normalement 99 cents.

En tant qu'informaticien, mon intuition à propos de l'application est qu'il s'agit presque certainement d'huile de serpent; dans un système d'exploitation moderne, tout ce que l'application pourrait faire serait au mieux inutile et, au pire, nuisible aux performances.

Ma meilleure supposition est que l'application fait probablement quelque chose pour que le système vide la mémoire «inactive», ce qui n'a probablement aucun effet sur les performances. Cependant, très peu d'informations sont fournies sur l'application, et je suis réticent à l'installer sur ma machine. Je ne connais pas aussi bien OS X que Linux et Windows, donc je peux me tromper sur la façon dont OS X gère la RAM.

Mes questions sont:

  • Que fait exactement FreeMemory et comment y parvient-il? Existe-t-il une API publique qui peut donner aux programmes de l'espace utilisateur l'accès aux paramètres de gestion de la mémoire du système d'exploitation?
  • L'utilisation de FreeMemory pourrait-elle réellement améliorer les performances, ou s'agit-il d'huile de serpent comme je le soupçonne?
Mitch Lindgren
la source
3
Une excellente question! L'une de mes plus grandes bêtes noires n'est pas seulement la diffusion de FUD mais son utilisation pour escroquer les gens de leur argent durement gagné!
Merci pour toutes les réponses réfléchies. J'ai en fait installé "Free Memory" sur mon MBP car il semblait vraiment s'enliser dans la commutation entre les applications. Avec l'application FM installée, ce n'est pas vraiment mieux, et il y a une irritation supplémentaire que l'application étant "Libération de mémoire", rien d'autre ne fonctionne, .. du tout, .. pendant 45 secondes environ. Je ne pense pas que mon MPB exécutant OS X6.8 gère vraiment bien sa propre mémoire, mais cette application ne semble rien aider.

Réponses:

12

Absolument rien d'autre que frauder les gens de leur argent. Ne me demandez pas pourquoi Apple l'a approuvé. iOS et OS X gèrent la mémoire selon les besoins. Beaucoup de FUD prétendant qu'il est pauvre. Aucune preuve à l'appui de ces affirmations. Aucun fait jamais présenté. Personne avec un minimum d'expérience ou d'éducation dans le domaine n'est jamais venu (que j'ai vu) et a accrédité les revendications. L'huile de serpent.

Vous souhaitez améliorer les performances? Achetez un meilleur appareil. Seul un meilleur matériel peut être synonyme de meilleures performances. Vous pouvez bien sûr optimiser un système, mais cela ne fait pas cela, cela ne fait que déplacer la mémoire disponible.

Voici une ventilation de la façon de comprendre la gestion de la mémoire dans OS X ( avec la permission d'Apple ):

Mémoire libre

Il s'agit de RAM qui n'est pas utilisée.

Mémoire filaire

Les informations de cette mémoire ne peuvent pas être déplacées vers le disque dur, elles doivent donc rester dans la RAM. La quantité de mémoire câblée dépend des applications que vous utilisez.

Mémoire active

Ces informations sont actuellement en mémoire et ont été récemment utilisées.

Mémoire inactive

Ces informations en mémoire ne sont pas activement utilisées, mais ont été récemment utilisées.

Par exemple, si vous avez utilisé Mail puis l'avez quitté, la RAM que Mail utilisait est marquée comme mémoire inactive. Cette mémoire inactive peut être utilisée par une autre application, tout comme la mémoire libre. Toutefois, si vous ouvrez Mail avant que sa mémoire inactive ne soit utilisée par une autre application, Mail s'ouvrira plus rapidement car sa mémoire inactive est convertie en mémoire active , au lieu de charger Mail à partir du disque dur plus lent.

Maintenant, même avec une compréhension rudimentaire de la gestion de la mémoire dans le système d'exploitation d'Apple, dites-moi si vous pensez que "libérer" la mémoire inactive est utile? Il est disponible pour toute application qui en fait la demande et si la même application veut la reprendre, elle obtient un boost de vitesse. Ce n'est bien sûr pas aussi simple que cela, mais raser la mémoire inactive et la déplacer vers la mémoire libre n'entraîne aucune augmentation des performances. Après tout, comment est-ce possible? Un bon système devrait accumuler toute votre mémoire et l'allouer aux choses qui en ont besoin. La mémoire libre est une mémoire gaspillée car, par définition, elle n'est pas utilisée. Si vous disposez de 8 Go de RAM et que vous disposez de 4 Go d'espace libre à tout moment, vous disposez d'un système exécutant 4 Go.

La mémoire inactive dans OS X est allouée intelligemment. Je changerai de ton quand je verrai des données valides et fiables qui prétendent le contraire. Et honnêtement, si rien d'autre, pensez-vous qu'une application tierce a trouvé le Saint-Graal de la gestion de la mémoire qui a échappé aux ingénieurs de classe mondiale d'Apple pendant tout ce temps (sans parler des milliers de programmeurs UNIX open source)? Comme je l'ai dit, l'huile de serpent.


la source
Remarque, l'application est spécifiquement OS X plutôt que iOS, mais j'aime la réponse.
Nicholas Smith
@NicholasSmith iOS gère la mémoire à peu près de la même manière que OS X. Sa structure de fichiers est également identique, tout comme l'architecture du noyau. Pour ces fonctions de bas niveau, vous pouvez parler d'iOS et d'OS X interchangeables (évidemment, iOS est modifié pour fonctionner sur l'arche ARM7, mais à nos fins, nous n'avons pas à nous en préoccuper), mais c'est hors sujet et je modifié ma réponse pour mieux se concentrer sur la question du PO. Merci. Je ne sais pas pourquoi j'ai tissé iOS ici ... je dois apprendre à mieux lire.
les similitudes sont la raison pour laquelle je l'ai aimé, vous pouvez voir comment OS X gère plus facilement dans des circonstances de mémoire limitée via iOS.
Nicholas Smith,
@NicholasSmith c'est un bon point, et devrait ajouter un soutien supplémentaire que toutes ces applications de gestion de la mémoire (iOS et OS X) ne font absolument rien (dommage qu'Apple les approuve; à tout le moins, elles semblent "malhonnêtes").
Pourquoi mon mac préfère-t-il commencer à échanger comme un fou même s'il y a plus de 40% de ma mémoire comme "inactive"
Alexander - Reinstate Monica
6

Installés et testés, ils exécutent la commande de purge et libèrent de la mémoire inactive. Ce n'est pas de l'huile de serpent à 100%, il peut y avoir des situations où OS X ne libère pas correctement l'inactif et commence à frapper le fichier d'échange basé sur disque (entraînant un impact sur les performances d'E / S), mais c'est assez inutile pour la majorité des utilisateurs.

Bien que s'ils gagnent 0,99 $ pour encapsuler une commande dans une barre de menus, j'ai vraiment besoin d'obtenir ma licence de développeur Mac.

Nicholas Smith
la source