ಲಿನಕ್ಸ್ ಕರ್ನಲ್‌ಗಾಗಿ ಪಾಪ್‌ಕಾರ್ನ್ ವಿತರಿಸಿದ ಥ್ರೆಡ್ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಸಿಸ್ಟಮ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದೆ.

ವರ್ಜೀನಿಯಾ ಟೆಕ್ ಸೂಚಿಸಲಾಗಿದೆ ಲಿನಕ್ಸ್ ಕರ್ನಲ್ ಡೆವಲಪರ್‌ಗಳ ಚರ್ಚೆಗಾಗಿ, ವಿತರಿಸಿದ ಥ್ರೆಡ್ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಸಿಸ್ಟಮ್‌ನ ಅಳವಡಿಕೆಯೊಂದಿಗೆ ಪ್ಯಾಚ್‌ಗಳ ಸೆಟ್ ಪಾಪ್ಕಾರ್ನ್ (ಡಿಸ್ಟ್ರಿಬ್ಯೂಟೆಡ್ ಥ್ರೆಡ್ ಎಕ್ಸಿಕ್ಯೂಷನ್), ಇದು ಹೋಸ್ಟ್‌ಗಳ ನಡುವೆ ಥ್ರೆಡ್‌ಗಳ ವಿತರಣೆ ಮತ್ತು ಪಾರದರ್ಶಕ ವಲಸೆಯೊಂದಿಗೆ ಹಲವಾರು ಕಂಪ್ಯೂಟರ್‌ಗಳಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಮರಣದಂಡನೆಯನ್ನು ಸಂಘಟಿಸಲು ನಿಮಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಪಾಪ್‌ಕಾರ್ನ್‌ನೊಂದಿಗೆ, ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಒಂದು ಹೋಸ್ಟ್‌ನಲ್ಲಿ ಪ್ರಾರಂಭಿಸಬಹುದು ಮತ್ತು ನಂತರ ಅಡಚಣೆಯಿಲ್ಲದೆ ಮತ್ತೊಂದು ಹೋಸ್ಟ್‌ಗೆ ಸರಿಸಬಹುದು. ಮಲ್ಟಿಥ್ರೆಡ್ ಪ್ರೋಗ್ರಾಂಗಳಲ್ಲಿ, ಇತರ ಹೋಸ್ಟ್‌ಗಳಿಗೆ ಪ್ರತ್ಯೇಕ ಥ್ರೆಡ್‌ಗಳ ಸ್ಥಳಾಂತರವನ್ನು ಅನುಮತಿಸಲಾಗಿದೆ.

ಯೋಜನೆಯಂತಲ್ಲದೆ ಸಿಆರ್ಐಯುಮತ್ತೊಂದು ಸಿಸ್ಟಂನಲ್ಲಿ ಪ್ರಕ್ರಿಯೆಯ ಸ್ಥಿತಿಯನ್ನು ಉಳಿಸಲು ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಪುನರಾರಂಭಿಸಲು ಅನುಮತಿಸುವ ಮೂಲಕ, ಪಾಪ್‌ಕಾರ್ನ್ ಅಪ್ಲಿಕೇಶನ್ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಸಮಯದಲ್ಲಿ ಹೋಸ್ಟ್‌ಗಳ ನಡುವೆ ತಡೆರಹಿತ ಮತ್ತು ಕ್ರಿಯಾತ್ಮಕ ವಲಸೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ, ಯಾವುದೇ ಬಳಕೆದಾರ ಕ್ರಿಯೆಯ ಅಗತ್ಯವಿಲ್ಲ ಮತ್ತು ಏಕಕಾಲೀನ ಥ್ರೆಡ್‌ಗಳನ್ನು ಚಲಾಯಿಸುವ ಎಲ್ಲಾ ಹೋಸ್ಟ್‌ಗಳಾದ್ಯಂತ ವರ್ಚುವಲ್ ಮೆಮೊರಿ ಸ್ಥಿರತೆಯನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ.

ಪಾಪ್‌ಕಾರ್ನ್ ಸಾಫ್ಟ್‌ವೇರ್ ಸ್ಟಾಕ್ ಫಾರ್ಮ್ ತೇಪೆಗಳು Linux ಕರ್ನಲ್‌ಗೆ ಮತ್ತು ಗ್ರಂಥಾಲಯದ ವಿತರಿಸಿದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ ಥ್ರೆಡ್‌ಗಳನ್ನು ಸ್ಥಳಾಂತರಿಸಲು ಪಾಪ್‌ಕಾರ್ನ್ ಸಿಸ್ಟಮ್ ಕರೆಗಳನ್ನು ಹೇಗೆ ಬಳಸಬಹುದು ಎಂಬುದನ್ನು ಪ್ರದರ್ಶಿಸುವ ಪರೀಕ್ಷೆಗಳೊಂದಿಗೆ. ಕರ್ನಲ್ ಮಟ್ಟದಲ್ಲಿ, ಹಂಚಿಕೆ ಹಂಚಿಕೆ ಮೆಮೊರಿಯ ಅನುಷ್ಠಾನದೊಂದಿಗೆ ವರ್ಚುವಲ್ ಮೆಮೊರಿ ಉಪವ್ಯವಸ್ಥೆಗೆ ವಿಸ್ತರಣೆಗಳನ್ನು ಪ್ರಸ್ತಾಪಿಸಲಾಗಿದೆ, ಇದು ವಿವಿಧ ಹೋಸ್ಟ್‌ಗಳಲ್ಲಿನ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಸಾಮಾನ್ಯ ಮತ್ತು ಸ್ಥಿರವಾದ ವರ್ಚುವಲ್ ವಿಳಾಸ ಸ್ಥಳವನ್ನು ಪ್ರವೇಶಿಸಲು ಅನುಮತಿಸುತ್ತದೆ. ವರ್ಚುವಲ್ ಮೆಮೊರಿ ಪುಟದ ಸುಸಂಬದ್ಧತೆಯನ್ನು ಪ್ರೋಟೋಕಾಲ್ ಮೂಲಕ ಖಾತ್ರಿಪಡಿಸಲಾಗುತ್ತದೆ ಅದು ಮೆಮೊರಿ ಪುಟಗಳನ್ನು ಓದಿದಾಗ ಹೋಸ್ಟ್‌ಗೆ ಪುನರಾವರ್ತಿಸುತ್ತದೆ ಮತ್ತು ಬರೆಯುವಾಗ ಮೆಮೊರಿ ಪುಟಗಳನ್ನು ಅಮಾನ್ಯಗೊಳಿಸುತ್ತದೆ.

TCP ಸಾಕೆಟ್ ಮೂಲಕ ರವಾನೆಯಾಗುವ ಸಂದೇಶಗಳಿಗಾಗಿ ಕರ್ನಲ್-ಮಟ್ಟದ ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು ಅತಿಥೇಯಗಳ ನಡುವಿನ ಪರಸ್ಪರ ಕ್ರಿಯೆಯನ್ನು ನಡೆಸಲಾಗುತ್ತದೆ. ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ಡೀಬಗ್ ಮಾಡುವಿಕೆ ಮತ್ತು ಪರೀಕ್ಷೆಯನ್ನು ಸರಳಗೊಳಿಸಲು TCP/IP ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ ಎಂದು ಗಮನಿಸಲಾಗಿದೆ. ಭದ್ರತೆ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯ ದೃಷ್ಟಿಕೋನದಿಂದ, ಕರ್ನಲ್ ರಚನೆಗಳು ಮತ್ತು ಮೆಮೊರಿ ಪುಟಗಳ ವಿಷಯಗಳನ್ನು ಹೋಸ್ಟ್‌ಗಳ ನಡುವೆ ವರ್ಗಾಯಿಸಲು TCP/IP ಉತ್ತಮ ಮಾರ್ಗವಲ್ಲ ಎಂದು ಡೆವಲಪರ್‌ಗಳು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುತ್ತಾರೆ. ವಿತರಿಸಿದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಚಲಾಯಿಸುತ್ತಿರುವ ಎಲ್ಲಾ ಹೋಸ್ಟ್‌ಗಳು ಒಂದೇ ಮಟ್ಟದ ನಂಬಿಕೆಯನ್ನು ಹೊಂದಿರಬೇಕು. ಮುಖ್ಯ ಕ್ರಮಾವಳಿಗಳ ಸ್ಥಿರೀಕರಣದ ನಂತರ, ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿ ಸಾರಿಗೆ ವಿಧಾನವನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.

ವಿತರಿಸಿದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ರಚಿಸುವ ಸಾಧ್ಯತೆಗಳನ್ನು ಅಧ್ಯಯನ ಮಾಡಲು ಪಾಪ್‌ಕಾರ್ನ್ ಅನ್ನು ಸಂಶೋಧನಾ ಯೋಜನೆಯಾಗಿ 2014 ರಿಂದ ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗುತ್ತಿದೆ, ಅದರ ಎಳೆಗಳನ್ನು ವಿವಿಧ ನೋಡ್‌ಗಳಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸಬಹುದು ವೈವಿಧ್ಯಮಯ ವಿಭಿನ್ನ ಸೂಚನಾ ಸೆಟ್ ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗಳ ಆಧಾರದ ಮೇಲೆ ಕೋರ್‌ಗಳನ್ನು ಸಂಯೋಜಿಸಬಹುದಾದ ಕಂಪ್ಯೂಟಿಂಗ್ ವ್ಯವಸ್ಥೆಗಳು (Xeon/Xeon-Phi, ARM/x86, CPU/GPU/FPGA). Linux ಕರ್ನಲ್ ಡೆವಲಪರ್‌ಗಳಿಗೆ ಪ್ರಸ್ತಾಪಿಸಲಾದ ಪ್ಯಾಚ್‌ಗಳ ಸೆಟ್ x86 CPU ನೊಂದಿಗೆ ಹೋಸ್ಟ್‌ಗಳಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಆದರೆ Popcorn Linux ನ ಹೆಚ್ಚು ಕ್ರಿಯಾತ್ಮಕ ಆವೃತ್ತಿಯೂ ಇದೆ, ಇದು ವಿಭಿನ್ನ CPU ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗಳೊಂದಿಗೆ (x86 ಮತ್ತು ARM) ಹೋಸ್ಟ್‌ಗಳಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಚಲಾಯಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ವೈವಿಧ್ಯಮಯ ಪರಿಸರದಲ್ಲಿ ಪಾಪ್‌ಕಾರ್ನ್ ಅನ್ನು ಬಳಸಲು, ನೀವು ವಿಶೇಷವನ್ನು ಬಳಸಬೇಕು ಕಂಪೈಲರ್ LLVM ಆಧರಿಸಿ. ಅದೇ ಆರ್ಕಿಟೆಕ್ಚರ್‌ನೊಂದಿಗೆ ಹೋಸ್ಟ್‌ಗಳಲ್ಲಿ ವಿತರಣೆಯಾಗಿ ಚಾಲನೆಯಲ್ಲಿರುವಾಗ, ಪ್ರತ್ಯೇಕ ಕಂಪೈಲರ್‌ನೊಂದಿಗೆ ಮರುನಿರ್ಮಾಣ ಮಾಡುವ ಅಗತ್ಯವಿಲ್ಲ.

ಲಿನಕ್ಸ್ ಕರ್ನಲ್‌ಗಾಗಿ ಪಾಪ್‌ಕಾರ್ನ್ ವಿತರಿಸಿದ ಥ್ರೆಡ್ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಸಿಸ್ಟಮ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುತ್ತಿದೆ.

ಜೊತೆಗೆ, ಇದನ್ನು ಗಮನಿಸಬಹುದು ಘೋಷಣೆ ಸ್ವಲ್ಪಮಟ್ಟಿಗೆ ಇದೇ ಯೋಜನೆ ಟೆಲಿಫೋರ್ಕ್ ಕ್ಲಸ್ಟರ್‌ನಲ್ಲಿರುವ ಇತರ ಕಂಪ್ಯೂಟರ್‌ಗಳಲ್ಲಿ ಮಕ್ಕಳ ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಪ್ರಾರಂಭಿಸಲು ಆರಂಭಿಕ ಮೂಲಮಾದರಿಯ API ಅನುಷ್ಠಾನದೊಂದಿಗೆ (ಫೋರ್ಕ್(), ಆದರೆ ಫೋರ್ಕ್ ಮಾಡಿದ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಮತ್ತೊಂದು ಕಂಪ್ಯೂಟರ್‌ಗೆ ವರ್ಗಾಯಿಸುತ್ತದೆ).
ಕೋಡ್ ಅನ್ನು ರಸ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು ಇಲ್ಲಿಯವರೆಗೆ ಫೈಲ್‌ಗಳಂತಹ ಸಿಸ್ಟಮ್ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಬಳಸದ ಸರಳ ಪ್ರಕ್ರಿಯೆಗಳ ಕ್ಲೋನಿಂಗ್ ಅನ್ನು ಅನುಮತಿಸುತ್ತದೆ. ಟೆಲಿಫೋರ್ಕ್ ಕರೆ ಮಾಡಿದಾಗ, ಮೆಮೊರಿ ಮತ್ತು ಪ್ರಕ್ರಿಯೆ-ಸಂಬಂಧಿತ ರಚನೆಗಳನ್ನು ಸರ್ವರ್ ಹ್ಯಾಂಡ್ಲರ್ (ಟೆಲಿಪ್ಯಾಡ್) ಚಾಲನೆಯಲ್ಲಿರುವ ಮತ್ತೊಂದು ಹೋಸ್ಟ್‌ಗೆ ಕ್ಲೋನ್ ಮಾಡಲಾಗುತ್ತದೆ. ptrace ಅನ್ನು ಬಳಸಿಕೊಂಡು, ಪ್ರಕ್ರಿಯೆಯ ಮೆಮೊರಿ ಪ್ರತಿಬಿಂಬವನ್ನು ಧಾರಾವಾಹಿ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಪ್ರಕ್ರಿಯೆಯ ಸ್ಥಿತಿ ಮತ್ತು ನೋಂದಣಿಗಳೊಂದಿಗೆ ಮತ್ತೊಂದು ಹೋಸ್ಟ್‌ಗೆ ವರ್ಗಾಯಿಸಲಾಗುತ್ತದೆ. ಪ್ರಕ್ರಿಯೆಯ ಸ್ಥಿತಿಯನ್ನು ಫೈಲ್‌ಗೆ ಉಳಿಸಲು ಮತ್ತು ಅದರ ಮೂಲಕ ಅದನ್ನು ಮರುಸ್ಥಾಪಿಸಲು API ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ