Dynamic software updating
ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನದಲ್ಲಿ, ಡೈನಾಮಿಕ್ ಸಾಫ್ಟ್ವೇರ್ ಅಪ್ಡೇಟ್ (ಡಿ. ಎಸ್. ಯು) ಎಂಬುದು ಪ್ರೋಗ್ರಾಂಗಳು ಚಾಲನೆಯಲ್ಲಿರುವಾಗ ಅಪ್ಗ್ರೇಡ್ ಮಾಡಲು ಸಂಬಂಧಿಸಿದ ಸಂಶೋಧನೆಯ ಕ್ಷೇತ್ರವಾಗಿದೆ. ಡಿ. ಎಸ್. ಯು. ಅನ್ನು ಪ್ರಸ್ತುತ ಉದ್ಯಮದಲ್ಲಿ ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲಾಗುತ್ತಿಲ್ಲ. ಆದಾಗ್ಯೂ, ಸಂಶೋಧಕರು ಡಿ. ಎಸ್. ಯು. ಅನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸಲು ವಿವಿಧ ರೀತಿಯ ವ್ಯವಸ್ಥೆಗಳು ಮತ್ತು ತಂತ್ರಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದ್ದಾರೆ. ಈ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ನೈಜ-ಪ್ರಪಂಚದ ಕಾರ್ಯಕ್ರಮಗಳಲ್ಲಿ ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ. ಪ್ರಸ್ತುತ ಕಾರ್ಯಾಚರಣಾ ವ್ಯವಸ್ಥೆಗಳು ಮತ್ತು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಡಿ. ಎಸ್. ಯು. ಅನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಂಡು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿಲ್ಲ. ಅಂತೆಯೇ, ಡಿ. ಎಸ್. ಯು ಅನುಷ್ಠಾನಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಸಾಧನಗಳನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತವೆ ಅಥವಾ ವಿಶೇಷ ಕಂಪೈಲರ್ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತವೆ. ಈ ಕಂಪೈಲರ್ಗಳು ಮೂಲ ಪ್ರೋಗ್ರಾಂನ ಶಬ್ದಾರ್ಥವನ್ನು ಸಂರಕ್ಷಿಸುತ್ತವೆ, ಆದರೆ ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ನವೀಕರಿಸಬಹುದಾದ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಉತ್ಪಾದಿಸಲು ಮೂಲ ಕೋಡ್ ಅಥವಾ ಆಬ್ಜೆಕ್ಟ್ ಕೋಡ್ ಅನ್ನು ಬಳಸುತ್ತವೆ. ಸುರಕ್ಷತೆ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯ ಓವರ್ಹೆಡ್ ಅನ್ನು ನಿರ್ಣಯಿಸಲು ಸಂಶೋಧಕರು ಡಿ. ಎಸ್. ಯು-ಸಾಮರ್ಥ್ಯದ ಪ್ರೋಗ್ರಾಂಗಳ ರೂಪಾಂತರಗಳನ್ನು ಮೂಲ ಪ್ರೋಗ್ರಾಂಗೆ ಹೋಲಿಸುತ್ತಾರೆ. ಯಾವುದೇ ಚಾಲನೆಯಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಟುಪಲ್ ಎಂದು ಪರಿಗಣಿಸಬಹುದು, ಅಲ್ಲಿ ಪ್ರಸ್ತುತ ಪ್ರೋಗ್ರಾಂ ಸ್ಥಿತಿ ಮತ್ತು ಪ್ರಸ್ತುತ ಪ್ರೋಗ್ರಾಂ ಕೋಡ್ ಆಗಿದೆ. ಡೈನಾಮಿಕ್ ಸಾಫ್ಟ್ವೇರ್ ನವೀಕರಣ ವ್ಯವಸ್ಥೆಗಳು ಚಾಲನೆಯಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಹೊಸ ಆವೃತ್ತಿಗೆ ಪರಿವರ್ತಿಸುತ್ತವೆ. ಇದನ್ನು ಮಾಡಲು, ರಾಜ್ಯವನ್ನು ನಿರೀಕ್ಷಿಸಿದ ಪ್ರಾತಿನಿಧ್ಯವಾಗಿ ಪರಿವರ್ತಿಸಬೇಕು. ಇದಕ್ಕೆ ಸ್ಟೇಟ್ ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ ಕಾರ್ಯದ ಅಗತ್ಯವಿದೆ. ಹೀಗಾಗಿ, ಡಿ. ಎಸ್. ಯು. ಒಂದು ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಡಿ. ಎಸ್. ಯು. ಗೆ ಪರಿವರ್ತಿಸುತ್ತದೆ. ಚಾಲನೆಯಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಪ್ರೋಗ್ರಾಂನ ಹೊಸ ಆವೃತ್ತಿಯ ಪ್ರಾರಂಭದ ಹಂತದಿಂದ ತಲುಪಬಹುದಾದ ಪಾಯಿಂಟ್ ಟುಪಲ್ಗೆ ಇಳಿಸಿದರೆ ಮಾತ್ರ ನವೀಕರಣವನ್ನು ಮಾನ್ಯವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ, ಕ್ರಿಯಾತ್ಮಕ ನವೀಕರಣವು ಸಂಭವಿಸುವ ಪ್ರೋಗ್ರಾಂನಲ್ಲಿರುವ ಸ್ಥಳವನ್ನು ಅಪ್ಡೇಟ್ ಪಾಯಿಂಟ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಡಿ. ಎಸ್. ಯು ಅನುಷ್ಠಾನಗಳು ಅವುಗಳ ನವೀಕರಣ ಬಿಂದುಗಳ ಚಿಕಿತ್ಸೆಯಲ್ಲಿ ವ್ಯಾಪಕವಾಗಿ ಬದಲಾಗುತ್ತವೆ. ಅಪ್ಸ್ಟೇರ್ ಮತ್ತು ಪೊಲಸ್ನಂತಹ ಕೆಲವು ವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ, ಕಾರ್ಯಗತಗೊಳಿಸುವ ಸಮಯದಲ್ಲಿ ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ನವೀಕರಣವು ಸಂಭವಿಸಬಹುದು. ಜಿನ್ಸೆಂಗ್ನ ಕಂಪೈಲರ್ ನವೀಕರಣ ಬಿಂದುಗಳಿಗಾಗಿ ಉತ್ತಮ ಸ್ಥಳಗಳನ್ನು ಊಹಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ, ಆದರೆ ಪ್ರೋಗ್ರಾಮರ್-ನಿರ್ದಿಷ್ಟ ನವೀಕರಣ ಬಿಂದುಗಳನ್ನು ಸಹ ಬಳಸಬಹುದು. ಕಿಟ್ಸೂನ್ ಮತ್ತು ಎಕಿಡೆನ್ ಅಭಿವರ್ಧಕರು ಎಲ್ಲಾ ನವೀಕರಣ ಬಿಂದುಗಳನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಬೇಕಾಗುತ್ತದೆ ಮತ್ತು ಹೆಸರಿಸಬೇಕಾಗುತ್ತದೆ. ನವೀಕರಿಸುವ ವ್ಯವಸ್ಥೆಗಳು ಅವರು ಬೆಂಬಲಿಸುವ ಪ್ರೋಗ್ರಾಂ ಬದಲಾವಣೆಗಳ ಪ್ರಕಾರಗಳಲ್ಲಿ ಭಿನ್ನವಾಗಿರುತ್ತವೆ. ಉದಾಹರಣೆಗೆ, ಕೆಸ್ಪ್ಲೈಸ್ ಕಾರ್ಯಗಳಲ್ಲಿ ಕೋಡ್ ಬದಲಾವಣೆಗಳನ್ನು ಮಾತ್ರ ಬೆಂಬಲಿಸುತ್ತದೆ ಮತ್ತು ರಾಜ್ಯದ ಪ್ರಾತಿನಿಧ್ಯದಲ್ಲಿ ಬದಲಾವಣೆಗಳನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ. ಏಕೆಂದರೆ ಕೆಸ್ಪ್ಲೈಸ್ ಪ್ರಾಥಮಿಕವಾಗಿ ಸಾಮಾನ್ಯ ನವೀಕರಣಗಳಿಗಿಂತ ಭದ್ರತಾ ಬದಲಾವಣೆಗಳನ್ನು ಗುರಿಯಾಗಿರಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಇದಕ್ಕೆ ತದ್ವಿರುದ್ಧವಾಗಿ, ಎಕಿಡೆನ್ ಒಂದು ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಸಾಮರ್ಥ್ಯವಿರುವ ಯಾವುದೇ ಪ್ರೋಗ್ರಾಂಗೆ ನವೀಕರಿಸಬಹುದು, ಬೇರೆ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯಲ್ಪಟ್ಟರೂ ಸಹ. ಸಿಸ್ಟಮ್ ವಿನ್ಯಾಸಕರು ನವೀಕರಣಗಳ ವ್ಯಾಪ್ತಿಯನ್ನು ಸೀಮಿತಗೊಳಿಸುವ ಮೂಲಕ ಮೌಲ್ಯಯುತವಾದ ಕಾರ್ಯಕ್ಷಮತೆ ಅಥವಾ ಸುರಕ್ಷತಾ ಭರವಸೆಗಳನ್ನು ಪಡೆಯಬಹುದು. ಉದಾಹರಣೆಗೆ, ಯಾವುದೇ ನವೀಕರಣ ಸುರಕ್ಷತಾ ಪರಿಶೀಲನೆಯು ಆ ಸುರಕ್ಷತಾ ಪರಿಶೀಲನೆಯನ್ನು ಹಾದುಹೋಗುವ ನವೀಕರಣಗಳಿಗೆ ನವೀಕರಣಗಳ ವ್ಯಾಪ್ತಿಯನ್ನು ಮಿತಿಗೊಳಿಸುತ್ತದೆ. ಕೋಡ್ ಮತ್ತು ಸ್ಥಿತಿಯನ್ನು ಪರಿವರ್ತಿಸಲು ಬಳಸುವ ಕಾರ್ಯವಿಧಾನವು ವ್ಯವಸ್ಥೆಯು ಯಾವ ರೀತಿಯ ನವೀಕರಣಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ ಎಂಬುದರ ಮೇಲೆ ಪ್ರಭಾವ ಬೀರುತ್ತದೆ. ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳನ್ನು, ಸಾಧನಗಳಾಗಿ, ಅವುಗಳ ಬಳಕೆಯ ಸುಲಭತೆ ಮತ್ತು ಅಭಿವರ್ಧಕರಿಗೆ ಸ್ಪಷ್ಟತೆಯ ಆಧಾರದ ಮೇಲೆ ಮೌಲ್ಯಮಾಪನ ಮಾಡಬಹುದು. ಜಿನ್ಸೆಂಗ್ನಂತಹ ಅನೇಕ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು, ವಿವಿಧ ಸ್ಥಿರ ವಿಶ್ಲೇಷಣೆಗಳಲ್ಲಿ ಉತ್ತೀರ್ಣರಾಗಲು ಕಾರ್ಯಕ್ರಮಗಳ ಅಗತ್ಯವಿರುತ್ತದೆ. ಈ ವಿಶ್ಲೇಷಣೆಗಳು ಡಿ. ಎಸ್. ಯು. ಗೆ ಮೌಲ್ಯಯುತವಾದ ಕಾರ್ಯಕ್ರಮಗಳ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಸಾಬೀತುಪಡಿಸುತ್ತವೆಯಾದರೂ, ಅವು ಸ್ವಭಾವತಃ ಅತ್ಯಾಧುನಿಕವಾಗಿವೆ ಮತ್ತು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಕಷ್ಟ. ಸ್ಥಿರ ವಿಶ್ಲೇಷಣೆಯನ್ನು ಬಳಸದ ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಗಳಿಗೆ ವಿಶೇಷ ಕಂಪೈಲರ್ನ ಬಳಕೆಯ ಅಗತ್ಯವಿರಬಹುದು. ಕೆಲವು ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳಿಗೆ ಸ್ಥಿರ ವಿಶ್ಲೇಷಣೆ ಅಥವಾ ವಿಶೇಷ ಕಂಪೈಲರ್ಗಳ ಅಗತ್ಯವಿರುವುದಿಲ್ಲ. ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಯಿಂದ ನವೀಕರಿಸಲಾದ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಗುರಿ ಪ್ರೋಗ್ರಾಂಗಳು ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳ ಶೈಕ್ಷಣಿಕ ಪ್ರಕಟಣೆಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಕೇಸ್ ಸ್ಟಡೀಸ್ ಆಗಿ ಹಲವಾರು ಗುರಿ ಕಾರ್ಯಕ್ರಮಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ. ವಿ. ಎಸ್. ಎಫ್. ಟಿ. ಪಿ. ಡಿ., ಓಪನ್ ಎಸ್. ಎಸ್. ಎಚ್., ಪೋಸ್ಟ್ಗ್ರೆ. ಎಸ್. ಕ್ಯೂ. ಎಲ್., ಟಾರ್, ಅಪಾಚೆ, ಜಿ. ಎನ್. ಯು. ಜೀಬ್ರಾ, ಮೆಮ್ಕ್ಯಾಶ್ಡ್ ಮತ್ತು ರೆಡಿಸ್ ಇವೆಲ್ಲವೂ ವಿವಿಧ ವ್ಯವಸ್ಥೆಗಳಿಗೆ ಕ್ರಿಯಾತ್ಮಕ ನವೀಕರಣದ ಗುರಿಗಳಾಗಿವೆ. ಕ್ರಿಯಾತ್ಮಕ ನವೀಕರಣವನ್ನು ಮನಸ್ಸಿನಲ್ಲಿಟ್ಟುಕೊಂಡು ಕೆಲವು ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಬರೆಯಲಾಗಿರುವುದರಿಂದ, ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಮರುಹೊಂದಿಸುವುದು ಪ್ರಾಯೋಗಿಕ ಬಳಕೆಗಾಗಿ ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡುವ ಒಂದು ಮೌಲ್ಯಯುತ ವಿಧಾನವಾಗಿದೆ. ಸಂಬಂಧಿತ ಕ್ಷೇತ್ರಗಳು ಕ್ರಿಯಾತ್ಮಕ ನವೀಕರಣದ ಮೂಲಕ ಪರಿಹರಿಸಲಾದ ಸಮಸ್ಯೆಯ ಸ್ಥಳವನ್ನು ಹಲವಾರು ಇತರರ ಛೇದಕವೆಂದು ಪರಿಗಣಿಸಬಹುದು. ಉದಾಹರಣೆಗಳಲ್ಲಿ ಚೆಕ್ಪಾಯಿಂಟಿಂಗ್, ಡೈನಾಮಿಕ್ ಲಿಂಕಿಂಗ್ ಮತ್ತು ನಿರಂತರತೆ ಸೇರಿವೆ. ಉದಾಹರಣೆಗೆ, ಒಂದು ದತ್ತಸಂಚಯವು ಅದರ ಆನ್-ಡಿಸ್ಕ್ ಕಡತ ಸ್ವರೂಪದ ಹಿಂದಿನ ಆವೃತ್ತಿಗಳೊಂದಿಗೆ ಹಿಮ್ಮುಖ-ಹೊಂದಿಕೆಯಾಗಬೇಕು, ಕ್ರಿಯಾತ್ಮಕ ನವೀಕರಣ ವ್ಯವಸ್ಥೆಯಿಂದ ನಿರೀಕ್ಷಿತವಾದ ಅದೇ ರೀತಿಯ ಸ್ಥಿತಿ ಪರಿವರ್ತನೆಯನ್ನು ಸಾಧಿಸಬೇಕು. ಅಂತೆಯೇ, ಪ್ಲಗ್ಇನ್ ವಿನ್ಯಾಸವನ್ನು ಹೊಂದಿರುವ ಪ್ರೋಗ್ರಾಂ, ರನ್ಟೈಮ್ನಲ್ಲಿ ಹೊಸ ಕೋಡ್ ಅನ್ನು ಲೋಡ್ ಮಾಡಲು ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಸಮರ್ಥವಾಗಿರಬೇಕು. ಲೋಡ್ ಅಥವಾ ರನ್ಟೈಮ್ನಲ್ಲಿ ಷರತ್ತುಬದ್ಧವಾಗಿ ಡೆಡ್ ಅಥವಾ ತಲುಪಲಾಗದ ಕೋಡ್ ಅನ್ನು ತೆಗೆದುಹಾಕಲು ಡೈನಾಮಿಕ್ ಡೆಡ್-ಕೋಡ್ ಎಲಿಮಿನೇಷನ್ ಉದ್ದೇಶಕ್ಕಾಗಿ ಇದೇ ರೀತಿಯ ತಂತ್ರಗಳನ್ನು ಕೆಲವೊಮ್ಮೆ ಬಳಸಲಾಗುತ್ತದೆ ಮತ್ತು ಉಳಿದ ಕೋಡ್ ಅನ್ನು ಅದರ ಮೆಮೊರಿ ಹೆಜ್ಜೆಗುರುತನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಅಥವಾ ವೇಗವನ್ನು ಸುಧಾರಿಸಲು ಮರುಸಂಯೋಜಿಸುತ್ತದೆ. ಡೈನಾಮಿಕ್ ಸಾಫ್ಟ್ವೇರ್ ನವೀಕರಣದ ಆರಂಭಿಕ ಪೂರ್ವಸೂಚಕವೆಂದರೆ ಅನಗತ್ಯ ವ್ಯವಸ್ಥೆಗಳು. ಅನಗತ್ಯ ಪರಿಸರದಲ್ಲಿ, ಮುಖ್ಯ ವ್ಯವಸ್ಥೆಯ ವೈಫಲ್ಯದ ಸಂದರ್ಭದಲ್ಲಿ ಸಕ್ರಿಯ ಲೆಕ್ಕಾಚಾರಗಳ ನಿಯಂತ್ರಣವನ್ನು ತೆಗೆದುಕೊಳ್ಳಲು ಸಿದ್ಧವಾದ ಬಿಡಿ ವ್ಯವಸ್ಥೆಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ. ಈ ವ್ಯವಸ್ಥೆಗಳು ಮುಖ್ಯ ಯಂತ್ರ ಮತ್ತು ಬಿಸಿ ಬಿಡಿಭಾಗವನ್ನು ಹೊಂದಿರುತ್ತವೆ. ಬಿಸಿ ಬಿಡಿಭಾಗವನ್ನು ನಿಯತಕಾಲಿಕವಾಗಿ ಪ್ರಾಥಮಿಕ ವ್ಯವಸ್ಥೆಯ ಚೆಕ್ಪಾಯಿಂಟ್ನೊಂದಿಗೆ ಬಿತ್ತಲಾಗುತ್ತದೆ. ವೈಫಲ್ಯದ ಸಂದರ್ಭದಲ್ಲಿ, ಬಿಸಿ ಬಿಡಿಭಾಗವು ಸ್ವಾಧೀನಪಡಿಸಿಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಮುಖ್ಯ ಯಂತ್ರವು ಹೊಸ ಬಿಸಿ ಬಿಡಿಭಾಗವಾಗುತ್ತದೆ. ಈ ಮಾದರಿಯನ್ನು ನವೀಕರಿಸಲು ಸಾಮಾನ್ಯೀಕರಿಸಬಹುದು. ನವೀಕರಣದ ಸಂದರ್ಭದಲ್ಲಿ, ಬಿಸಿ ಬಿಡಿಭಾಗವು ಸಕ್ರಿಯಗೊಳ್ಳುತ್ತದೆ, ಮುಖ್ಯ ವ್ಯವಸ್ಥೆಯು ನವೀಕರಿಸುತ್ತದೆ ಮತ್ತು ನಂತರ ನವೀಕರಿಸಿದ ವ್ಯವಸ್ಥೆಯು ನಿಯಂತ್ರಣವನ್ನು ಪುನರಾರಂಭಿಸುತ್ತದೆ. ಡೈನಾಮಿಕ್ ಸಾಫ್ಟ್ವೇರ್ ಅಪ್ಡೇಟ್ ಮಾಡುವ ಅತ್ಯಂತ ಹಳೆಯ ವ್ಯವಸ್ಥೆಯು ಡೈನಾಮಿಕ್ ಮೋಡಿಫಿಕೇಷನ್ ಸಿಸ್ಟಮ್ (ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್.) ಆಗಿದೆ. 1983ರಲ್ಲಿ ಇನ್ಸಪ್ ಲೀಯವರ ಪಿಎಚ್ಡಿ ಪ್ರಬಂಧದಲ್ಲಿ ಪ್ರಸ್ತುತಪಡಿಸಲಾದ, ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್. ಒಂದು ಸಂಪೂರ್ಣ ಸಂಯೋಜಿತ ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು, ಇದು ಸಂವಾದಾತ್ಮಕ ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್, ಮಾಡ್ಯುಲಾ ರೂಪಾಂತರಕ್ಕಾಗಿ ಕಂಪೈಲರ್ ಮತ್ತು ರನ್ಟೈಮ್ ಮತ್ತು ಸೋರ್ಸ್ ಕೋಡ್ಗೆ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿತ್ತು. ಇದು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂಗೆ ವಿರುದ್ಧವಾಗಿ ನವೀಕರಣಗಳನ್ನು ಟೈಪ್-ಚೆಕ್ ಮಾಡಲು DYMOS ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿತು. ಅನುಷ್ಠಾನ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ಹೊಸ ಕೋಡ್ ಅನ್ನು ಚಾಲನೆಯಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂಗೆ ಲೋಡ್ ಮಾಡಬೇಕು ಮತ್ತು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಸ್ಥಿತಿಯನ್ನು ಹೊಸ ಕೋಡ್ನಿಂದ ಅರ್ಥೈಸಿಕೊಳ್ಳುವ ಸ್ವರೂಪವಾಗಿ ಪರಿವರ್ತಿಸಬೇಕು. ಡಿ. ಎಸ್. ಯು. ನ ಅನೇಕ ಪ್ರೇರಕ ಬಳಕೆಯ-ಪ್ರಕರಣಗಳು ಸಮಯ-ನಿರ್ಣಾಯಕವಾಗಿರುವುದರಿಂದ (ಉದಾಹರಣೆಗೆ, ಜೀವಂತ ಮತ್ತು ದುರ್ಬಲ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಭದ್ರತಾ ಪರಿಹಾರವನ್ನು ನಿಯೋಜಿಸುವುದು), ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ಸಾಕಷ್ಟು ನವೀಕರಣ ಲಭ್ಯತೆಯನ್ನು ಒದಗಿಸಬೇಕು. ಕೆಲವು ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ನವೀಕರಣಗಳನ್ನು ಅನ್ವಯಿಸುವ ಮೊದಲು ಅವು ಸುರಕ್ಷಿತವಾಗಿವೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಪ್ರಯತ್ನಿಸುತ್ತವೆ. ಈ ಯಾವುದೇ ಸಮಸ್ಯೆಗಳಿಗೆ ಯಾವುದೇ ಅಧಿಕೃತ ಪರಿಹಾರವಿಲ್ಲ. ವಿಶಿಷ್ಟವಾಗಿ, ಒಂದು ಸಮಸ್ಯೆಯ ಪ್ರದೇಶದಲ್ಲಿ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಯು ಇತರರಿಗೆ ವಿನಿಮಯದಲ್ಲಿ ಹಾಗೆ ಮಾಡುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಡೈನಾಮಿಕ್ ನವೀಕರಣಗಳ ಪ್ರಾಯೋಗಿಕ ಪರೀಕ್ಷೆಯು ನವೀಕರಣ ಬಿಂದುಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹೆಚ್ಚಿಸುವುದರಿಂದ ಅಸುರಕ್ಷಿತ ನವೀಕರಣಗಳ ಸಂಖ್ಯೆ ಹೆಚ್ಚಾಗುತ್ತದೆ ಎಂದು ಸೂಚಿಸುತ್ತದೆ. ಕೋಡ್ ರೂಪಾಂತರ ಹೆಚ್ಚಿನ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ನವೀಕರಣಗಳಿಗಾಗಿ ಕೋಡ್ನ ಘಟಕವಾಗಿ ಸಬ್ರುಟೈನ್ಗಳನ್ನು ಬಳಸುತ್ತವೆ; ಆದಾಗ್ಯೂ, ಹೊಸ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ಸಂಪೂರ್ಣ-ಪ್ರೋಗ್ರಾಂ ನವೀಕರಣಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತವೆ. ಗುರಿ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ವರ್ಚುವಲ್ ಯಂತ್ರ ಭಾಷೆಯಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಿದರೆ, ವಿಎಂ ಹೊಸ ಕೋಡ್ ಅನ್ನು ಲೋಡ್ ಮಾಡಲು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಮೂಲಸೌಕರ್ಯವನ್ನು ಬಳಸಬಹುದು, ಏಕೆಂದರೆ ಆಧುನಿಕ ವರ್ಚುವಲ್ ಯಂತ್ರಗಳು ಡಿ. ಎಸ್. ಯು (ಮುಖ್ಯವಾಗಿ ಡೀಬಗ್ಗಿಂಗ್) ಜೊತೆಗೆ ಇತರ ಬಳಕೆಯ ಪ್ರಕರಣಗಳಿಗೆ ರನ್ಟೈಮ್ ಲೋಡಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ. ಹಾಟ್ಸ್ಪಾಟ್ ಜೆವಿಎಂ ರನ್ಟೈಮ್ ಕೋಡ್ ಲೋಡಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ ಮತ್ತು ಜಾವಾ (ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ) ಅನ್ನು ಗುರಿಯಾಗಿಸುವ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಬಳಸಿಕೊಳ್ಳಬಹುದು. ಸಿ ಅಥವಾ ಸಿ + + ನಂತಹ ಸ್ಥಳೀಯ ಭಾಷೆಗಳಲ್ಲಿ, ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಗಳು ಪ್ರೋಗ್ರಾಂಗೆ ನಿರ್ದೇಶನವನ್ನು ಸೇರಿಸುವ ವಿಶೇಷ ಕಂಪೈಲರ್ಗಳನ್ನು ಬಳಸಬಹುದು. ನವೀಕರಣದ ಸಮಯದಲ್ಲಿ, ಈ ನಿರ್ದೇಶನವನ್ನು ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಯನ್ನು ಸೂಚಿಸಲು ನವೀಕರಿಸಲಾಗಿದೆ. ಒಂದು ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಯು ಈ ನಿರ್ದೇಶನಗಳನ್ನು ಸ್ಥಿರವಾಗಿ ಸೇರಿಸಲು ಕಂಪೈಲರ್ ಅನ್ನು ಬಳಸದಿದ್ದರೆ, ಅದು ಅವನ್ನು ಬೈನರಿ ಮರುಬರಹದೊಂದಿಗೆ ರನ್ಟೈಮ್ನಲ್ಲಿ ಸೇರಿಸುತ್ತದೆ. ಬೈನರಿ ಮರುಬರಹವು ಕಾರ್ಯಗಳನ್ನು ಮರು-ನಿರ್ದೇಶಿಸಲು ಚಾಲನೆಯಲ್ಲಿರುವ ಸ್ಥಳೀಯ ಪ್ರೋಗ್ರಾಂನ ಮೆಮೊರಿ ಇಮೇಜ್ಗೆ ಕಡಿಮೆ-ಮಟ್ಟದ ಕೋಡ್ ಅನ್ನು ಬರೆಯುವ ಪ್ರಕ್ರಿಯೆಯಾಗಿದೆ. ಇದಕ್ಕೆ ಪ್ರೋಗ್ರಾಂನ ಯಾವುದೇ ಸ್ಥಿರ ವಿಶ್ಲೇಷಣೆಯ ಅಗತ್ಯವಿಲ್ಲವಾದರೂ, ಇದು ಹೆಚ್ಚು ಪ್ಲಾಟ್ಫಾರ್ಮ್-ಅವಲಂಬಿತವಾಗಿದೆ. ಎಕಿಡೆನ್ ಮತ್ತು ಕಿಟ್ಸೂನ್ ಫೋರ್ಕ್-ಎಕ್ಸೆಕ್ ಅಥವಾ ಡೈನಾಮಿಕ್ ಲೋಡಿಂಗ್ ಮೂಲಕ ಸಂಪೂರ್ಣವಾಗಿ ಹೊಸ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಪ್ರಾರಂಭಿಸುವ ಮೂಲಕ ಹೊಸ ಪ್ರೋಗ್ರಾಂ ಕೋಡ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುತ್ತಾರೆ. ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಪ್ರೋಗ್ರಾಂ ಸ್ಥಿತಿಯನ್ನು ನಂತರ ಹೊಸ ಪ್ರೋಗ್ರಾಂ ಜಾಗಕ್ಕೆ ವರ್ಗಾಯಿಸಲಾಗುತ್ತದೆ. ನವೀಕರಣದ ಸಮಯದಲ್ಲಿ, ಪ್ರೋಗ್ರಾಂ ಸ್ಥಿತಿಯನ್ನು ಮೂಲ ಪ್ರಾತಿನಿಧ್ಯದಿಂದ ಹೊಸ ಆವೃತ್ತಿಯ ಪ್ರಾತಿನಿಧ್ಯಕ್ಕೆ ಪರಿವರ್ತಿಸಬೇಕು. ಇದನ್ನು ರಾಜ್ಯ ಪರಿವರ್ತನೆ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಸ್ಟೇಟ್ ಆಬ್ಜೆಕ್ಟ್ ಅಥವಾ ವಸ್ತುಗಳ ಗುಂಪನ್ನು ಪರಿವರ್ತಿಸುವ ಕಾರ್ಯವನ್ನು ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ ಫಂಕ್ಷನ್ ಅಥವಾ ಸ್ಟೇಟ್ ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ ಕಾರ್ಯಗಳನ್ನು ಸಂಶ್ಲೇಷಿಸಲು ಪ್ರಯತ್ನಿಸಬಹುದು, ಅಥವಾ ಅಭಿವರ್ಧಕರು ಅವುಗಳನ್ನು ಕೈಯಿಂದಲೇ ಪೂರೈಸಬೇಕಾಗುತ್ತದೆ. ಕೆಲವು ವ್ಯವಸ್ಥೆಗಳು ಈ ವಿಧಾನಗಳನ್ನು ಮಿಶ್ರಣ ಮಾಡುತ್ತವೆ, ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ಗಳ ಕೆಲವು ಅಂಶಗಳನ್ನು ಊಹಿಸುತ್ತವೆ ಮತ್ತು ಇತರರ ಮೇಲೆ ಡೆವಲಪರ್ ಇನ್ಪುಟ್ ಅಗತ್ಯವಿರುತ್ತದೆ. ಈ ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ ಕಾರ್ಯಗಳನ್ನು ಹಳೆಯ-ಆವೃತ್ತಿಯ ಸ್ಥಿತಿಯ ಪ್ರತಿಯೊಂದು ಭಾಗವನ್ನು ಪ್ರವೇಶಿಸುವುದರಿಂದ, ಅಥವಾ ನವೀಕರಿಸುವ ಸಮಯದಲ್ಲಿ ಎಲ್ಲಾ ಸ್ಥಿತಿಯನ್ನು ಕುತೂಹಲದಿಂದ ಪರಿವರ್ತಿಸುವುದರಿಂದ, ಸೋಮಾರಿಯಾಗಿ ಪ್ರೋಗ್ರಾಂ ಸ್ಥಿತಿಗೆ ಅನ್ವಯಿಸಬಹುದು. ಸೋಮಾರಿಯಾದ ರೂಪಾಂತರವು ನವೀಕರಣವು ಸ್ಥಿರವಾದ ಸಮಯದಲ್ಲಿ ಪೂರ್ಣಗೊಳ್ಳುತ್ತದೆ ಎಂಬುದನ್ನು ಖಾತ್ರಿಪಡಿಸುತ್ತದೆ, ಆದರೆ ಆಬ್ಜೆಕ್ಟ್ ಆಕ್ಸೆಸ್ನಲ್ಲಿ ಸ್ಥಿರ-ಸ್ಥಿತಿಯ ಓವರ್ಹೆಡ್ ಅನ್ನು ಸಹ ಉಂಟುಮಾಡುತ್ತದೆ. ಚುರುಕಾದ ರೂಪಾಂತರವು ನವೀಕರಣದ ಸಮಯದಲ್ಲಿ ಹೆಚ್ಚಿನ ವೆಚ್ಚವನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ, ಎಲ್ಲಾ ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿರುವಾಗ ವ್ಯವಸ್ಥೆಯು ಜಗತ್ತನ್ನು ನಿಲ್ಲಿಸಬೇಕಾಗುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಆತುರದ ರೂಪಾಂತರವು ಕಂಪೈಲರ್ಗಳಿಗೆ ರಾಜ್ಯದ ಪ್ರವೇಶವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಅತ್ಯುತ್ತಮವಾಗಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ, ಸೋಮಾರಿಯಾದ ಪರಿವರ್ತನೆಯೊಂದಿಗೆ ಒಳಗೊಂಡಿರುವ ಸ್ಥಿರ-ಸ್ಥಿತಿಯ ಓವರ್ಹೆಡ್ ಅನ್ನು ತಪ್ಪಿಸುತ್ತದೆ. ಹೆಚ್ಚಿನ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳು ನವೀಕರಣಗಳಿಗಾಗಿ ಕೆಲವು ಸುರಕ್ಷತಾ ಗುಣಲಕ್ಷಣಗಳನ್ನು ತೋರಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತವೆ. ಸುರಕ್ಷತಾ ತಪಾಸಣೆಯ ಅತ್ಯಂತ ಸಾಮಾನ್ಯ ರೂಪಾಂತರವೆಂದರೆ ಪ್ರಕಾರ ಸುರಕ್ಷತೆ, ಅಲ್ಲಿ ನವೀಕರಣವು ಹಳೆಯ ರಾಜ್ಯದ ಪ್ರಾತಿನಿಧ್ಯದಲ್ಲಿ ಯಾವುದೇ ಹೊಸ ಕೋಡ್ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಕಾರಣವಾಗದಿದ್ದರೆ ಅದನ್ನು ಸುರಕ್ಷಿತವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ, ಅಥವಾ ಪ್ರತಿಯಾಗಿ. ಪ್ರಕಾರದ ಸುರಕ್ಷತೆಯನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಎರಡು ಗುಣಲಕ್ಷಣಗಳಲ್ಲಿ ಒಂದನ್ನು ತೋರಿಸುವ ಮೂಲಕ ಪರಿಶೀಲಿಸಲಾಗುತ್ತದೆ, ಸಕ್ರಿಯತೆ ಸುರಕ್ಷತೆ ಅಥವಾ ಕಾನ್ಸ್-ಫ್ರೀನೆಸ್ ಸುರಕ್ಷತೆ. ನವೀಕರಣದ ಸಮಯದಲ್ಲಿ ಕರೆ ಸ್ಟಾಕ್ನಲ್ಲಿ ಯಾವುದೇ ನವೀಕರಿಸಿದ ಕಾರ್ಯವು ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲದಿದ್ದರೆ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಸಕ್ರಿಯತೆ-ಸುರಕ್ಷಿತವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ. ಇದು ಸುರಕ್ಷತೆಯನ್ನು ಸಾಬೀತುಪಡಿಸುತ್ತದೆ ಏಕೆಂದರೆ ನಿಯಂತ್ರಣವು ಡೇಟಾದ ಹೊಸ ಪ್ರಾತಿನಿಧ್ಯಗಳನ್ನು ಪ್ರವೇಶಿಸುವ ಹಳೆಯ ಕೋಡ್ಗೆ ಎಂದಿಗೂ ಮರಳುವುದಿಲ್ಲ. ಪ್ರಕಾರದ ಸುರಕ್ಷತೆಯನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಕಾನ್ಸ್-ಫ್ರೀನೆಸ್ ಮತ್ತೊಂದು ಮಾರ್ಗವಾಗಿದೆ, ಅಲ್ಲಿ ಕೋಡ್ನ ಒಂದು ವಿಭಾಗವು ನಿರ್ದಿಷ್ಟ ಪ್ರಕಾರದ ಸ್ಥಿತಿಯನ್ನು ಪ್ರಕಾರದ ಪ್ರಾತಿನಿಧ್ಯದ ಜ್ಞಾನದ ಅಗತ್ಯವಿರುವ ರೀತಿಯಲ್ಲಿ ಪ್ರವೇಶಿಸದಿದ್ದರೆ ಅದನ್ನು ಸುರಕ್ಷಿತವೆಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ. ಈ ಸಂಕೇತವು ನಿರ್ದಿಷ್ಟವಾಗಿ ರಾಜ್ಯವನ್ನು ಪ್ರವೇಶಿಸುವುದಿಲ್ಲ ಎಂದು ಹೇಳಬಹುದು, ಆದರೆ ಇದು ಅಮೂರ್ತವಾಗಿ ರಾಜ್ಯವನ್ನು ಪ್ರವೇಶಿಸಬಹುದು. ಕೋಡ್ನ ಯಾವುದೇ ವಿಭಾಗದಲ್ಲಿ ಎಲ್ಲಾ ವಿಧಗಳಿಗೆ ಕಾನ್ಸ್-ಫ್ರೀಡೆನ್ಸ್ ಅನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಅಥವಾ ನಿರಾಕರಿಸಲು ಸಾಧ್ಯವಿದೆ, ಮತ್ತು ಡಿ. ಎಸ್. ಯು ಸಿಸ್ಟಮ್ ಜಿನ್ಸೆಂಗ್ ಪ್ರಕಾರದ ಸುರಕ್ಷತೆಯನ್ನು ಸಾಬೀತುಪಡಿಸಲು ಇದನ್ನು ಬಳಸುತ್ತದೆ. ಒಂದು ಕಾರ್ಯವು ಕಾನ್ಸ್-ಫ್ರೀ ಎಂದು ಸಾಬೀತಾದರೆ, ಅದು ಸ್ಟಾಕ್ನಲ್ಲಿ ಲೈವ್ ಆಗಿದ್ದರೂ ಸಹ ಅದನ್ನು ನವೀಕರಿಸಬಹುದು, ಏಕೆಂದರೆ ಇದು ಹಳೆಯ ಪ್ರಾತಿನಿಧ್ಯವನ್ನು ಬಳಸಿಕೊಂಡು ಸ್ಥಿತಿಯನ್ನು ಪ್ರವೇಶಿಸುವ ಮೂಲಕ ಟೈಪ್ ದೋಷವನ್ನು ಉಂಟುಮಾಡುವುದಿಲ್ಲ. ಹೇಡನ್ ಮತ್ತು ಇತರರು ಮುಕ್ತತೆ ಮತ್ತು ಸಕ್ರಿಯತೆಯ ಸುರಕ್ಷತೆಯ ಪ್ರಾಯೋಗಿಕ ವಿಶ್ಲೇಷಣೆ ಮಾಡಿದ್ದಾರೆ. ಎರಡೂ ತಂತ್ರಗಳು ಹೆಚ್ಚಿನ ಸರಿಯಾದ ನವೀಕರಣಗಳನ್ನು ಅನುಮತಿಸುತ್ತವೆ ಮತ್ತು ಹೆಚ್ಚಿನ ತಪ್ಪು ನವೀಕರಣಗಳನ್ನು ನಿರಾಕರಿಸುತ್ತವೆ ಎಂದು ತೋರಿಸಿ. ಆದಾಗ್ಯೂ, ಹಸ್ತಚಾಲಿತವಾಗಿ ನವೀಕರಣ ಬಿಂದುಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದರಿಂದ ಶೂನ್ಯ ನವೀಕರಣ ದೋಷಗಳು ಉಂಟಾಗುತ್ತವೆ ಮತ್ತು ಆಗಾಗ್ಗೆ ನವೀಕರಣ ಲಭ್ಯತೆಯನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್. ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್. ವ್ಯವಸ್ಥೆಗಳು ಗಮನಾರ್ಹವಾಗಿದ್ದು, ಇದು ಅತ್ಯಂತ ಮುಂಚಿನ ಪ್ರಸ್ತಾಪಿತ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಯಾಗಿದೆ. ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್. ಮಾಡ್ಯುಲಾದ ವ್ಯುತ್ಪನ್ನದಲ್ಲಿ ಬರೆಯಲಾದ ಪ್ರೋಗ್ರಾಂಗಳಿಗೆ ಸಂಪೂರ್ಣ ಸಂಯೋಜಿತ ಪರಿಸರವನ್ನು ಒಳಗೊಂಡಿದೆ, ಇದು ಆರ್. ಇ. ಪಿ. ಎಲ್. ನಂತೆಯೇ ಕಮಾಂಡ್ ಇಂಟರ್ಪ್ರಿಟರ್, ಸೋರ್ಸ್ ಕೋಡ್, ಕಂಪೈಲರ್ ಮತ್ತು ರನ್ಟೈಮ್ ಪರಿಸರಕ್ಕೆ ಸಿಸ್ಟಮ್ ಪ್ರವೇಶವನ್ನು ನೀಡುತ್ತದೆ. ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್ನಲ್ಲಿ, ಸಂವಾದಾತ್ಮಕ ಪರಿಸರದಲ್ಲಿ ಆಜ್ಞೆಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಬಳಕೆದಾರರಿಂದ ನವೀಕರಣಗಳನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತದೆ. ಈ ಆಜ್ಞೆಯು ಯಾವಾಗ-ಷರತ್ತುಗಳು ಎಂದು ಕರೆಯಲಾಗುವ ನವೀಕರಣವು ಯಾವಾಗ ಸಂಭವಿಸಬಹುದು ಎಂಬುದನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವ ನಿರ್ದೇಶನಗಳನ್ನು ಒಳಗೊಂಡಿದೆ. ಡಿ. ವೈ. ಎಂ. ಓ. ಎಸ್. ಗೆ ಲಭ್ಯವಿರುವ ಮಾಹಿತಿಯು ಚಾಲನೆಯಲ್ಲಿರುವ ಗುರಿ ಪ್ರೋಗ್ರಾಂಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ನವೀಕರಣಗಳ ಪ್ರಕಾರ-ಸುರಕ್ಷತೆಯನ್ನು ಜಾರಿಗೊಳಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಕೆಸ್ಪ್ಲೈಸ್, ಕೆಪ್ಯಾಚ್ ಮತ್ತು ಕೆಗ್ರಾಫ್ಟ್ ಕೆಸ್ಪ್ಲೈಸ್ ಒಂದು ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು ಅದು ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಅನ್ನು ಮಾತ್ರ ಗುರಿಯಾಗಿರಿಸಿಕೊಳ್ಳುತ್ತದೆ, ಇದು ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ಕರ್ನಲ್ ಅನ್ನು ಗುರಿ ಪ್ರೋಗ್ರಾಂ ಆಗಿ ಬೆಂಬಲಿಸುವ ವಿಶೇಷ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಲಿನಕ್ಸ್ ಕರ್ನಲ್ನ ಪ್ರಸ್ತುತ ಮತ್ತು ನವೀಕರಿಸಿದ ಆವೃತ್ತಿಗಳ ನಡುವಿನ ಬದಲಾವಣೆಗಳನ್ನು ನಿರ್ಧರಿಸಲು ಕೆಸ್ಪ್ಲೈಸ್ ಮೂಲ-ಮಟ್ಟದ ವ್ಯತ್ಯಾಸಗಳನ್ನು ಬಳಸುತ್ತದೆ ಮತ್ತು ನಂತರ ಚಾಲನೆಯಲ್ಲಿರುವ ಕರ್ನಲ್ಗೆ ಬದಲಾವಣೆಗಳನ್ನು ಸೇರಿಸಲು ಬೈನರಿ ಮರುಬರಹವನ್ನು ಬಳಸುತ್ತದೆ. ಕೆಸ್ಪ್ಲೈಸ್ ಅನ್ನು ಅದರ ಮೂಲ ಲೇಖಕರಾದ ಕೆಸ್ಪ್ಲೈಸ್ ಇಂಕ್ ಸ್ಥಾಪಿಸಿದ ವಾಣಿಜ್ಯ ಉದ್ಯಮವು ನಿರ್ವಹಿಸುತ್ತಿತ್ತು, ಇದನ್ನು ಜುಲೈ 2011 ರಲ್ಲಿ ಒರಾಕಲ್ ಕಾರ್ಪೊರೇಷನ್ ಸ್ವಾಧೀನಪಡಿಸಿಕೊಂಡಿತು. ಕೆಸ್ಪ್ಲೈಸ್ಅನ್ನು ವಾಣಿಜ್ಯ ಆಧಾರದ ಮೇಲೆ ಮತ್ತು ಒರಾಕಲ್ ಲಿನಕ್ಸ್ ವಿತರಣೆಯಲ್ಲಿ ಪ್ರತ್ಯೇಕವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ. ಸೂಸೆ ಕೆಗ್ರಾಫ್ಟ್ ಅನ್ನು ಲೈವ್ ಕರ್ನಲ್ ಪ್ಯಾಚಿಂಗ್ಗೆ ತೆರೆದ ಮೂಲ ಪರ್ಯಾಯವಾಗಿ ಅಭಿವೃದ್ಧಿಪಡಿಸಿತು, ಮತ್ತು ರೆಡ್ ಹ್ಯಾಟ್ ಕೆಪ್ಯಾಚ್ನೊಂದಿಗೆ ಅದೇ ರೀತಿ ಮಾಡಿತು. ಇವೆರಡೂ ಕಾರ್ಯ-ಮಟ್ಟದ ಬದಲಾವಣೆಗಳನ್ನು ಚಾಲನೆಯಲ್ಲಿರುವ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ಗೆ ಅನ್ವಯಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತವೆ, ಆದರೆ ftrace ಸ್ಥಾಪಿಸಿದ ಲೈವ್ ಪ್ಯಾಚಿಂಗ್ ಕಾರ್ಯವಿಧಾನಗಳನ್ನು ಅವಲಂಬಿಸಿವೆ. ಕೆಗ್ರಾಫ್ಟ್ ಮತ್ತು ಕೆಪ್ಯಾಚ್ ನಡುವಿನ ಪ್ರಾಥಮಿಕ ವ್ಯತ್ಯಾಸವೆಂದರೆ ಅವು ಹಾಟ್ ಪ್ಯಾಚ್ಗಳನ್ನು ಅನ್ವಯಿಸುವಾಗ ನವೀಕರಿಸಿದ ಕೋಡ್ ವಿಭಾಗಗಳ ರನ್ಟೈಮ್ ಸ್ಥಿರತೆಯನ್ನು ಖಚಿತಪಡಿಸುವ ವಿಧಾನವಾಗಿದೆ. ಕೆಗ್ರಾಫ್ಟ್ ಮತ್ತು ಕೆಪ್ಯಾಚ್ ಅನ್ನು ಅನುಕ್ರಮವಾಗಿ ಏಪ್ರಿಲ್ 2014 ಮತ್ತು ಮೇ 2014 ರಲ್ಲಿ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಮುಖ್ಯವಾಹಿನಿಯಲ್ಲಿ ಸೇರಿಸಲು ಸಲ್ಲಿಸಲಾಯಿತು, ಮತ್ತು ಲೈವ್ ಪ್ಯಾಚಿಂಗ್ನ ಕನಿಷ್ಠ ಅಡಿಪಾಯಗಳನ್ನು ಕರ್ನಲ್ ಆವೃತ್ತಿ 4 ರಲ್ಲಿ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಮುಖ್ಯವಾಹಿನಿಯಲ್ಲಿ ವಿಲೀನಗೊಳಿಸಲಾಯಿತು, ಇದು ಏಪ್ರಿಲ್ 12,2015 ರಂದು ಬಿಡುಗಡೆಯಾಯಿತು. ಏಪ್ರಿಲ್ 2015 ರಿಂದ, ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಮುಖ್ಯ ಮಾರ್ಗವು ಒದಗಿಸುವ ಸಾಮಾನ್ಯ ಲೈವ್ ಪ್ಯಾಚಿಂಗ್ ಕೋರ್ಗೆ ಕೆಪ್ಯಾಚ್ ಮತ್ತು ಕೆಗ್ರಾಫ್ಟ್ ಅನ್ನು ಪೋರ್ಟ್ ಮಾಡುವ ಕೆಲಸ ನಡೆಯುತ್ತಿದೆ. ಆದಾಗ್ಯೂ, ಫಂಕ್ಷನ್ಗಳ ಮೂಲ ಮತ್ತು ಪ್ಯಾಚ್ ಮಾಡಲಾದ ಆವೃತ್ತಿಗಳ ನಡುವಿನ ಸುರಕ್ಷಿತ ಪರಿವರ್ತನೆಗಳಿಗೆ ಅಗತ್ಯವಾದ ಫಂಕ್ಷನ್-ಮಟ್ಟದ ಸ್ಥಿರತೆಯ ಕಾರ್ಯವಿಧಾನಗಳ ಅನುಷ್ಠಾನವು ವಿಳಂಬವಾಗಿದೆ, ಏಕೆಂದರೆ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಒದಗಿಸಿದ ಕರೆ ಸ್ಟ್ಯಾಕ್ಗಳು ಸರಿಯಾದ ಸ್ಟ್ಯಾಕ್ ಫ್ರೇಮ್ಗಳಿಲ್ಲದ ಅಸೆಂಬ್ಲಿ ಕೋಡ್ ಅನ್ನು ಒಳಗೊಂಡಿರುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ವಿಶ್ವಾಸಾರ್ಹವಾಗಿರುವುದಿಲ್ಲ; ಇದರ ಪರಿಣಾಮವಾಗಿ, ಪೋರ್ಟಿಂಗ್ ಕಾರ್ಯವು ಪ್ರಗತಿಯಲ್ಲಿದೆ. ಕರ್ನಲ್ನ ಕರೆ ಸ್ಟ್ಯಾಕ್ಗಳ ವಿಶ್ವಾಸಾರ್ಹತೆಯನ್ನು ಸುಧಾರಿಸುವ ಪ್ರಯತ್ನದಲ್ಲಿ, ಕರ್ನಲ್ನ ಕಂಪೈಲ್-ಟೈಮ್ ಆಬ್ಜೆಕ್ಟ್ ಫೈಲ್ಗಳನ್ನು ಪರಿಶೀಲಿಸುವ ಮತ್ತು ಕರೆ ಸ್ಟ್ಯಾಕ್ ಅನ್ನು ಯಾವಾಗಲೂ ನಿರ್ವಹಿಸಲಾಗಿದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವ ಉದ್ದೇಶದಿಂದ ವಿಶೇಷವಾದ ಸ್ಯಾನಿಟಿ-ಚೆಕ್ ಯೂಸರ್ ಸ್ಪೇಸ್ ಸೌಲಭ್ಯವನ್ನು ಸಹ ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ; ಇದು ಕರ್ನಲ್ ಊಪ್ಸ್ ಸಂದೇಶಗಳ ಭಾಗವಾಗಿ ಹೆಚ್ಚು ವಿಶ್ವಾಸಾರ್ಹ ಕರೆ ಸ್ಟ್ಯಾಕ್ಗಳನ್ನು ಸಾಧಿಸುವ ಸಾಧ್ಯತೆಯನ್ನು ಸಹ ತೆರೆಯುತ್ತದೆ. ಜಿನ್ಸೆಂಗ್ ಜಿನ್ಸೆಂಗ್ ಒಂದು ಸಾಮಾನ್ಯ ಉದ್ದೇಶದ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಯಾಗಿದೆ. ಇದು ಕಾನ್ಸ್-ಫ್ರೀನೆಸ್ ಸುರಕ್ಷತಾ ತಂತ್ರವನ್ನು ಬಳಸುವ ಏಕೈಕ ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು, ನವೀಕರಿಸಿದ ಪ್ರಕಾರಗಳಿಗೆ ಕಾಂಕ್ರೀಟ್ ಪ್ರವೇಶವನ್ನು ಮಾಡದಿರುವವರೆಗೆ ಸ್ಟಾಕ್ನಲ್ಲಿ ಲೈವ್ ಆಗಿರುವ ಕಾರ್ಯಗಳನ್ನು ನವೀಕರಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಒ. ಸಿ. ಎ. ಎಂ. ಎಲ್. ನಲ್ಲಿ ಸಿ ಮಧ್ಯಂತರ ಭಾಷಾ ಚೌಕಟ್ಟನ್ನು ಬಳಸಿಕೊಂಡು ಬರೆಯಲಾದ ಮೂಲದಿಂದ ಮೂಲಕ್ಕೆ ಕಂಪೈಲರ್ ಆಗಿ ಜಿನ್ಸೆಂಗ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗಿದೆ. ಈ ಕಂಪೈಲರ್ ಎಲ್ಲಾ ಫಂಕ್ಷನ್ ಕರೆಗಳು ಮತ್ತು ಟೈಪ್ ಆಕ್ಸೆಸ್ಗಳಿಗೆ ಇಂಡೈರೆಕ್ಷನ್ ಅನ್ನು ಸೇರಿಸುತ್ತದೆ, ಇದು ಇಡೀ ಪ್ರೋಗ್ರಾಂ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಗೆ ಸ್ಥಿರ-ಸಮಯದ ಓವರ್ಹೆಡ್ ಅನ್ನು ಹೇರುವ ವೆಚ್ಚದಲ್ಲಿ ಸ್ಥಿತಿಯನ್ನು ಸೋಮಾರಿಯಾಗಿ ಪರಿವರ್ತಿಸಲು ಜಿನ್ಸೆಂಗ್ಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಜಿನ್ಸೆಂಗ್ನ ಕಂಪೈಲರ್ ಸಂಪೂರ್ಣ ಆರಂಭಿಕ ಪ್ರೋಗ್ರಾಂ ಮತ್ತು ಡೈನಾಮಿಕ್ ಪ್ಯಾಚ್ಗಳ ಕಾನ್ಸ್-ಫ್ರೀನೆಸ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಸಾಬೀತುಪಡಿಸುತ್ತದೆ. ಜಿನ್ಸೆಂಗ್ನ ನಂತರದ ಆವೃತ್ತಿಗಳು ವಹಿವಾಟು ಸುರಕ್ಷತೆಯ ಕಲ್ಪನೆಯನ್ನು ಸಹ ಬೆಂಬಲಿಸುತ್ತವೆ. ಇದು ಡೆವಲಪರ್ಗಳಿಗೆ ಫಂಕ್ಷನ್ ಕರೆಗಳ ಸರಣಿಯನ್ನು ತಾರ್ಕಿಕ ಘಟಕವಾಗಿ ಟಿಪ್ಪಣಿ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ, ಸಕ್ರಿಯತೆ ಸುರಕ್ಷತೆ ಅಥವಾ ಕಾನ್ಸ್-ಫ್ರೀನೆಸ್ ಸುರಕ್ಷತೆಯಿಂದ ಪತ್ತೆಹಚ್ಚಲಾಗದ ರೀತಿಯಲ್ಲಿ ಪ್ರೋಗ್ರಾಂ ಶಬ್ದಾರ್ಥವನ್ನು ಉಲ್ಲಂಘಿಸುವುದರಿಂದ ನವೀಕರಣಗಳನ್ನು ತಡೆಯುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಜಿನ್ಸೆಂಗ್ನ ಲೇಖಕರು ಪರಿಶೀಲಿಸಿದ ಓಪನ್ಎಸ್ಎಸ್ಎಚ್ನ ಎರಡು ಆವೃತ್ತಿಗಳಲ್ಲಿ, ಪ್ರಮುಖ ಬಳಕೆದಾರ ಪರಿಶೀಲನಾ ಸಂಕೇತವನ್ನು ಅನುಕ್ರಮದಲ್ಲಿ ಎಂದು ಕರೆಯಲಾಗುವ ಎರಡು ಕಾರ್ಯಗಳ ನಡುವೆ ಸ್ಥಳಾಂತರಿಸಲಾಗಿದೆ. ಮೊದಲ ಕಾರ್ಯದ ಮೊದಲ ಆವೃತ್ತಿಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿದರೆ, ನವೀಕರಣವು ಸಂಭವಿಸಿದರೆ ಮತ್ತು ಎರಡನೇ ಕಾರ್ಯದ ಹೊಸ ಆವೃತ್ತಿಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿದರೆ, ನಂತರ ಪರಿಶೀಲನೆಯನ್ನು ಎಂದಿಗೂ ನಿರ್ವಹಿಸಲಾಗುವುದಿಲ್ಲ. ಈ ವಿಭಾಗವನ್ನು ವಹಿವಾಟು ಎಂದು ಗುರುತಿಸುವುದರಿಂದ ನವೀಕರಣವು ಪರಿಶೀಲನೆ ನಡೆಯುವುದನ್ನು ತಡೆಯುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ. ಅಪ್ಸ್ಟೇರ್ ಅಪ್ಸ್ಟೇರ್ ಒಂದು ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು, ಇದು ಸ್ಟ್ಯಾಕ್ ಪುನರ್ನಿರ್ಮಾಣ ಎಂಬ ವಿಶಿಷ್ಟವಾದ ನವೀಕರಣ ಕಾರ್ಯವಿಧಾನವನ್ನು ಬಳಸುತ್ತದೆ. ಅಪ್ಸ್ಟೇರ್ನೊಂದಿಗೆ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ನವೀಕರಿಸಲು, ಡೆವಲಪರ್ ಯಾವುದೇ ಸಂಭವನೀಯ ಸ್ಟ್ಯಾಕ್ ಫ್ರೇಮ್ಗಳ ನಡುವೆ ಮ್ಯಾಪಿಂಗ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುತ್ತಾನೆ. ಅಪ್ಸ್ಟೇರ್ ಈ ಮ್ಯಾಪಿಂಗ್ ಅನ್ನು ಯಾವುದೇ ಹಂತದಲ್ಲಿ, ಯಾವುದೇ ಸಂಖ್ಯೆಯ ಥ್ರೆಡ್ಗಳೊಂದಿಗೆ ಮತ್ತು ಸ್ಟಾಕ್ನಲ್ಲಿ ಲೈವ್ ಆಗಿರುವ ಯಾವುದೇ ಕಾರ್ಯಗಳೊಂದಿಗೆ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ತಕ್ಷಣವೇ ನವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ. ಪೊಲಸ್ ಪೊಲಸ್ ಎಂಬುದು ಸಿಗಾಗಿ ಬೈನರಿ-ರಿ-ರೈಟಿಂಗ್ ಡಿ. ಎಸ್. ಯು. ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು, ಇದು ಅವುಗಳ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯ ಯಾವುದೇ ಹಂತದಲ್ಲಿ ಮಾರ್ಪಡಿಸದ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ನವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ. ಕಾರ್ಯಗಳನ್ನು ನವೀಕರಿಸಲು, ಇದು ಹೊಸ ಕಾರ್ಯಕ್ಕೆ ಮರುನಿರ್ದೇಶಿಸಲು ಗುರಿ ಕಾರ್ಯಕ್ಕೆ ಮುನ್ನುಡಿಯನ್ನು ಪುನಃ ಬರೆಯುತ್ತದೆ, ಈ ಮರುನಿರ್ದೇಶನಗಳನ್ನು ಅನೇಕ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಸರಪಳಿಯಾಗಿ ಮಾಡುತ್ತದೆ. ಇದು ನವೀಕರಿಸದ ಕಾರ್ಯಗಳಲ್ಲಿ ಸ್ಥಿರ-ಸ್ಥಿತಿಯ ಓವರ್ಹೆಡ್ ಅನ್ನು ತಪ್ಪಿಸುತ್ತದೆ. ಕಟಾನಾ ಕಟಾನಾ ಎಂಬುದು ಬಳಕೆದಾರ-ಮೋಡ್ ಇಎಲ್ಎಫ್ ಬೈನರಿಗಳಿಗೆ ಸೀಮಿತ ಕ್ರಿಯಾತ್ಮಕ ನವೀಕರಣವನ್ನು (ಕೆಸ್ಪ್ಲೈಸ್ ಮತ್ತು ಅದರ ಫೋರ್ಕ್ಗಳಂತೆಯೇ) ಒದಗಿಸುವ ಸಂಶೋಧನಾ ವ್ಯವಸ್ಥೆಯಾಗಿದೆ. ಕಟಾನಾ ಪ್ಯಾಚಿಂಗ್ ಮಾದರಿಯು ಇಎಲ್ಎಫ್ ವಸ್ತುಗಳ ಮಟ್ಟದಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು ಆದ್ದರಿಂದ ಸಂಕಲನದ ಗುರಿಯು ಇಎಲ್ಎಫ್ ಆಗಿರುವವರೆಗೆ ಭಾಷಾ-ಅಜ್ಞಾತವಾಗಿರುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಹೊಂದಿದೆ. ಕಿಟ್ಸೂನ್ ಮತ್ತು ಎಕಿಡೆನ್ ಎಕಿಡೆನ್ ಮತ್ತು ಕಿಟ್ಸೂನ್ ಒಂದೇ ಡಿ. ಎಸ್. ಯು ವ್ಯವಸ್ಥೆಯ ಎರಡು ರೂಪಾಂತರಗಳಾಗಿವೆ, ಇದು ಸಿ ಯಲ್ಲಿ ಬರೆಯಲಾದ ಪ್ರೋಗ್ರಾಂಗಳಿಗೆ ಡಿ. ಎಸ್. ಯು. ನ ರಾಜ್ಯ-ವರ್ಗಾವಣೆ ಶೈಲಿಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ. ಒಂದೇ ಪ್ರೋಗ್ರಾಂನೊಳಗೆ ಕಾರ್ಯಗಳನ್ನು ನವೀಕರಿಸುವ ಬದಲು, ಎಕಿಡೆನ್ ಮತ್ತು ಕಿಟ್ಸೂನ್ ಇಡೀ ಪ್ರೋಗ್ರಾಂಗಳಲ್ಲಿ ನವೀಕರಣಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತಾರೆ, ಎರಡು ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಗಳ ನಡುವೆ ಅಗತ್ಯ ಸ್ಥಿತಿಯನ್ನು ವರ್ಗಾಯಿಸುತ್ತಾರೆ. ಎಕಿಡೆನ್ ಫೋರ್ಕ್-ಎಕ್ಸೆಕ್ನ ಯುನಿಕ್ಸ್ ಭಾಷಾವೈಶಿಷ್ಟ್ಯವನ್ನು ಬಳಸಿಕೊಂಡು ಹೊಸ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಪ್ರಾರಂಭಿಸುವ ಮೂಲಕ, ಗುರಿ ಪ್ರೋಗ್ರಾಂನ ಸ್ಥಿತಿಯನ್ನು ಕ್ರಮಬದ್ಧಗೊಳಿಸುವ ಮೂಲಕ ಮತ್ತು ಅದನ್ನು ವರ್ಗಾಯಿಸುವ ಮೂಲಕ ಇದನ್ನು ಸಾಧಿಸಿದರೆ, ಕಿಟ್ಸೂನ್ "ಇನ್-ಪ್ಲೇಸ್" ಸ್ಟೇಟ್ ಟ್ರಾನ್ಸ್ಫರ್ ಅನ್ನು ನಿರ್ವಹಿಸಲು ಡೈನಾಮಿಕ್ ಲಿಂಕಿಂಗ್ ಅನ್ನು ಬಳಸುತ್ತದೆ. ಕಿಟ್ಸೂನ್ ಅನ್ನು ಎಕಿಡೆನ್ರ ಕೋಡ್ಬೇಸ್ನಿಂದ ಪಡೆಯಲಾಗಿದೆ ಮತ್ತು ಇದನ್ನು ಎಕಿಡೆನ್ರ ನಂತರದ ಆವೃತ್ತಿಯೆಂದು ಪರಿಗಣಿಸಬಹುದು. ಎಕಿಡೆನ್ ಮತ್ತು ಕಿಟ್ಸೂನ್ ಸಹ ಗಮನಾರ್ಹವಾಗಿವೆ, ಏಕೆಂದರೆ ಅವುಗಳನ್ನು ಪ್ರಾಥಮಿಕವಾಗಿ ವಿಶೇಷ ರನ್ಟೈಮ್ಗಳು ಅಥವಾ ಕಂಪೈಲರ್ಗಳ ಬದಲಿಗೆ ಅಪ್ಲಿಕೇಶನ್-ಮಟ್ಟದ ಗ್ರಂಥಾಲಯಗಳಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ. ಹೀಗಾಗಿ, ಎಕಿಡೆನ್ ಅಥವಾ ಕಿಟ್ಸೂನ್ ಅನ್ನು ಬಳಸಲು, ಅಪ್ಲಿಕೇಶನ್ ಡೆವಲಪರ್ ವರ್ಗಾಯಿಸಬೇಕಾದ ಸ್ಥಿತಿಯನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಗುರುತಿಸಬೇಕು ಮತ್ತು ನವೀಕರಣವು ಸಂಭವಿಸಬಹುದಾದ ಪ್ರೋಗ್ರಾಂನಲ್ಲಿನ ಅಂಶಗಳನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಆಯ್ಕೆ ಮಾಡಬೇಕು. ಈ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸುಲಭಗೊಳಿಸಲು, ಸ್ಟೇಟ್ ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ಗಳನ್ನು ಬರೆಯಲು ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಯನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ವಿಶೇಷ ಕಂಪೈಲರ್ ಅನ್ನು ಕಿಟ್ಸೂನ್ ಒಳಗೊಂಡಿದೆ. ಎರ್ಲಾಂಗ್ ಎರ್ಲಾಂಗ್ ಡೈನಾಮಿಕ್ ಸಾಫ್ಟ್ವೇರ್ ನವೀಕರಣವನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಆದರೂ ಇದನ್ನು ಸಾಮಾನ್ಯವಾಗಿ "ಹಾಟ್ ಕೋಡ್ ಲೋಡಿಂಗ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಎರ್ಲಾಂಗ್ಗೆ ನವೀಕರಣಗಳ ಮೇಲೆ ಯಾವುದೇ ಸುರಕ್ಷತಾ ಖಾತರಿಗಳ ಅಗತ್ಯವಿಲ್ಲ, ಆದರೆ ಎರ್ಲಾಂಗ್ ಸಂಸ್ಕೃತಿಯು ಅಭಿವರ್ಧಕರು ರಕ್ಷಣಾತ್ಮಕ ಶೈಲಿಯಲ್ಲಿ ಬರೆಯುತ್ತಾರೆ ಎಂದು ಸೂಚಿಸುತ್ತದೆ, ಅದು ನವೀಕರಣದಿಂದ ಉಂಟಾಗುವ ರೀತಿಯ ದೋಷಗಳನ್ನು ಆಕರ್ಷಕವಾಗಿ ನಿಭಾಯಿಸುತ್ತದೆ. ಪೈಮೌಲ್ಟ್ ಎಂಬುದು ಪೈಥಾನ್ನಲ್ಲಿ ಬರೆಯಲಾದ ಡೈನಾಮಿಕ್ ನವೀಕರಣಕ್ಕಾಗಿ ಮೂಲಮಾದರಿಯ ವೇದಿಕೆಯಾಗಿದೆ. ಇದು ಇತರ ವ್ಯವಸ್ಥೆಗಳಿಂದ ಅನೇಕ ತಂತ್ರಗಳನ್ನು ಸಂಗ್ರಹಿಸಿ, ಅವುಗಳ ಸಂಯೋಜನೆ ಮತ್ತು ಸಂರಚನೆಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಅಭಿವರ್ಧಕರು ತಮ್ಮ ಅಗತ್ಯಗಳಿಗೆ ಹೆಚ್ಚು ಸೂಕ್ತವೆಂದು ಕಂಡುಕೊಳ್ಳುವ ನವೀಕರಣ ತಂತ್ರಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಅವಕಾಶ ನೀಡುವುದು ಈ ವೇದಿಕೆಯ ಉದ್ದೇಶವಾಗಿದೆ. ಉದಾಹರಣೆಗೆ, ಕಿಟ್ಸೂನ್ ಅಥವಾ ಎಕಿಡೆನ್ನಲ್ಲಿರುವಂತೆ ಅಪ್ಲಿಕೇಶನ್ನ ಸಂಪೂರ್ಣ ಕೋಡ್ ಅನ್ನು ಬದಲಾಯಿಸುವಾಗ ಜಿನ್ಸೆಂಗ್ನಲ್ಲಿರುವಂತೆ ರಾಜ್ಯದ ಸೋಮಾರಿಯಾದ ನವೀಕರಣವನ್ನು ಸಂಯೋಜಿಸಬಹುದು. ಮೈಕ್ರೋಸಾಫ್ಟ್ ವಿಷುಯಲ್ ಸಿ + + ಮೈಕ್ರೋಸಾಫ್ಟ್ ಮೈಕ್ರೋಸಾಫ್ಟ್ ವಿಷುಯಲ್ ಸಿ + + ಗಾಗಿ ಆಂತರಿಕ ಪ್ಯಾಚಿಂಗ್ ತಂತ್ರಜ್ಞಾನವನ್ನು ಬಳಸುತ್ತಿದೆ, ಇದು ಪ್ಯಾಚ್ಗಳ ಕ್ರಿಯಾತ್ಮಕ ನಿಖರತೆಯನ್ನು ಕಾಪಾಡಿಕೊಳ್ಳುವಾಗ ವೈಯಕ್ತಿಕ ಸಿ + + ಕಾರ್ಯಗಳನ್ನು ಪ್ಯಾಚ್ ಮಾಡುವುದನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಪ್ರಸ್ತುತ ತಿಳಿದಿರುವ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಅಜುರೆ ಎಸ್. ಕ್ಯೂ. ಎಲ್ ಡೇಟಾಬೇಸ್ನಲ್ಲಿ ಎಸ್. ಕ್ಯೂ. ಎಲ್ ಸರ್ವರ್ ಆಗಿದೆ. ಪರ್ಸಿಸ್ಟೆನ್ಸ್ (ಕಂಪ್ಯೂಟರ್ ಸೈನ್ಸ್) ರನ್ಟೈಮ್ ವೆರಿಫಿಕೇಶನ್ ರೆಫರೆನ್ಸ್ಗಳನ್ನು ಸಹ ನೋಡಿ ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಕೆಸ್ಪ್ಲೈಸ್ ಮುಖಪುಟ ಕೆಸ್ಪ್ಲೈಸ್ ಸೋರ್ಸ್ ಕೋಡ್ ಜಿನ್ಸೆಂಗ್ ಪ್ರಾಜೆಕ್ಟ್ ಪೇಜ್ ಮತ್ತು ಸೋರ್ಸ್ ಕೋಡ್/ಅಪ್ಸ್ಟೇರ್ ಪೇಪರ್/ಪೊಲಸ್ ಪೇಪರ್ ಎರ್ಲಾಂಗ್ ಮುಖಪುಟ ಕಟಾನಾ ಮುಖಪುಟ ವಿಷುಯಲ್ ಸಿ + + ಪ್ಯಾಚಿಂಗ್ ಸಿಸ್ಟಮ್ ಅಡ್ಮಿನಿಸ್ಟ್ರೇಷನ್ನಲ್ಲಿ ಶ್ವೇತಪತ್ರ ಬ್ಲಾಗ್ ಪೋಸ್ಟ್