? Java Virtual Machine är en dator simuleras i mjukvara . När du kör ett Java -program , kör datorn den virtuella maskinen och den virtuella maskinen körs programmet . Utformningen av Java Virtual Machine gör det säkrare än att köra koden direkt på ditt system . System Security
Systemsäkerhet är en kombination av två saker : skydd mot oavsiktlig kraschar eller misslyckande på grund av fel i koden , och skydd mot skadlig kod från virus eller hackare . Oavsiktlig misslyckande är lätt nog att orsaka omedvetet i många programmeringsspråk genom misskötsel minne eller via andra fel . Skadlig kod gör skada genom att avsiktligt misskötsel minne på knepiga sätt , eller helt enkelt genom att få tillgång till datorn med hjälp av " alternativa metoder ", de kommandon som programmen använder för att ställa in maskinen att göra saker .
Memory Management
Java Virtual Machine gör flera saker för att skydda mot dessa hot . Först låter det inte program minne som de inte borde , eller tillgång till det i knepiga sätt ( program kan inte lägga pekare tillsammans för att få minnesadresser för saker de inte bör komma ) . Dessutom håller " garbage collection " -funktionen automatiskt reda på minneshantering och återvinner det som ett program inte använder längre . Dessa funktioner förhindrar en hel del programmerare fel och potentiella taktik hacker .
Sandbox
annan säkerhet välsignelse från Java Virtual Machine är att den fungerar som en " sandlådan . " När du öppnar en webbsida med en applet , till exempel , går det inuti den virtuella maskinen och kan inte göra något utanför . Det är begränsat till sandlådan , och kan bara " spela " i den . Detta sätt , även om applet försöker att korrumpera minnet eller helt enkelt kraschar , kan den virtuella maskinen stannar , men systemet går på utan problem .
Alternativa metoder
Native metoder är kod som kan anropas från Java virtuell maskin , men bearbetas av systemet där det körs . De kan vara en svaghet , som fungerar som ett sätt att lämna sandlådan . De alternativa metoder som används av Javas inbyggda i processerna är alla bekräftade att innehålla någon skadlig kod . Det är möjligt för en person att göra sina egna inhemska metoder , men Java säkerhetssystem kan förhindra detta . Applets , till exempel , är inte tillåtet att installera några nya alternativa metoder .