I grund och botten, vad som inte kan ändras med datordata och minne beror på den nivå du pratar om:
* på hårdvaranivå: De fysiska egenskaperna för lagringsmediet själv. När en hårddiskfat är fysiskt repad, förloras dessa data troligen oåterkalleligt. På liknande sätt förändrar en utbränd transistor på ett RAM-chip permanent sin förmåga att lagra information. Dessa är * fysiska * begränsningar, inte mjukvarubegränsningar.
* på programvaranivå (med vissa begränsningar): Data skrivna till vissa typer av minne kan vara extremt svåra eller praktiskt taget omöjliga att ändra. Detta inkluderar:
* Skrivskyddat media: CD-skivor, DVD-skivor och vissa typer av flash-enheter kan göras skrivskyddade, vilket förhindrar oavsiktliga eller skadliga förändringar. Detta skydd kan emellertid ofta förbikopplas med specialiserade verktyg.
* firmware: Firmware är programvara på låg nivå inbäddad i hårdvara, och att ändra det är ofta en komplex process som kräver specialverktyg och kunskap. Felaktigt modifierande firmware kan permanent skada enheten.
* Data med kryptografiskt skydd: Data krypterad med en stark, okänd nyckel är effektivt oföränderlig utan nyckeln. Uppgifterna är *där *, men dess betydelse är otillgänglig.
* på logisk nivå: Datastrukturer kan ibland införa begränsningar. Till exempel, om en databas är utformad med referensintegritet, kanske du inte kan ta bort en post som har länkar till andra poster, såvida du inte tar bort de beroende posterna. Detta är inte en fysisk begränsning, utan en logisk som verkställs av programvaran.
Kort sagt, medan datordata och minne är utformade för att vara utbytbara finns begränsningar på fysiska, programvara och logiska nivåer. Dessa begränsningar kan förhindra att förändringar görs enkelt, eller i vissa fall alls.