Comptache

Dispositif de swap à mémoire comprimé pour Linux
Télécharger maintenant

Comptache Classement & Résumé

Publicité

  • Rating:
  • Licence:
  • GPL
  • Prix:
  • FREE
  • Nom de l'éditeur:
  • Nitin Gupta
  • Site Internet de l'éditeur:
  • http://code.google.com/u/nitingupta910/

Comptache Mots clés


Comptache La description

Dispositif de swap à mémoire comprimé pour Linux Compcache est un outil qui crée un périphérique de bloc basé sur la RAM (nommé RamzSwap) qui agit comme disque d'échange. Les pages échancrivées sur ce disque sont compressées et stockées dans la mémoire elle-même.Compressing pages et les maintenir dans RAM augmente pratiquement sa capacité. Cela permet à davantage d'applications d'adapter la quantité de mémoire donnée. L'argument habituel que je reçois est - la mémoire est si bon marché alors pourquoi la peine de la compression? Donc, je liste ici certains des cas d'utilisation. Le repos dépend de votre imagination. * NETBOODS: Le marché est maintenant inondé de ces "ordinateurs portables léger". Celles-ci sont la mémoire contrainte mais ont suffisamment de CPU pour conduire sur la mémoire comprimée (par exemple, le processeur Cloudbook 1,2 GHz!). * Virtualisation: avec Comptache au niveau d'hyperviseur, nous pouvons compresser toute partie de la mémoire invité de manière transparente - ceci est vrai pour tout type de système d'exploitation invité (Linux, Windows, etc.). Cela devrait permettre d'exécuter plus de nombre de VMS pour une quantité donnée de mémoire d'hôte totale. * Dispositifs incorporés: la mémoire est rare et l'ajout de plus de mémoire augmente les coûts de l'appareil. En outre, le stockage Flash souffre des problèmes de nivellement de l'usure, de sorte qu'il est utile si nous pouvons éviter d'utiliser les utilisateurs en tant que périphérique de swap.Puiler: faire '- cela compilera tous les modules contre votre Kernelmake Doc - cela compilera RZSControl Manuel Page: Sous-projets / rzscontrol / man / rzscontrol.1 - Facultatif (hautement recommandé): - Appliquez le patch trouvé dans CompcAche / Patchs / Directory et compilez simplement le noyau comme d'habitude. Actuellement, le patch est contre 2.6.33 mais il devrait également s'appliquer aux noyaux légèrement plus âgés. Cela permettra à la fonctionnalité «ANTICIER GRATUITE» «Swap» permettant au noyau d'envoyer un rappel à Ramzswap dès qu'une fente de swap devient libre. Ainsi, nous pouvons immédiatement libérer la mémoire allouée pour cette page, éliminant toutes les données rassisées dans la mémoire (compressée). - Définir "#define config_swap_swap_free_notify" dans CompcAche / compat.h avant de compiler Compcache contre ce noyau corrigé. Sinon, ce swap notifier le rappel ne sera pas utilisé. Les fichiers binaires suivants sont créés: - RAMZSWAP.KO (pilote de noyau) - Sous-projets / RZSCONTROL / RZSCONTROL (outil d'espace utilisateur) Utilisation: Suite Affiche une séquence typique d'étapes pour l'utilisation de RAMZSWAP.1 ) Charger les modules: # Modules de dépendance de charge MODPROBE LZO_COMPPRESS MODPROBE LZO_Decompress # Exemple1: chargez le module RAMZSWAPS insmod ramzswap.ko num_devices = 4Ce crée 4 périphériques (/ dev / RAMZSWAP {0,1,2,3}) qui sont laissées ininitialisées. # Exemple2: Chargez le module RAMZSWAP et initialiser le premier périphérique INSMOD RAMZSWAP.KO NUM_DEVIES = 4 disksize_kb = 20480Cette Initialise le premier appareil (/ dev / RAMZSWAP0) avec disques de 20 Mo. Autres 3 périphériques (/ dev / Ramzswap {1,2,3}) sont laissés ininitialisés.2) Initialize: Utilisez Utilitaire RZSControl pour configurer et initialiser les périphériques RAMZSWAP individuels. Exemple: RZSCONTROL / DEV / RAMZSWAP0 --Init # Utilise la valeur par défaut de disquesize_kb * Voir le manuel de RZSControl pour plus de détails et des exemples * 3) Activer: Swapon / Dev / RamzSwap2 # ou tout autre périphérique RAMZSWAPI initialisé4) Statistiques: RZSCONTROL / DEV / RAMZSWAP2 --Stats5) Désactivation: Swapoff / dev / RAMZSWAP26) Réinitialisation: RZSCONTROL / DEV / RAMZSWAP2 --RESET7) Modules de déchargement: RMMOD RAMZSWAP RMMOD LZO_Compress RMMOD LZO_DecompressCommune Problèmes: - Si vous obtenez beaucoup d'erreurs de compilateur, assurez-vous de disposer du package pour Source du noyau installé. Par ex., Sur Fedora, son forfait 'Kernel-Devel'. Quoi de neuf dans cette version: · Synchronisation avec la version principale qui inclut les modifications ci-dessous. · Beaucoup et beaucoup de nettoyages. · Utilisez un petit boîtier pour le paramètre Module Ramzswap: Num_Devices -> Num_Devices. · Ajouter trois paramètres de module: backing_swap, memlimit_kb et disksize_kb Pour permettre l'initialisation du premier périphérique (/ dev / ramzswap0) sans utiliser l'utilitaire RZSControl (voir numéro 50). · Utilisez «structurer la page» au lieu de 32 bits PFNS dans RAMZSWAP Driver et XVMALLOC. C'est pour rendre ces 64 bits sûrs. · Xvmalloc n'est plus un module séparé et n'exporte aucun symbole. Sa compilée directement avec le pilote de bloc Ramzswap. · Suppression inutile {charger, décharger} _modules.sh scripts. · Corrigez pour vous assurer que Decksize correspond à des pages utilisables dans le fichier de swap de support. · Fixez une fuite de mémoire dans la condition d'erreur (rare) dans init_device (). · Fixez une fuite de mémoire dans une défaillance (rare) dans Create_Device (). · Supprimer les crochets de jet d'échange. Les notificateurs d'échange les rend redondants. · Unify init_device () chemin de défaillance et réinitialiser_device (). · N'acceptez pas d'échange avec des pages mauvaises. · Fixer la comptabilisation de zéro de page. · Utilisez une serrure pour des statistiques 64 bits pour éviter la corruption de la valeur. · Réécrire Swap Notify Patch. · Fixer le crash lorsque la réinitialisation est appelée lorsqu'il y a une instance d'E / S.


Comptache Logiciels associés