Nu är jag inte säker på om det var detta du syftade på i ditt inlägg men skulle inte inte bara en avinstallerare för ett program ta bort det som faktiskt lades in vid installation? Om det redan fanns saker, vid installation, som sedan programmet faktiskt använder så lämnas det kvar då det inte lades dit vid installation.
Eller jag är helt ute och reser?
Nej inte helt, men du undervärderar svårigheten. Låt säga att du har ett program som installerar en viss resurs, t.ex ett bibliotek för att koda ljudfiler (ta vilket exempel som helst, detta är bara ett exempel på en typisk sån resurs som man kanske vill dela) Om andra program då vill använda samma resurs så kan man ju tänka sig att det programmet tittar på om resursen finns, och om inte så installeras den.
Men, tänk nu om det nya programmet använder en uppdaterad version, ska då den gamla skrivas över och vad händer i så fall med det tidigare programmet, funkar det med den nya resursen. Eller ska det nya programmet använda den gamla resursen, och funkar i så fall det?
Låt nu säga att man tar bort program nummer 1, som ju installerades innan program nummer 2. Hur ska program nummer 1 veta att program nummer 2 använder resursen?
Eller, om man nu vill ta bort program nummer 2, hur ska det då veta om program nummer 1 finns kvar eller inte? Visst, man kan låta varje program "registrera" vilka delade resurser som används, och så dubbelkolla mot det.
Men, det innebär inte att det är slut med felkällor: I dagens värld har vi flera processor och/eller kärnor. Låt oss säga att en användare drar igång två installerare/avinstallerare samtidigt. Det kan innebär att t.ex. en installerare tror att en resurs inte ska installeras, men samtidigt håller en avinstallerare på att ta bort samma resurs, och den i sin tur kan inte veta att en ny installerare håller på.
Och trust me, allt sånt där skit händer också i verkliga världen. Det är verkligen ett område där Murphys lag är järnhård.
VIsst, allt sånt här kan lösas om det finns en infrastruktur för det på systemnivå, och alla använder det. Men på Mac OS finns öht inget sånt, och även om det fanns skulle det dröja år innan alla program hade anpassats till att använda det, och, så länge man tillåter gamla program att installeras kan INGET system vara säkert.
WIndows är vad gäller infrastrukturen åratal, närmast decennier före Mac OS, men däremot finns det väldigt många program som inte alls utnyttjar sig av möjligheterna.