Puppy Linux est une famille de distributions Linux légères connues pour leur facilité d'utilisation et leur empreinte mémoire minimale. Développé par Barry Kauler et la communauté, Puppy Linux peut fonctionner entièrement à partir de RAM, en utilisant généralement environ 600 Mo (64 bits) ou 300 Mo (32 bits). Il est parfait pour les anciens systèmes, les netbooks et pour un usage général. Puppy Linux est un système d'exploitation complet fourni avec une collection d'applications adaptées aux tâches d'usage général. La distribution comprend des applications telles que AbiWord, Gnumeric, MPlayer et des navigateurs Web légers. Contrairement aux autres distributions Linux, Puppy Linux ne nécessite pas une installation complète. Il peut démarrer à partir d’une clé USB et fonctionne bien même sur des systèmes dotés de RAM limitée. Le gestionnaire de packages de Puppy Linux, Puppy Package Manager, installe par défaut les packages au format PET (Puppy Enhanced Tarball), mais il accepte également les packages d'autres distributions. Le gestionnaire de fenêtres par défaut dans la plupart des versions de Puppy est JWM.