ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

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

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಕಂಪ್ಯೂಟರ್ ಇತಿಹಾಸದಲ್ಲಿ ಟರ್ಮಿನಲ್‌ಗಳಿಗೆ ವಿಶೇಷ ಸ್ಥಾನವಿದೆ, ಆದರೆ ಇತ್ತೀಚಿನ ದಶಕಗಳಲ್ಲಿ ಚಿತ್ರಾತ್ಮಕ ಇಂಟರ್‌ಫೇಸ್‌ಗಳು ಸರ್ವವ್ಯಾಪಿಯಾಗಿದ್ದರಿಂದ ಆಜ್ಞಾ ಸಾಲಿನ ಜೊತೆಗೆ ಬದುಕಲು ಬಲವಂತಪಡಿಸಲಾಗಿದೆ. ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್ಗಳು ತಮ್ಮದೇ ಆದ ಸ್ಥಾನವನ್ನು ಬದಲಾಯಿಸಿದರು ಹಾರ್ಡ್ವೇರ್ ಸಹೋದರರು, ಇದು ಪ್ರತಿಯಾಗಿ, ಪಂಚ್ ಕಾರ್ಡ್‌ಗಳು ಮತ್ತು ಟಾಗಲ್ ಸ್ವಿಚ್‌ಗಳ ಆಧಾರದ ಮೇಲೆ ಸಿಸ್ಟಮ್‌ಗಳ ಮಾರ್ಪಾಡು. ಆಧುನಿಕ ವಿತರಣೆಗಳು ಎಲ್ಲಾ ಆಕಾರಗಳು ಮತ್ತು ಬಣ್ಣಗಳ ವಿವಿಧ ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳೊಂದಿಗೆ ಬರುತ್ತವೆ. ಮತ್ತು ಅನೇಕರು ತಮ್ಮ ಕೆಲಸದ ವಾತಾವರಣದಿಂದ ಒದಗಿಸಲಾದ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಟರ್ಮಿನಲ್‌ನೊಂದಿಗೆ ತೃಪ್ತರಾಗಿದ್ದರೂ, ಕೆಲವರು ಹೆಮ್ಮೆಯಿಂದ ತಮ್ಮ ನೆಚ್ಚಿನ ಶೆಲ್ ಅಥವಾ ಪಠ್ಯ ಸಂಪಾದಕವನ್ನು ಚಲಾಯಿಸಲು ಸರಳವಾದ ವಿಲಕ್ಷಣ ಸಾಫ್ಟ್‌ವೇರ್ ಅನ್ನು ಬಳಸುತ್ತಾರೆ. ಆದರೆ, ಈ ಲೇಖನದಿಂದ ನಾವು ನೋಡುವಂತೆ, ಎಲ್ಲಾ ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ಒಂದೇ ಚಿತ್ರದಲ್ಲಿ ರಚಿಸಲಾಗಿಲ್ಲ: ಅವು ಕ್ರಿಯಾತ್ಮಕತೆ, ಗಾತ್ರ ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯಲ್ಲಿ ಹೆಚ್ಚು ಭಿನ್ನವಾಗಿರುತ್ತವೆ.

ಕೆಲವು ಟರ್ಮಿನಲ್‌ಗಳು ಸರಳವಾದ ಆಶ್ಚರ್ಯಕರ ಭದ್ರತಾ ರಂಧ್ರಗಳನ್ನು ಹೊಂದಿವೆ, ಜೊತೆಗೆ ಹೆಚ್ಚಿನವುಗಳು ಟ್ಯಾಬ್ಡ್ ಇಂಟರ್‌ಫೇಸ್‌ಗೆ ಬೆಂಬಲದಿಂದ ಸ್ಕ್ರಿಪ್ಟಿಂಗ್‌ವರೆಗೆ ಸಂಪೂರ್ಣವಾಗಿ ವಿಭಿನ್ನವಾದ ಕಾರ್ಯಗಳನ್ನು ಹೊಂದಿವೆ. ಆದರೂ ನಾವು ದೂರದ ಹಿಂದೆ ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳನ್ನು ನೋಡಿದೆ, ಈ ಲೇಖನವು ಹಿಂದಿನ ವಸ್ತುಗಳ ನವೀಕರಣವಾಗಿದ್ದು, 2018 ರಲ್ಲಿ ಯಾವ ಟರ್ಮಿನಲ್ ಅನ್ನು ಬಳಸಬೇಕೆಂದು ಓದುಗರಿಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಲೇಖನದ ಮೊದಲಾರ್ಧವು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಹೋಲಿಸುತ್ತದೆ ಮತ್ತು ದ್ವಿತೀಯಾರ್ಧವು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡುತ್ತದೆ.

ನಾನು ಪರಿಶೀಲಿಸಿದ ಟರ್ಮಿನಲ್‌ಗಳು ಇಲ್ಲಿವೆ:

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಇವುಗಳು ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗಳಾಗಿರದೇ ಇರಬಹುದು, ಏಕೆಂದರೆ ಬರೆಯುವ ಸಮಯದಲ್ಲಿ ನಾನು ಸ್ಥಿರವಾದ ನಿರ್ಮಾಣಗಳಿಗೆ ಸೀಮಿತವಾಗಿದ್ದೇನೆ, ಅದನ್ನು ನಾನು ಡೆಬಿಯನ್ 9 ಅಥವಾ ಫೆಡೋರಾ 27 ನಲ್ಲಿ ಹೊರತರಲು ಸಾಧ್ಯವಾಯಿತು. ಇದಕ್ಕೆ ಹೊರತಾಗಿರುವುದು ಅಲಾಕ್ರಿಟ್ಟಿ. ಇದು GPU-ವೇಗವರ್ಧಿತ ಟರ್ಮಿನಲ್‌ಗಳ ವಂಶಸ್ಥರು ಮತ್ತು ಈ ಕಾರ್ಯಕ್ಕಾಗಿ ಅಸಾಮಾನ್ಯ ಮತ್ತು ಹೊಸ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ - ರಸ್ಟ್. ನನ್ನ ವಿಮರ್ಶೆಯಿಂದ ನಾನು ವೆಬ್ ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ಹೊರಗಿಟ್ಟಿದ್ದೇನೆ (ಅವುಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಎಲೆಕ್ಟ್ರಾನ್), ಏಕೆಂದರೆ ಪ್ರಾಥಮಿಕ ಪರೀಕ್ಷೆಗಳು ಅವರ ಅತ್ಯಂತ ಕಳಪೆ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ತೋರಿಸಿದವು.

ಯುನಿಕೋಡ್ ಬೆಂಬಲ

ನಾನು ಯುನಿಕೋಡ್ ಬೆಂಬಲದೊಂದಿಗೆ ನನ್ನ ಪರೀಕ್ಷೆಗಳನ್ನು ಪ್ರಾರಂಭಿಸಿದೆ. ಟರ್ಮಿನಲ್‌ಗಳ ಮೊದಲ ಪರೀಕ್ಷೆಯು ಯುನಿಕೋಡ್ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಪ್ರದರ್ಶಿಸುವುದಾಗಿತ್ತು ವಿಕಿಪೀಡಿಯ ಲೇಖನಗಳು: "é, Δ, И, क, م, ๗, あ, 叶, 葉 ಮತ್ತು 말." ಈ ಸರಳ ಪರೀಕ್ಷೆಯು ಟರ್ಮಿನಲ್ ವಿಶ್ವಾದ್ಯಂತ ಸರಿಯಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆಯೇ ಎಂಬುದನ್ನು ತೋರಿಸುತ್ತದೆ. xterm ಟರ್ಮಿನಲ್ ಅರೇಬಿಕ್ ಅಕ್ಷರವನ್ನು ಪ್ರದರ್ಶಿಸುವುದಿಲ್ಲ ಮೆಮ್ ಪೂರ್ವನಿಯೋಜಿತ ಸಂರಚನೆಯಲ್ಲಿ:

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ, xterm ಕ್ಲಾಸಿಕ್ "ಸ್ಥಿರ" ಫಾಂಟ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಅದರ ಪ್ರಕಾರ ಈಗಲೂ ಅದೇ ವಿಕ್ಕಿ, "1997 ರಿಂದ ಗಣನೀಯ ಯೂನಿಕೋಡ್ ಕವರೇಜ್" ಹೊಂದಿದೆ. ಅಕ್ಷರವು ಖಾಲಿ ಚೌಕಟ್ಟಿನಂತೆ ಕಾಣಿಸಿಕೊಳ್ಳಲು ಈ ಫಾಂಟ್‌ನಲ್ಲಿ ಏನಾದರೂ ನಡೆಯುತ್ತಿದೆ ಮತ್ತು ಪಠ್ಯ ಫಾಂಟ್ ಅನ್ನು 20+ ಪಾಯಿಂಟ್‌ಗಳಿಗೆ ಹೆಚ್ಚಿಸಿದಾಗ ಮಾತ್ರ ಅಕ್ಷರವು ಅಂತಿಮವಾಗಿ ಸರಿಯಾಗಿ ಪ್ರದರ್ಶಿಸಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಈ "ಫಿಕ್ಸ್" ಇತರ ಯುನಿಕೋಡ್ ಅಕ್ಷರಗಳ ಪ್ರದರ್ಶನವನ್ನು ಮುರಿಯುತ್ತದೆ:

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಈ ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ಗಳನ್ನು ಫೆಡೋರಾ 27 ರಲ್ಲಿ ತೆಗೆದುಕೊಳ್ಳಲಾಗಿದೆ, ಏಕೆಂದರೆ ಇದು ಡೆಬಿಯನ್ 9 ಗಿಂತ ಉತ್ತಮ ಫಲಿತಾಂಶಗಳನ್ನು ನೀಡಿತು, ಅಲ್ಲಿ ಕೆಲವು ಹಳೆಯ ಆವೃತ್ತಿಯ ಟರ್ಮಿನಲ್‌ಗಳು (ನಿರ್ದಿಷ್ಟವಾಗಿ mlterm) ಫಾಂಟ್‌ಗಳನ್ನು ಸರಿಯಾಗಿ ನಿಭಾಯಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ. ಅದೃಷ್ಟವಶಾತ್ ಇದನ್ನು ನಂತರದ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಸರಿಪಡಿಸಲಾಗಿದೆ.

ಈಗ xterm ನಲ್ಲಿ ಲೈನ್ ಅನ್ನು ಹೇಗೆ ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ಗಮನಿಸಿ. ಮೆಮ್ ಚಿಹ್ನೆ ಮತ್ತು ಕೆಳಗಿನ ಸೆಮಿಟಿಕ್ ಎಂದು ಅದು ತಿರುಗುತ್ತದೆ qoph RTL ಶೈಲಿಯ ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳನ್ನು ಉಲ್ಲೇಖಿಸಿ (ಬಲದಿಂದ ಎಡಕ್ಕೆ), ಆದ್ದರಿಂದ ತಾಂತ್ರಿಕವಾಗಿ ಅವುಗಳನ್ನು ಬಲದಿಂದ ಎಡಕ್ಕೆ ಪ್ರದರ್ಶಿಸಬೇಕು. Firefox 57 ನಂತಹ ವೆಬ್ ಬ್ರೌಸರ್‌ಗಳು ಮೇಲಿನ ಸಾಲನ್ನು ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸುತ್ತವೆ. RTL ಪಠ್ಯದ ಸರಳ ಆವೃತ್ತಿಯು ಪದ ​​"Сара"ಹೀಬ್ರೂ ಭಾಷೆಯಲ್ಲಿ (ಸಾರಾ). ದ್ವಿಮುಖ ಪಠ್ಯಗಳ ವಿಕಿ ಪುಟ ಈ ಕೆಳಗಿನವುಗಳನ್ನು ಹೇಳುತ್ತದೆ:

"ಹಲವು ಕಂಪ್ಯೂಟರ್ ಪ್ರೋಗ್ರಾಂಗಳು ದ್ವಿಮುಖ ಪಠ್ಯವನ್ನು ಸರಿಯಾಗಿ ಪ್ರದರ್ಶಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ಉದಾಹರಣೆಗೆ, "ಸಾರಾ" ಎಂಬ ಹೀಬ್ರೂ ಹೆಸರು ಪಾಪ (ש) (ಬಲಭಾಗದಲ್ಲಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ), ನಂತರ resh (ר) ಮತ್ತು ಅಂತಿಮವಾಗಿ ಅವನು (ה) (ಎಡಭಾಗದಲ್ಲಿ ಕಾಣಿಸಿಕೊಳ್ಳಬೇಕು)"

ಅನೇಕ ಟರ್ಮಿನಲ್‌ಗಳು ಈ ಪರೀಕ್ಷೆಯಲ್ಲಿ ವಿಫಲವಾಗಿವೆ: ಅಲಾಕ್ರಿಟ್ಟಿ, VTE- ಪಡೆದ ಗ್ನೋಮ್ ಮತ್ತು XFCE ಟರ್ಮಿನಲ್‌ಗಳು, urxvt, st ಮತ್ತು xterm ಡಿಸ್ಪ್ಲೇ "ಸಾರಾ" ಹಿಮ್ಮುಖ ಕ್ರಮದಲ್ಲಿ, ನಾವು ಹೆಸರನ್ನು "Aras" ಎಂದು ಬರೆದಂತೆ.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಬೈಡೈರೆಕ್ಷನಲ್ ಪಠ್ಯಗಳೊಂದಿಗಿನ ಮತ್ತೊಂದು ಸಮಸ್ಯೆ ಏನೆಂದರೆ, ಅವುಗಳನ್ನು ಹೇಗಾದರೂ ಜೋಡಿಸಬೇಕಾಗಿದೆ, ವಿಶೇಷವಾಗಿ RTL ಮತ್ತು LTR ಪಠ್ಯಗಳನ್ನು ಮಿಶ್ರಣ ಮಾಡಲು ಬಂದಾಗ. RTL ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳು ಟರ್ಮಿನಲ್ ವಿಂಡೋದ ಬಲಭಾಗದಿಂದ ರನ್ ಆಗಬೇಕು, ಆದರೆ LTR ಇಂಗ್ಲಿಷ್‌ಗೆ ಡಿಫಾಲ್ಟ್ ಆಗಿರುವ ಟರ್ಮಿನಲ್‌ಗಳಿಗೆ ಏನಾಗಬೇಕು? ಅವುಗಳಲ್ಲಿ ಹೆಚ್ಚಿನವು ಯಾವುದೇ ವಿಶೇಷ ಕಾರ್ಯವಿಧಾನಗಳನ್ನು ಹೊಂದಿಲ್ಲ ಮತ್ತು ಎಲ್ಲಾ ಪಠ್ಯವನ್ನು ಎಡಕ್ಕೆ ಜೋಡಿಸುತ್ತವೆ (ಕಾನ್ಸೋಲ್ ಸೇರಿದಂತೆ). ವಿನಾಯಿತಿಗಳು pterm ಮತ್ತು mlterm, ಇದು ಮಾನದಂಡಗಳಿಗೆ ಬದ್ಧವಾಗಿದೆ ಮತ್ತು ಅಂತಹ ಸಾಲುಗಳನ್ನು ಬಲಕ್ಕೆ ಜೋಡಿಸುತ್ತದೆ.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಅಳವಡಿಕೆ ರಕ್ಷಣೆ

ನಾನು ಗುರುತಿಸಿರುವ ಮುಂದಿನ ನಿರ್ಣಾಯಕ ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ ವಿರೋಧಿ ಅಳವಡಿಕೆ ರಕ್ಷಣೆ. ಈ ರೀತಿಯ ಮಂತ್ರಗಳು ವ್ಯಾಪಕವಾಗಿ ತಿಳಿದಿದ್ದರೂ:

$ curl http://example.com/ | sh

ಕೋಡ್ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಪುಶ್ ಕಮಾಂಡ್‌ಗಳಾಗಿವೆ, ಎಚ್ಚರಿಕೆಯ ಪರಿಶೀಲನೆಯ ನಂತರವೂ ವೆಬ್ ಬ್ರೌಸರ್‌ನಿಂದ ನಕಲಿಸುವಾಗ ಮತ್ತು ಅಂಟಿಸುವಾಗ ಗುಪ್ತ ಆಜ್ಞೆಗಳು ಕನ್ಸೋಲ್‌ಗೆ ನುಸುಳಬಹುದು ಎಂದು ಕೆಲವರಿಗೆ ತಿಳಿದಿದೆ. ಪರಿಶೀಲನೆ ಸೈಟ್ ಗಿಯಾನ್ನಾ ಹಾರ್ನಾ ಆಜ್ಞೆಯು ಎಷ್ಟು ನಿರುಪದ್ರವವಾಗಿ ಕಾಣುತ್ತದೆ ಎಂಬುದನ್ನು ಅದ್ಭುತವಾಗಿ ತೋರಿಸುತ್ತದೆ:

git clone git: //git.kernel.org/pub/scm/utils/kup/kup.git

ಹಾರ್ನ್‌ನ ವೆಬ್‌ಸೈಟ್‌ನಿಂದ ಟರ್ಮಿನಲ್‌ಗೆ ಅಂಟಿಸಿದಾಗ ಅಂತಹ ಉಪದ್ರವಕ್ಕೆ ತಿರುಗುತ್ತದೆ:

git clone /dev/null;
    clear;
	echo -n "Hello ";
	whoami|tr -d 'n';
	echo -e '!nThat was a bad idea. Don'"'"'t copy code from websites you don'"'"'t trust! 
	Here'"'"'s the first line of your /etc/passwd: ';
	head -n1 /etc/passwd
	git clone git://git.kernel.org/pub/scm/utils/kup/kup.git

ಇದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ? ದುರುದ್ದೇಶಪೂರಿತ ಕೋಡ್ ಅನ್ನು ಬ್ಲಾಕ್ನಲ್ಲಿ ಸೇರಿಸಲಾಗಿದೆ , ಇದು CSS ಅನ್ನು ಬಳಸಿಕೊಂಡು ಬಳಕೆದಾರರ ವೀಕ್ಷಣೆಯಿಂದ ಹೊರಕ್ಕೆ ಸರಿಸಲಾಗಿದೆ.

ಬ್ರಾಕೆಟ್ಡ್ ಪೇಸ್ಟ್ ಮೋಡ್ ಅಂತಹ ದಾಳಿಗಳನ್ನು ತಟಸ್ಥಗೊಳಿಸಲು ಸ್ಪಷ್ಟವಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಈ ಕ್ರಮದಲ್ಲಿ, ಪಠ್ಯದ ಮೂಲದ ಬಗ್ಗೆ ಶೆಲ್‌ಗೆ ತಿಳಿಸಲು ಟರ್ಮಿನಲ್‌ಗಳು ಅಂಟಿಸಲಾದ ಪಠ್ಯವನ್ನು ಒಂದು ಜೋಡಿ ವಿಶೇಷ ಪಾರು ಅನುಕ್ರಮದಲ್ಲಿ ಸುತ್ತುವರಿಯುತ್ತವೆ. ಅಂಟಿಸಲಾದ ಪಠ್ಯವು ಒಳಗೊಂಡಿರುವ ವಿಶೇಷ ಅಕ್ಷರಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಬಹುದು ಎಂದು ಇದು ಶೆಲ್‌ಗೆ ಹೇಳುತ್ತದೆ. ಗೌರವಾನ್ವಿತ xterm ಗೆ ಹಿಂತಿರುಗಿದ ಎಲ್ಲಾ ಟರ್ಮಿನಲ್‌ಗಳು ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಬೆಂಬಲಿಸುತ್ತವೆ, ಆದರೆ ಬ್ರಾಕೆಟ್ ಮೋಡ್‌ನಲ್ಲಿ ಅಂಟಿಸಲು ಟರ್ಮಿನಲ್‌ನಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಶೆಲ್ ಅಥವಾ ಅಪ್ಲಿಕೇಶನ್‌ನಿಂದ ಬೆಂಬಲದ ಅಗತ್ಯವಿದೆ. ಉದಾಹರಣೆಗೆ, ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ಬಳಸುವುದು GNU ರೀಡ್‌ಲೈನ್ (ಅದೇ ಬ್ಯಾಷ್), ಫೈಲ್ ಅಗತ್ಯವಿದೆ ~/.ಇನ್ಪುಟ್ಆರ್ಸಿ:

set enable-bracketed-paste on

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

ಈ ಸಮಸ್ಯೆಗೆ ಉತ್ತಮ ಪರಿಹಾರವೆಂದರೆ ಟರ್ಮಿನಲ್‌ಗಾಗಿ ಪೇಸ್ಟ್ ದೃಢೀಕರಣ ಪ್ಲಗಿನ್ urxvt, ಇದು ಹೊಸ ಸಾಲುಗಳನ್ನು ಹೊಂದಿರುವ ಯಾವುದೇ ಪಠ್ಯವನ್ನು ಸೇರಿಸಲು ಅನುಮತಿಯನ್ನು ಕೇಳುತ್ತದೆ. ಹಾರ್ನ್ ವಿವರಿಸಿದ ಪಠ್ಯ ದಾಳಿಗೆ ಹೆಚ್ಚು ಸುರಕ್ಷಿತ ಆಯ್ಕೆಯನ್ನು ನಾನು ಕಂಡುಕೊಂಡಿಲ್ಲ.

ಟ್ಯಾಬ್‌ಗಳು ಮತ್ತು ಪ್ರೊಫೈಲ್‌ಗಳು

ಇದೀಗ ಜನಪ್ರಿಯ ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ ಟ್ಯಾಬ್ಡ್ ಇಂಟರ್ಫೇಸ್‌ಗೆ ಬೆಂಬಲವಾಗಿದೆ, ಇದನ್ನು ನಾವು ಹಲವಾರು ಇತರ ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ಹೊಂದಿರುವ ಒಂದು ಟರ್ಮಿನಲ್ ವಿಂಡೋ ಎಂದು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತೇವೆ. ಈ ಕಾರ್ಯವು ವಿಭಿನ್ನ ಟರ್ಮಿನಲ್‌ಗಳಿಗೆ ಭಿನ್ನವಾಗಿರುತ್ತದೆ ಮತ್ತು ಸಾಂಪ್ರದಾಯಿಕ xterm ಟರ್ಮಿನಲ್‌ಗಳು ಟ್ಯಾಬ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲವಾದರೂ, Xfce ಟರ್ಮಿನಲ್, GNOME ಟರ್ಮಿನಲ್ ಮತ್ತು Konsole ನಂತಹ ಹೆಚ್ಚು ಆಧುನಿಕ ಟರ್ಮಿನಲ್ ಅವತಾರಗಳು ಈ ಕಾರ್ಯವನ್ನು ಹೊಂದಿವೆ. Urxvt ಸಹ ಟ್ಯಾಬ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಆದರೆ ನೀವು ಪ್ಲಗಿನ್ ಅನ್ನು ಬಳಸಿದರೆ ಮಾತ್ರ. ಆದರೆ ಟ್ಯಾಬ್ ಬೆಂಬಲದ ವಿಷಯದಲ್ಲಿ, ಟರ್ಮಿನೇಟರ್ ನಿರ್ವಿವಾದದ ನಾಯಕ: ಇದು ಕೇವಲ ಟ್ಯಾಬ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸುವುದಿಲ್ಲ, ಆದರೆ ಯಾವುದೇ ಕ್ರಮದಲ್ಲಿ ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ವ್ಯವಸ್ಥೆಗೊಳಿಸಬಹುದು (ಕೆಳಗಿನ ಚಿತ್ರವನ್ನು ನೋಡಿ).

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಟರ್ಮಿನೇಟರ್‌ನ ಇನ್ನೊಂದು ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ ಈ ಟ್ಯಾಬ್‌ಗಳನ್ನು ಒಟ್ಟಿಗೆ "ಗುಂಪು" ಮಾಡುವ ಸಾಮರ್ಥ್ಯ ಮತ್ತು ಒಂದೇ ಸಮಯದಲ್ಲಿ ಅನೇಕ ಟರ್ಮಿನಲ್‌ಗಳಿಗೆ ಒಂದೇ ಕೀಸ್ಟ್ರೋಕ್‌ಗಳನ್ನು ಕಳುಹಿಸುವ ಸಾಮರ್ಥ್ಯ, ಏಕಕಾಲದಲ್ಲಿ ಬಹು ಸರ್ವರ್‌ಗಳಲ್ಲಿ ಬೃಹತ್ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಕಚ್ಚಾ ಸಾಧನವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದೇ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಕನ್ಸೋಲ್‌ನಲ್ಲಿಯೂ ಅಳವಡಿಸಲಾಗಿದೆ. ಇತರ ಟರ್ಮಿನಲ್‌ಗಳಲ್ಲಿ ಈ ವೈಶಿಷ್ಟ್ಯವನ್ನು ಬಳಸಲು, ನೀವು ಮೂರನೇ ವ್ಯಕ್ತಿಯ ಸಾಫ್ಟ್‌ವೇರ್ ಅನ್ನು ಬಳಸಬೇಕು ಕ್ಲಸ್ಟರ್ SSH, xlax ಅಥವಾ tmux.

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

ರಫಲ್ಸ್

ಈ ಲೇಖನದ ಮೊದಲ ಭಾಗದಲ್ಲಿ ನಾನು ಕವರ್ ಮಾಡುವ ಕೊನೆಯ ವಿಷಯವೆಂದರೆ ಟರ್ಮಿನಲ್‌ಗಳ ನೋಟ. ಉದಾಹರಣೆಗೆ GNOME, Xfce ಮತ್ತು urxvt ಪಾರದರ್ಶಕತೆಯನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಆದರೆ ಇತ್ತೀಚೆಗೆ ಹಿನ್ನೆಲೆ ಚಿತ್ರಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ಕೈಬಿಟ್ಟಿದೆ, ಕೆಲವು ಬಳಕೆದಾರರನ್ನು ಟರ್ಮಿನಲ್‌ಗೆ ಬದಲಾಯಿಸಲು ಒತ್ತಾಯಿಸುತ್ತದೆ. ಟಿಲಿಕ್ಸ್. ವೈಯಕ್ತಿಕವಾಗಿ, ನಾನು ಅದರಲ್ಲಿ ಸಂತೋಷವಾಗಿದ್ದೇನೆ ಮತ್ತು ಇದು ಸರಳವಾಗಿದೆ X ಸಂಪನ್ಮೂಲಗಳು, ಇದು urxvt ಗಾಗಿ ಹಿನ್ನೆಲೆ ಬಣ್ಣಗಳ ಮೂಲ ಸೆಟ್ ಅನ್ನು ಹೊಂದಿಸುತ್ತದೆ. ಆದಾಗ್ಯೂ, ಪ್ರಮಾಣಿತವಲ್ಲದ ಬಣ್ಣದ ವಿಷಯಗಳು ಸಹ ಸಮಸ್ಯೆಗಳನ್ನು ಉಂಟುಮಾಡಬಹುದು. ಉದಾಹರಣೆಗೆ, ಸೋಲಾರೈಸ್ ಮಾಡಲಾಗಿದೆ ಕೆಲಸ ಮಾಡುತ್ತಿಲ್ಲ ಅಪ್ಲಿಕೇಶನ್ಗಳೊಂದಿಗೆ htop и ಐಪಿಟ್ರಾಫ್, ಅವರು ಈಗಾಗಲೇ ತಮ್ಮದೇ ಆದ ಬಣ್ಣಗಳನ್ನು ಬಳಸುವುದರಿಂದ.

ಮೂಲ VT100 ಟರ್ಮಿನಲ್ ಬಣ್ಣಗಳನ್ನು ಬೆಂಬಲಿಸಲಿಲ್ಲ, ಮತ್ತು ಹೊಸದನ್ನು ಸಾಮಾನ್ಯವಾಗಿ 256-ಬಣ್ಣದ ಪ್ಯಾಲೆಟ್‌ಗೆ ಸೀಮಿತಗೊಳಿಸಲಾಗಿದೆ. ತಮ್ಮ ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸುವ ಮುಂದುವರಿದ ಬಳಕೆದಾರರಿಗೆ, ಶೆಲ್ ಪ್ರಾಂಪ್ಟ್‌ಗಳು ಅಥವಾ ಸ್ಟೇಟಸ್ ಬಾರ್‌ಗಳನ್ನು ಸಂಕೀರ್ಣ ರೀತಿಯಲ್ಲಿ ಕಿರಿಕಿರಿಗೊಳಿಸುವ ಮಿತಿಯಾಗಿರಬಹುದು. ಸಾರಾಂಶ ಯಾವ ಟರ್ಮಿನಲ್‌ಗಳು "ನಿಜವಾದ ಬಣ್ಣ" ಬೆಂಬಲವನ್ನು ಹೊಂದಿವೆ ಎಂಬುದನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡುತ್ತದೆ. ನನ್ನ ಪರೀಕ್ಷೆಗಳು st, Alacritty ಮತ್ತು VTE- ಆಧಾರಿತ ಟರ್ಮಿನಲ್‌ಗಳು ನಿಜವಾದ ಬಣ್ಣವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಬೆಂಬಲಿಸುತ್ತವೆ ಎಂದು ಖಚಿತಪಡಿಸುತ್ತದೆ. ಈ ವಿಷಯದಲ್ಲಿ ಇತರ ಟರ್ಮಿನಲ್‌ಗಳು ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದಿಲ್ಲ ಮತ್ತು ವಾಸ್ತವವಾಗಿ, 256 ಬಣ್ಣಗಳನ್ನು ಸಹ ಪ್ರದರ್ಶಿಸುವುದಿಲ್ಲ. GNOME ಟರ್ಮಿನಲ್‌ಗಳು, st ಮತ್ತು xterm ನಲ್ಲಿ ಟ್ರೂ ಕಲರ್ ಬೆಂಬಲದ ನಡುವಿನ ವ್ಯತ್ಯಾಸವನ್ನು ನೀವು ಕೆಳಗೆ ನೋಡಬಹುದು, ಇದು ಅವರ 256 ಬಣ್ಣದ ಪ್ಯಾಲೆಟ್‌ನೊಂದಿಗೆ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು urxvt, ಇದು ಪರೀಕ್ಷೆಯಲ್ಲಿ ವಿಫಲವಾಗುವುದಲ್ಲದೆ, ಅವುಗಳ ಬದಲಿಗೆ ಕೆಲವು ಮಿಟುಕಿಸುವ ಅಕ್ಷರಗಳನ್ನು ಸಹ ತೋರಿಸುತ್ತದೆ.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಲಿಂಕ್‌ಗಳನ್ನು ಕ್ಲಿಕ್ ಮಾಡುವಂತೆ ಮಾಡಲು ಕೆಲವು ಟರ್ಮಿನಲ್‌ಗಳು URL ಮಾದರಿಗಳಿಗಾಗಿ ಪಠ್ಯವನ್ನು ಸಹ ವಿಶ್ಲೇಷಿಸುತ್ತವೆ. ಇದು ಎಲ್ಲಾ VTE- ಪಡೆದ ಟರ್ಮಿನಲ್‌ಗಳಿಗೆ ಅನ್ವಯಿಸುತ್ತದೆ, ಆದರೆ urxvt ಗೆ ವಿಶೇಷ ಪ್ಲಗಿನ್ ಅಗತ್ಯವಿರುತ್ತದೆ ಅದು ಒಂದು ಕ್ಲಿಕ್‌ನಲ್ಲಿ ಅಥವಾ ಕೀಬೋರ್ಡ್ ಶಾರ್ಟ್‌ಕಟ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು URL ಗಳನ್ನು ಪರಿವರ್ತಿಸುತ್ತದೆ. ನಾನು ಪರೀಕ್ಷಿಸಿದ ಇತರ ಟರ್ಮಿನಲ್‌ಗಳು ಇತರ ರೀತಿಯಲ್ಲಿ URL ಗಳನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತವೆ.

ಅಂತಿಮವಾಗಿ, ಟರ್ಮಿನಲ್‌ಗಳಲ್ಲಿನ ಹೊಸ ಪ್ರವೃತ್ತಿಯು ಸ್ಕ್ರಾಲ್ ಬಫರ್‌ನ ಐಚ್ಛಿಕತೆಯಾಗಿದೆ. ಉದಾಹರಣೆಗೆ, st ಯಾವುದೇ ಸ್ಕ್ರಾಲ್ ಬಫರ್ ಹೊಂದಿಲ್ಲ; ಬಳಕೆದಾರರು tmux ಮತ್ತು ನಂತಹ ಟರ್ಮಿನಲ್ ಮಲ್ಟಿಪ್ಲೆಕ್ಸರ್ ಅನ್ನು ಬಳಸುತ್ತಾರೆ ಎಂದು ಊಹಿಸಲಾಗಿದೆ ಗ್ನು ಸ್ಕ್ರೀನ್.

ಅಲಾಕ್ರಿಟ್ಟಿಯು ಸಹ ಬ್ಯಾಕ್‌ಸ್ಕ್ರಾಲ್ ಬಫರ್‌ಗಳನ್ನು ಹೊಂದಿರುವುದಿಲ್ಲ, ಆದರೆ ಶೀಘ್ರದಲ್ಲೇ ಸೇರಿಸಲಾಗುವುದು ಬಳಕೆದಾರರಿಂದ ಈ ವಿಷಯದ ಕುರಿತು "ವಿಸ್ತೃತ ಪ್ರತಿಕ್ರಿಯೆ" ಯಿಂದ ಅದರ ಬೆಂಬಲ. ಈ ಅಪ್‌ಸ್ಟಾರ್ಟ್‌ಗಳ ಹೊರತಾಗಿ, ನಾನು ರಿವರ್ಸ್ ಸ್ಕ್ರೋಲಿಂಗ್‌ಗೆ ಬೆಂಬಲವನ್ನು ಕಂಡುಕೊಳ್ಳಬಹುದೆಂದು ನಾನು ಪರೀಕ್ಷಿಸಿದ ಪ್ರತಿಯೊಂದು ಟರ್ಮಿನಲ್.

ಉಪಮೊತ್ತಗಳು

ವಸ್ತುವಿನ ಎರಡನೇ ಭಾಗದಲ್ಲಿ (ಮೂಲದಲ್ಲಿ ಇವು ಎರಡು ವಿಭಿನ್ನ ಲೇಖನಗಳಾಗಿವೆ - ಅಂದಾಜು. ಲೇನ್) ನಾವು ಕಾರ್ಯಕ್ಷಮತೆ, ಮೆಮೊರಿ ಬಳಕೆ ಮತ್ತು ಸುಪ್ತತೆಯನ್ನು ಹೋಲಿಸುತ್ತೇವೆ. ಆದರೆ ಪ್ರಶ್ನೆಯಲ್ಲಿರುವ ಕೆಲವು ಟರ್ಮಿನಲ್‌ಗಳು ಗಂಭೀರ ನ್ಯೂನತೆಗಳನ್ನು ಹೊಂದಿವೆ ಎಂದು ನಾವು ಈಗಾಗಲೇ ನೋಡಬಹುದು. ಉದಾಹರಣೆಗೆ, ನಿಯಮಿತವಾಗಿ RTL ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ಬಳಕೆದಾರರು mlterm ಮತ್ತು pterm ಅನ್ನು ಪರಿಗಣಿಸಲು ಬಯಸಬಹುದು, ಏಕೆಂದರೆ ಅವರು ಇತರರಿಗಿಂತ ಒಂದೇ ರೀತಿಯ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುವಲ್ಲಿ ಉತ್ತಮರಾಗಿದ್ದಾರೆ. ಕನ್ಸೋಲ್ ಕೂಡ ಉತ್ತಮ ಪ್ರದರ್ಶನ ನೀಡಿದರು. RTL ಸ್ಕ್ರಿಪ್ಟ್‌ಗಳೊಂದಿಗೆ ಕೆಲಸ ಮಾಡದ ಬಳಕೆದಾರರು ಬೇರೆ ಯಾವುದನ್ನಾದರೂ ಆಯ್ಕೆ ಮಾಡಬಹುದು.

ದುರುದ್ದೇಶಪೂರಿತ ಕೋಡ್ ಅಳವಡಿಕೆಯ ವಿರುದ್ಧ ರಕ್ಷಣೆಯ ವಿಷಯದಲ್ಲಿ, ಈ ರೀತಿಯ ದಾಳಿಯ ವಿರುದ್ಧ ರಕ್ಷಣೆಯ ವಿಶೇಷ ಅನುಷ್ಠಾನದ ಕಾರಣ urxvt ಎದ್ದು ಕಾಣುತ್ತದೆ, ಇದು ನನಗೆ ಖಂಡಿತವಾಗಿಯೂ ಅನುಕೂಲಕರವಾಗಿದೆ. ಕೆಲವು ಘಂಟೆಗಳು ಮತ್ತು ಸೀಟಿಗಳನ್ನು ಹುಡುಕುತ್ತಿರುವವರಿಗೆ, ಕನ್ಸೋಲ್ ಒಂದು ನೋಟಕ್ಕೆ ಯೋಗ್ಯವಾಗಿದೆ. ಅಂತಿಮವಾಗಿ, VTE ಟರ್ಮಿನಲ್‌ಗಳಿಗೆ ಅತ್ಯುತ್ತಮವಾದ ಆಧಾರವಾಗಿದೆ ಎಂದು ಗಮನಿಸಬೇಕಾದ ಅಂಶವಾಗಿದೆ, ಇದು ಬಣ್ಣ ಬೆಂಬಲ, URL ಗುರುತಿಸುವಿಕೆ ಮತ್ತು ಮುಂತಾದವುಗಳನ್ನು ಖಾತರಿಪಡಿಸುತ್ತದೆ. ಮೊದಲ ನೋಟದಲ್ಲಿ, ನಿಮ್ಮ ನೆಚ್ಚಿನ ಪರಿಸರದೊಂದಿಗೆ ಬರುವ ಡೀಫಾಲ್ಟ್ ಟರ್ಮಿನಲ್ ಎಲ್ಲಾ ಅವಶ್ಯಕತೆಗಳನ್ನು ಪೂರೈಸಬಹುದು, ಆದರೆ ನಾವು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವವರೆಗೆ ಈ ಪ್ರಶ್ನೆಯನ್ನು ಮುಕ್ತವಾಗಿ ಬಿಡೋಣ.

ಸಂಭಾಷಣೆಯನ್ನು ಮುಂದುವರಿಸೋಣ


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

ವಿಳಂಬ

ಟರ್ಮಿನಲ್ ಕಾರ್ಯಕ್ಷಮತೆಯ ಸಂಪೂರ್ಣ ಅಧ್ಯಯನದ ನಂತರ, ಈ ವಿಷಯದಲ್ಲಿ ಪ್ರಮುಖ ನಿಯತಾಂಕವೆಂದರೆ ಲೇಟೆನ್ಸಿ (ಪಿಂಗ್) ಎಂದು ನಾನು ತೀರ್ಮಾನಕ್ಕೆ ಬಂದಿದ್ದೇನೆ. ಅವರ ಲೇಖನದಲ್ಲಿ "ನಾವು ಸಂತೋಷದಿಂದ ಮುದ್ರಿಸುತ್ತೇವೆ" ಪಾವೆಲ್ ಫ್ಯಾಟಿನ್ ವಿವಿಧ ಪಠ್ಯ ಸಂಪಾದಕರ ಸುಪ್ತತೆಯನ್ನು ನೋಡಿದರು ಮತ್ತು ಈ ನಿಟ್ಟಿನಲ್ಲಿ ಟರ್ಮಿನಲ್‌ಗಳು ವೇಗವಾದ ಪಠ್ಯ ಸಂಪಾದಕರಿಗಿಂತ ನಿಧಾನವಾಗಿರಬಹುದು ಎಂದು ಸುಳಿವು ನೀಡಿದರು. ಈ ಸುಳಿವು ಅಂತಿಮವಾಗಿ ನನ್ನ ಸ್ವಂತ ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸಲು ಮತ್ತು ಈ ಲೇಖನವನ್ನು ಬರೆಯಲು ಕಾರಣವಾಯಿತು.

ಆದರೆ ಸುಪ್ತತೆ ಎಂದರೇನು ಮತ್ತು ಅದು ಏಕೆ ಮುಖ್ಯವಾಗಿದೆ? ತನ್ನ ಲೇಖನದಲ್ಲಿ, ಫ್ಯಾಟಿನ್ ಇದನ್ನು "ಕೀಲಿಯನ್ನು ಒತ್ತುವ ಮತ್ತು ಅನುಗುಣವಾದ ಪರದೆಯ ನವೀಕರಣದ ನಡುವಿನ ವಿಳಂಬ" ಎಂದು ವ್ಯಾಖ್ಯಾನಿಸಿದ್ದಾರೆ ಮತ್ತು ಉಲ್ಲೇಖಿಸಿದ್ದಾರೆ "ಮಾನವ-ಕಂಪ್ಯೂಟರ್ ಪರಸ್ಪರ ಕ್ರಿಯೆಗೆ ಮಾರ್ಗದರ್ಶಿ", ಇದು ಹೇಳುತ್ತದೆ: "ಕಂಪ್ಯೂಟರ್ ಪ್ರದರ್ಶನದಲ್ಲಿ ದೃಶ್ಯ ಪ್ರತಿಕ್ರಿಯೆಯ ವಿಳಂಬವು ಟೈಪಿಸ್ಟ್ ನಡವಳಿಕೆ ಮತ್ತು ತೃಪ್ತಿಯ ಮೇಲೆ ಪ್ರಮುಖ ಪ್ರಭಾವ ಬೀರುತ್ತದೆ."

ಈ ಪಿಂಗ್ ಕೇವಲ ತೃಪ್ತಿಗಿಂತ ಆಳವಾದ ಪರಿಣಾಮಗಳನ್ನು ಹೊಂದಿದೆ ಎಂದು ಫ್ಯಾಟಿನ್ ವಿವರಿಸುತ್ತಾರೆ: "ಟೈಪಿಂಗ್ ನಿಧಾನವಾಗುತ್ತದೆ, ಹೆಚ್ಚಿನ ದೋಷಗಳು ಸಂಭವಿಸುತ್ತವೆ ಮತ್ತು ಕಣ್ಣು ಮತ್ತು ಸ್ನಾಯುವಿನ ಒತ್ತಡವು ಹೆಚ್ಚಾಗುತ್ತದೆ." ಬೇರೆ ರೀತಿಯಲ್ಲಿ ಹೇಳುವುದಾದರೆ, ದೊಡ್ಡ ವಿಳಂಬವು ಮುದ್ರಣದೋಷಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು ಮತ್ತು ಕಡಿಮೆ ಕೋಡ್ ಗುಣಮಟ್ಟವನ್ನು ಉಂಟುಮಾಡಬಹುದು, ಏಕೆಂದರೆ ಇದು ಮೆದುಳಿನ ಮೇಲೆ ಹೆಚ್ಚುವರಿ ಅರಿವಿನ ಹೊರೆಗೆ ಕಾರಣವಾಗುತ್ತದೆ. ಆದರೆ ಕೆಟ್ಟದೆಂದರೆ ಪಿಂಗ್ "ಕಣ್ಣು ಮತ್ತು ಸ್ನಾಯುವಿನ ಒತ್ತಡವನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ," ಇದು ಸೂಚಿಸುವಂತೆ ತೋರುತ್ತದೆ ಔದ್ಯೋಗಿಕ ಗಾಯಗಳ ಅಭಿವೃದ್ಧಿ ಭವಿಷ್ಯದಲ್ಲಿ (ಸ್ಪಷ್ಟವಾಗಿ, ಲೇಖಕ ಎಂದರೆ ಕಣ್ಣುಗಳ ಸ್ನಾಯುಗಳು, ಬೆನ್ನು, ತೋಳುಗಳು ಮತ್ತು, ಸಹಜವಾಗಿ, ದೃಷ್ಟಿ - ಅಂದಾಜು. ಲೇನ್) ಪುನರಾವರ್ತಿತ ಒತ್ತಡದಿಂದಾಗಿ.

ಈ ಕೆಲವು ಪರಿಣಾಮಗಳು ದೀರ್ಘಕಾಲದವರೆಗೆ ತಿಳಿದಿವೆ, ಮತ್ತು ಫಲಿತಾಂಶಗಳು ಸಂಶೋಧನೆ1976 ರಲ್ಲಿ ದಕ್ಷತಾಶಾಸ್ತ್ರದ ನಿಯತಕಾಲಿಕದಲ್ಲಿ ಮತ್ತೆ ಪ್ರಕಟವಾಯಿತು, 100 ಮಿಲಿಸೆಕೆಂಡ್‌ಗಳ ವಿಳಂಬವು "ಗಮನಾರ್ಹವಾಗಿ ಟೈಪಿಂಗ್ ವೇಗವನ್ನು ದುರ್ಬಲಗೊಳಿಸುತ್ತದೆ" ಎಂದು ಹೇಳಿದೆ. ತೀರಾ ಇತ್ತೀಚೆಗೆ, GNOME ಬಳಕೆದಾರ ಮಾರ್ಗದರ್ಶಿಯನ್ನು ಪರಿಚಯಿಸಲಾಯಿತು ಸ್ವೀಕಾರಾರ್ಹ ಪ್ರತಿಕ್ರಿಯೆ ಸಮಯ 10 ಮಿಲಿಸೆಕೆಂಡುಗಳಲ್ಲಿ, ಮತ್ತು ನೀವು ಮುಂದೆ ಹೋದರೆ, ನಂತರ ಮೈಕ್ರೋಸಾಫ್ಟ್ ಸಂಶೋಧನೆ 1 ಮಿಲಿಸೆಕೆಂಡ್ ಸೂಕ್ತವಾಗಿದೆ ಎಂದು ತೋರಿಸುತ್ತದೆ.

ಫಾಟಿನ್ ತನ್ನ ಪರೀಕ್ಷೆಗಳನ್ನು ಪಠ್ಯ ಸಂಪಾದಕರ ಮೇಲೆ ನಡೆಸಿದನು; ಎಂಬ ಪೋರ್ಟಬಲ್ ಉಪಕರಣವನ್ನು ಅವರು ರಚಿಸಿದರು ಟೈಪೊಮೀಟರ್, ನಾನು ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳಲ್ಲಿ ಪಿಂಗ್ ಅನ್ನು ಪರೀಕ್ಷಿಸಲು ಬಳಸಿದ್ದೇನೆ. ಪರೀಕ್ಷೆಯನ್ನು ಸಿಮ್ಯುಲೇಶನ್ ಮೋಡ್‌ನಲ್ಲಿ ನಡೆಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನೆನಪಿನಲ್ಲಿಡಿ: ವಾಸ್ತವದಲ್ಲಿ, ನಾವು ಇನ್‌ಪುಟ್ (ಕೀಬೋರ್ಡ್, ಯುಎಸ್‌ಬಿ ನಿಯಂತ್ರಕ, ಇತ್ಯಾದಿ) ಮತ್ತು ಔಟ್‌ಪುಟ್ (ವೀಡಿಯೊ ಕಾರ್ಡ್ ಬಫರ್, ಮಾನಿಟರ್) ಲೇಟೆನ್ಸಿ ಎರಡನ್ನೂ ಗಣನೆಗೆ ತೆಗೆದುಕೊಳ್ಳಬೇಕಾಗುತ್ತದೆ. ಫ್ಯಾಟಿನ್ ಪ್ರಕಾರ, ವಿಶಿಷ್ಟವಾದ ಸಂರಚನೆಗಳಲ್ಲಿ ಇದು ಸುಮಾರು 20 ms ಆಗಿದೆ. ನೀವು ಗೇಮಿಂಗ್ ಉಪಕರಣಗಳನ್ನು ಹೊಂದಿದ್ದರೆ, ನೀವು ಕೇವಲ 3 ಮಿಲಿಸೆಕೆಂಡುಗಳಲ್ಲಿ ಈ ಅಂಕಿಅಂಶವನ್ನು ಸಾಧಿಸಬಹುದು. ನಾವು ಈಗಾಗಲೇ ಅಂತಹ ವೇಗದ ಯಂತ್ರಾಂಶವನ್ನು ಹೊಂದಿರುವುದರಿಂದ, ಅಪ್ಲಿಕೇಶನ್ ತನ್ನದೇ ಆದ ಸುಪ್ತತೆಯನ್ನು ಸೇರಿಸಬೇಕಾಗಿಲ್ಲ. ಅಪ್ಲಿಕೇಶನ್ ಲೇಟೆನ್ಸಿಯನ್ನು 1 ಮಿಲಿಸೆಕೆಂಡ್‌ಗೆ ತರುವುದು ಅಥವಾ ಡಯಲಿಂಗ್ ಅನ್ನು ಸಾಧಿಸುವುದು ಫ್ಯಾಟಿನ್ ಗುರಿಯಾಗಿದೆ ಅಳೆಯಬಹುದಾದ ವಿಳಂಬ, ಹೇಗೆ ಒಳಗೆ ಇಂಟೆಲ್ಲಿಜೆ ಐಡಿಇಎ 15.

ನನ್ನ ಪ್ರಯೋಗವು ಅವನ ಪರೀಕ್ಷೆಗಳೊಂದಿಗೆ ಒಪ್ಪುತ್ತದೆ ಎಂದು ತೋರಿಸಲು ನನ್ನ ಅಳತೆಗಳ ಫಲಿತಾಂಶಗಳು ಮತ್ತು ಫ್ಯಾಟಿನ್ ಅವರ ಕೆಲವು ಫಲಿತಾಂಶಗಳು ಇಲ್ಲಿವೆ:

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

xterm ಮತ್ತು mlterm ನಂತಹ ಹಳೆಯ ಕಾರ್ಯಕ್ರಮಗಳ ಉತ್ತಮ ಪ್ರತಿಕ್ರಿಯೆ ಸಮಯ ನನಗೆ ಹೊಡೆದ ಮೊದಲ ವಿಷಯ. ಕೆಟ್ಟ ರಿಜಿಸ್ಟರ್ ಲೇಟೆನ್ಸಿಯೊಂದಿಗೆ (2,4 ms), ಅವರು ವೇಗವಾದ ಆಧುನಿಕ ಟರ್ಮಿನಲ್‌ಗಿಂತ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಿದರು (ಸ್ಟಕ್ಕೆ 10,6 ms). ಯಾವುದೇ ಆಧುನಿಕ ಟರ್ಮಿನಲ್ 10 ಮಿಲಿಸೆಕೆಂಡ್ ಮಿತಿಗಿಂತ ಕೆಳಗಿರುವುದಿಲ್ಲ. ನಿರ್ದಿಷ್ಟವಾಗಿ ಹೇಳುವುದಾದರೆ, 2017 ರಲ್ಲಿ ಅದರ ಮೊದಲ ವಿಮರ್ಶೆಯಿಂದ ಅದರ ಸ್ಕೋರ್‌ಗಳು ಸುಧಾರಿಸಿದ್ದರೂ "ವೇಗದ ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್ ಲಭ್ಯವಿದೆ" ಕ್ಲೈಮ್ ಅನ್ನು ಪೂರೈಸಲು ಅಲಾಕ್ರಿಟ್ಟಿ ವಿಫಲವಾಗಿದೆ. ವಾಸ್ತವವಾಗಿ, ಯೋಜನೆಯ ಲೇಖಕರು ಪರಿಸ್ಥಿತಿಯ ಅರಿವು ಮತ್ತು ಪ್ರದರ್ಶನವನ್ನು ಸುಧಾರಿಸಲು ಕೆಲಸ ಮಾಡುತ್ತಿವೆ. GTK3 ಅನ್ನು ಬಳಸುವ Vim ಅದರ GTK2 ಪ್ರತಿರೂಪಕ್ಕಿಂತ ನಿಧಾನವಾದ ಕ್ರಮವಾಗಿದೆ ಎಂದು ಸಹ ಗಮನಿಸಬೇಕು. ಇದರಿಂದ ನಾವು GTK3 ಹೆಚ್ಚುವರಿ ಸುಪ್ತತೆಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ ಎಂದು ತೀರ್ಮಾನಿಸಬಹುದು, ಮತ್ತು ಇದನ್ನು ಬಳಸುವ ಎಲ್ಲಾ ಇತರ ಟರ್ಮಿನಲ್‌ಗಳಲ್ಲಿ ಇದು ಪ್ರತಿಫಲಿಸುತ್ತದೆ (ಟರ್ಮಿನೇಟರ್, Xfce4 ಟರ್ಮಿನಲ್ ಮತ್ತು GNOME ಟರ್ಮಿನಲ್).

ಆದಾಗ್ಯೂ, ವ್ಯತ್ಯಾಸಗಳು ಕಣ್ಣಿಗೆ ಕಾಣಿಸದಿರಬಹುದು. ಫ್ಯಾಟಿನ್ ವಿವರಿಸಿದಂತೆ, "ನಿಮ್ಮ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರಲು ವಿಳಂಬದ ಬಗ್ಗೆ ನೀವು ತಿಳಿದಿರಬೇಕಾಗಿಲ್ಲ." ಪ್ರಮಾಣಿತ ವಿಚಲನದ ಬಗ್ಗೆಯೂ ಫ್ಯಾಟಿನ್ ಎಚ್ಚರಿಸಿದ್ದಾರೆ: "ಸುಪ್ತತೆಯಲ್ಲಿನ ಯಾವುದೇ ಅಡಚಣೆಗಳು (ಜಿಟ್ಟರ್) ಅವುಗಳ ಅನಿರೀಕ್ಷಿತತೆಯಿಂದಾಗಿ ಹೆಚ್ಚುವರಿ ಒತ್ತಡವನ್ನು ಉಂಟುಮಾಡುತ್ತವೆ."

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಮೇಲಿನ ಗ್ರಾಫ್ ಅನ್ನು ಶುದ್ಧ ಡೆಬಿಯನ್ 9 (ಸ್ಟ್ರೆಚ್) ಜೊತೆಗೆ ತೆಗೆದುಕೊಳ್ಳಲಾಗಿದೆ i3 ವಿಂಡೋ ಮ್ಯಾನೇಜರ್. ಈ ಪರಿಸರವು ಲೇಟೆನ್ಸಿ ಪರೀಕ್ಷೆಗಳಲ್ಲಿ ಉತ್ತಮ ಫಲಿತಾಂಶಗಳನ್ನು ನೀಡುತ್ತದೆ. ಅದು ಬದಲಾದಂತೆ, GNOME ಎಲ್ಲಾ ಅಳತೆಗಳಿಗಾಗಿ ಹೆಚ್ಚುವರಿ 20 ms ಪಿಂಗ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ಇನ್ಪುಟ್ ಈವೆಂಟ್ಗಳ ಸಿಂಕ್ರೊನಸ್ ಪ್ರಕ್ರಿಯೆಯೊಂದಿಗೆ ಕಾರ್ಯಕ್ರಮಗಳ ಉಪಸ್ಥಿತಿಯು ಇದಕ್ಕೆ ಸಂಭವನೀಯ ವಿವರಣೆಯಾಗಿದೆ. ಅಂತಹ ಪ್ರಕರಣಕ್ಕೆ ಫ್ಯಾಟಿನ್ ಒಂದು ಉದಾಹರಣೆಯನ್ನು ನೀಡುತ್ತಾನೆ ವರ್ಕ್‌ರೇವ್, ಇದು ಎಲ್ಲಾ ಇನ್‌ಪುಟ್ ಈವೆಂಟ್‌ಗಳನ್ನು ಸಿಂಕ್ರೊನಸ್ ಆಗಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವ ಮೂಲಕ ವಿಳಂಬವನ್ನು ಸೇರಿಸುತ್ತದೆ. ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ, GNOME ಸಹ ವಿಂಡೋ ಮ್ಯಾನೇಜರ್‌ನೊಂದಿಗೆ ಬರುತ್ತದೆ ಮುಟ್ಟರ್, ಇದು ಬಫರಿಂಗ್‌ನ ಹೆಚ್ಚುವರಿ ಪದರವನ್ನು ರಚಿಸುತ್ತದೆ, ಇದು ಪಿಂಗ್ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ ಮತ್ತು ಕನಿಷ್ಠ 8 ಮಿಲಿಸೆಕೆಂಡ್‌ಗಳ ಸುಪ್ತತೆಯನ್ನು ಸೇರಿಸುತ್ತದೆ.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಸ್ಕ್ರಾಲ್ ವೇಗ

ಮುಂದಿನ ಪರೀಕ್ಷೆಯು ಸಾಂಪ್ರದಾಯಿಕ "ವೇಗ" ಅಥವಾ "ಬ್ಯಾಂಡ್‌ವಿಡ್ತ್" ಪರೀಕ್ಷೆಯಾಗಿದೆ, ಇದು ಪರದೆಯ ಮೇಲೆ ದೊಡ್ಡ ಪ್ರಮಾಣದ ಪಠ್ಯವನ್ನು ಪ್ರದರ್ಶಿಸುವಾಗ ಟರ್ಮಿನಲ್ ಎಷ್ಟು ಬೇಗನೆ ಪುಟವನ್ನು ಸ್ಕ್ರಾಲ್ ಮಾಡಬಹುದು ಎಂಬುದನ್ನು ಅಳೆಯುತ್ತದೆ. ಪರೀಕ್ಷೆಯ ಯಂತ್ರಶಾಸ್ತ್ರವು ಬದಲಾಗುತ್ತದೆ; ಮೂಲ ಪರೀಕ್ಷೆಯು seq ಆಜ್ಞೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಅದೇ ಪಠ್ಯ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಸರಳವಾಗಿ ರಚಿಸುವುದು. ಇತರ ಪರೀಕ್ಷೆಗಳಲ್ಲಿ ಥಾಮಸ್ ಇ. ಡಿಕ್ಕಿಯ (ಎಕ್ಸ್‌ಟರ್ಮ್ ಮೆಂಟೇನರ್) ಪರೀಕ್ಷೆಯು ಪುನರಾವರ್ತಿತವಾಗಿರುತ್ತದೆ terminfo.src ಫೈಲ್ ಅನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಲಾಗಿದೆ. ಟರ್ಮಿನಲ್ ಕಾರ್ಯಕ್ಷಮತೆಯ ಮತ್ತೊಂದು ವಿಮರ್ಶೆಯಲ್ಲಿ ಡೆನ್ ಲುಯು ಯಾದೃಚ್ಛಿಕ ಬೈಟ್‌ಗಳ ಬೇಸ್32 ಎನ್‌ಕೋಡ್ ಮಾಡಿದ ಸ್ಟ್ರಿಂಗ್ ಅನ್ನು ಬಳಸುತ್ತದೆ, ಇದು ಕ್ಯಾಟ್ ಅನ್ನು ಬಳಸಿಕೊಂಡು ಟರ್ಮಿನಲ್‌ಗೆ ಔಟ್‌ಪುಟ್ ಆಗಿದೆ. ಲುಯು ಅಂತಹ ಪರೀಕ್ಷೆಯನ್ನು "ಒಬ್ಬರು ಊಹಿಸಬಹುದಾದಷ್ಟು ಅನುಪಯುಕ್ತ ಮಾನದಂಡ" ಎಂದು ಪರಿಗಣಿಸುತ್ತಾರೆ ಮತ್ತು ಬದಲಿಗೆ ಟರ್ಮಿನಲ್ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಪ್ರಾಥಮಿಕ ಮೆಟ್ರಿಕ್ ಆಗಿ ಬಳಸಲು ಸೂಚಿಸುತ್ತಾರೆ. ಡಿಕೆಶಿ ತನ್ನ ಪರೀಕ್ಷೆಯನ್ನು ದಾರಿತಪ್ಪಿಸುವಂತಿದೆ. ಆದಾಗ್ಯೂ, ಟರ್ಮಿನಲ್ ವಿಂಡೋ ಬ್ಯಾಂಡ್‌ವಿಡ್ತ್ ಸಮಸ್ಯೆಯಾಗಿರಬಹುದು ಎಂದು ಇಬ್ಬರೂ ಲೇಖಕರು ಒಪ್ಪಿಕೊಂಡಿದ್ದಾರೆ. ದೊಡ್ಡ ಫೈಲ್‌ಗಳನ್ನು ಪ್ರದರ್ಶಿಸುವಾಗ ಲುಯು Emacs Eshell ಘನೀಕರಿಸುವಿಕೆಯನ್ನು ಕಂಡುಹಿಡಿದರು ಮತ್ತು xtrerm ನ ದೃಷ್ಟಿ ನಿಧಾನತೆಯನ್ನು ತೊಡೆದುಹಾಕಲು ಡಿಕಿ ಟರ್ಮಿನಲ್ ಅನ್ನು ಆಪ್ಟಿಮೈಸ್ ಮಾಡಿದರು. ಆದ್ದರಿಂದ ಈ ಪರೀಕ್ಷೆಗೆ ಇನ್ನೂ ಕೆಲವು ಅರ್ಹತೆ ಇದೆ, ಆದರೆ ರೆಂಡರಿಂಗ್ ಪ್ರಕ್ರಿಯೆಯು ಟರ್ಮಿನಲ್‌ನಿಂದ ಟರ್ಮಿನಲ್‌ಗೆ ತುಂಬಾ ವಿಭಿನ್ನವಾಗಿರುವುದರಿಂದ, ಇತರ ನಿಯತಾಂಕಗಳನ್ನು ಪರೀಕ್ಷಿಸಲು ಇದನ್ನು ಪರೀಕ್ಷಾ ಘಟಕವಾಗಿಯೂ ಬಳಸಬಹುದು.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಇಲ್ಲಿ ನಾವು rxvt ಮತ್ತು st ಸ್ಪರ್ಧೆಯ ಮುಂದೆ ಪುಲ್ ಅನ್ನು ನೋಡುತ್ತೇವೆ, ಅದರ ನಂತರ ಹೆಚ್ಚು ಹೊಸ ಅಲಾಕ್ರಿಟ್ಟಿಯನ್ನು ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಮುಂದಿನದು Xfce (VTE ಕುಟುಂಬ) ಮತ್ತು ಕನ್ಸೋಲ್, ಇದು ಸುಮಾರು ಎರಡು ಪಟ್ಟು ವೇಗವಾಗಿರುತ್ತದೆ. ಕೊನೆಯದು xterm, ಇದು rxvt ಗಿಂತ ಐದು ಪಟ್ಟು ನಿಧಾನವಾಗಿರುತ್ತದೆ. ಪರೀಕ್ಷೆಯ ಸಮಯದಲ್ಲಿ, xterm ಸಹ ಸಾಕಷ್ಟು ಅಲೆಗಳನ್ನು ಉಂಟುಮಾಡಿತು, ಪಠ್ಯವನ್ನು ರವಾನಿಸುವುದು ಒಂದೇ ಸಾಲಿನಲ್ಲಿದ್ದರೂ ಸಹ ಅದನ್ನು ನೋಡಲು ಕಷ್ಟವಾಗುತ್ತದೆ. ಕನ್ಸೋಲ್ ವೇಗವಾಗಿತ್ತು, ಆದರೆ ಕೆಲವೊಮ್ಮೆ ಇದು ಟ್ರಿಕಿ ಆಗಿತ್ತು: ಪ್ರದರ್ಶನವು ಕಾಲಕಾಲಕ್ಕೆ ಫ್ರೀಜ್ ಆಗುತ್ತದೆ, ಭಾಗಶಃ ಪಠ್ಯವನ್ನು ತೋರಿಸುತ್ತದೆ ಅಥವಾ ಅದನ್ನು ತೋರಿಸುವುದಿಲ್ಲ. st, Alacritty, ಮತ್ತು rxvt ಸೇರಿದಂತೆ ಇತರ ಟರ್ಮಿನಲ್‌ಗಳು ತಂತಿಗಳನ್ನು ಸ್ಪಷ್ಟವಾಗಿ ಪ್ರದರ್ಶಿಸುತ್ತವೆ.

ವಿಭಿನ್ನ ಟರ್ಮಿನಲ್‌ಗಳಲ್ಲಿನ ಸ್ಕ್ರಾಲ್ ಬಫರ್‌ಗಳ ವಿನ್ಯಾಸದಿಂದಾಗಿ ಕಾರ್ಯಕ್ಷಮತೆಯ ವ್ಯತ್ಯಾಸಗಳು ಉಂಟಾಗುತ್ತವೆ ಎಂದು ಡಿಕ್ಕಿ ವಿವರಿಸುತ್ತಾರೆ. ನಿರ್ದಿಷ್ಟವಾಗಿ, ಅವರು rxvt ಮತ್ತು ಇತರ ಟರ್ಮಿನಲ್‌ಗಳನ್ನು "ಸಾಮಾನ್ಯ ನಿಯಮಗಳನ್ನು ಅನುಸರಿಸುತ್ತಿಲ್ಲ" ಎಂದು ಆರೋಪಿಸುತ್ತಾರೆ:

“xterm ಗಿಂತ ಭಿನ್ನವಾಗಿ, rxvt ಎಲ್ಲಾ ನವೀಕರಣಗಳನ್ನು ಪ್ರದರ್ಶಿಸಲು ಪ್ರಯತ್ನಿಸಲಿಲ್ಲ. ಅದು ಹಿಂದೆ ಬಿದ್ದರೆ, ಅದು ಹಿಡಿಯಲು ಕೆಲವು ನವೀಕರಣಗಳನ್ನು ನಿರಾಕರಿಸುತ್ತದೆ. ಇದು ಆಂತರಿಕ ಮೆಮೊರಿ ಸಂಘಟನೆಗಿಂತ ಸ್ಪಷ್ಟವಾದ ಸ್ಕ್ರೋಲಿಂಗ್ ವೇಗದ ಮೇಲೆ ಹೆಚ್ಚಿನ ಪ್ರಭಾವ ಬೀರಿತು. ಒಂದು ನ್ಯೂನತೆಯೆಂದರೆ ASCII ಅನಿಮೇಷನ್ ಸ್ವಲ್ಪಮಟ್ಟಿಗೆ ನಿಖರವಾಗಿಲ್ಲ."

ಈ ಗ್ರಹಿಸಿದ xterm ಆಲಸ್ಯವನ್ನು ಸರಿಪಡಿಸಲು, Dickey ಸಂಪನ್ಮೂಲವನ್ನು ಬಳಸಲು ಸಲಹೆ ನೀಡುತ್ತಾರೆ ವೇಗವಾಗಿ ಸ್ಕ್ರೋಲ್ ಮಾಡಿ, ಹರಿವನ್ನು ಮುಂದುವರಿಸಲು ಕೆಲವು ಪರದೆಯ ನವೀಕರಣಗಳನ್ನು ತ್ಯಜಿಸಲು xterm ಗೆ ಅವಕಾಶ ನೀಡುತ್ತದೆ. ಫಾಸ್ಟ್‌ಸ್ಕ್ರೋಲ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸುತ್ತದೆ ಮತ್ತು xterm ಅನ್ನು rxvt ಗೆ ಸಮನಾಗಿ ತರುತ್ತದೆ ಎಂದು ನನ್ನ ಪರೀಕ್ಷೆಗಳು ಖಚಿತಪಡಿಸುತ್ತವೆ. ಆದಾಗ್ಯೂ, ಡಿಕ್ಕಿ ಸ್ವತಃ ವಿವರಿಸಿದಂತೆ ಇದು ಹೆಚ್ಚು ಒರಟು ಊರುಗೋಲಾಗಿದೆ: "ಕೆಲವೊಮ್ಮೆ xterm - ಕನ್ಸೋಲ್ ನಂತಹ - ಕೆಲವು ತೆಗೆದುಹಾಕಲ್ಪಟ್ಟ ನಂತರ ಹೊಸ ಪರದೆಯ ನವೀಕರಣಗಳಿಗಾಗಿ ಕಾಯುತ್ತಿರುವಾಗ ಸ್ಥಗಿತಗೊಂಡಂತೆ ತೋರುತ್ತದೆ." ಈ ಧಾಟಿಯಲ್ಲಿ, ಇತರ ಟರ್ಮಿನಲ್‌ಗಳು ವೇಗ ಮತ್ತು ಪ್ರದರ್ಶನದ ಸಮಗ್ರತೆಯ ನಡುವೆ ಉತ್ತಮ ಹೊಂದಾಣಿಕೆಯನ್ನು ಕಂಡುಕೊಂಡಿವೆ ಎಂದು ತೋರುತ್ತದೆ.

ಸಂಪನ್ಮೂಲ ಬಳಕೆ

ಸ್ಕ್ರೋಲಿಂಗ್ ವೇಗವನ್ನು ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೆಟ್ರಿಕ್ ಎಂದು ಪರಿಗಣಿಸಲು ಇದು ಅರ್ಥಪೂರ್ಣವಾಗಿದೆಯೇ ಎಂಬುದರ ಹೊರತಾಗಿಯೂ, ಈ ಪರೀಕ್ಷೆಯು ನಮಗೆ ಟರ್ಮಿನಲ್‌ಗಳಲ್ಲಿ ಲೋಡ್ ಅನ್ನು ಅನುಕರಿಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಇದು ಮೆಮೊರಿ ಅಥವಾ ಡಿಸ್ಕ್ ಬಳಕೆಯಂತಹ ಇತರ ನಿಯತಾಂಕಗಳನ್ನು ಅಳೆಯಲು ನಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ನಿಗದಿತ ಪರೀಕ್ಷೆಯನ್ನು ನಡೆಸುವ ಮೂಲಕ ಮೆಟ್ರಿಕ್‌ಗಳನ್ನು ಪಡೆಯಲಾಗಿದೆ ಅನುಕ್ರಮ ಪೈಥಾನ್ ಪ್ರಕ್ರಿಯೆ ಮಾನಿಟರಿಂಗ್ ಅಡಿಯಲ್ಲಿ. ಅವರು ಮೀಟರ್ ಡೇಟಾವನ್ನು ಸಂಗ್ರಹಿಸಿದರು ಗೆಟ್ರುಸೇಜ್() ಗೆ ru_maxrss, ಮೊತ್ತ ru_oublock и ru_inblock ಮತ್ತು ಸರಳ ಟೈಮರ್.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ಈ ಪರೀಕ್ಷೆಯಲ್ಲಿ, ST 8 MB ಯ ಕಡಿಮೆ ಸರಾಸರಿ ಮೆಮೊರಿ ಬಳಕೆಯೊಂದಿಗೆ ಮೊದಲ ಸ್ಥಾನವನ್ನು ಪಡೆಯುತ್ತದೆ, ಇದು ವಿನ್ಯಾಸದ ಮುಖ್ಯ ಕಲ್ಪನೆಯು ಸರಳತೆಯಾಗಿದೆ ಎಂದು ಪರಿಗಣಿಸಿದರೆ ಆಶ್ಚರ್ಯವೇನಿಲ್ಲ. mlterm, xterm ಮತ್ತು rxvt ಸ್ವಲ್ಪ ಹೆಚ್ಚು ಸೇವಿಸುತ್ತವೆ - ಸುಮಾರು 12 MB. ಮತ್ತೊಂದು ಗಮನಾರ್ಹ ಫಲಿತಾಂಶವೆಂದರೆ ಅಲಾಕ್ರಿಟ್ಟಿ, ಇದು ಚಲಾಯಿಸಲು 30 MB ಅಗತ್ಯವಿದೆ. ನಂತರ VTE ಕುಟುಂಬದ ಟರ್ಮಿನಲ್ಗಳು 40 ರಿಂದ 60 MB ವರೆಗಿನ ಅಂಕಿಅಂಶಗಳೊಂದಿಗೆ ಇವೆ, ಇದು ಸಾಕಷ್ಟು ಹೆಚ್ಚು. ಈ ಟರ್ಮಿನಲ್‌ಗಳು ಉನ್ನತ ಮಟ್ಟದ ಗ್ರಂಥಾಲಯಗಳನ್ನು ಬಳಸುತ್ತವೆ ಎಂಬ ಅಂಶದಿಂದ ಈ ಬಳಕೆಯನ್ನು ವಿವರಿಸಬಹುದು, ಉದಾಹರಣೆಗೆ, GTK. ಕನ್ಸೋಲ್ ಪರೀಕ್ಷೆಯ ಸಮಯದಲ್ಲಿ 65MB ಮೆಮೊರಿ ಬಳಕೆಯೊಂದಿಗೆ ಕೊನೆಯದಾಗಿ ಬರುತ್ತದೆ, ಆದಾಗ್ಯೂ ಇದು ಅದರ ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ವೈಶಿಷ್ಟ್ಯಗಳಿಂದ ಸಮರ್ಥಿಸಲ್ಪಡುತ್ತದೆ.

ಹತ್ತು ವರ್ಷಗಳ ಹಿಂದೆ ಪಡೆದ ಹಿಂದಿನ ಫಲಿತಾಂಶಗಳಿಗೆ ಹೋಲಿಸಿದರೆ, ಎಲ್ಲಾ ಪ್ರೋಗ್ರಾಂಗಳು ಗಮನಾರ್ಹವಾಗಿ ಹೆಚ್ಚು ಮೆಮೊರಿಯನ್ನು ಬಳಸಲಾರಂಭಿಸಿದವು. Xterm ಗೆ 4 MB ಅಗತ್ಯವಿತ್ತು, ಆದರೆ ಈಗ ಪ್ರಾರಂಭದಲ್ಲಿ 15 MB ಅಗತ್ಯವಿದೆ. rxvt ಗಾಗಿ ಬಳಕೆಯಲ್ಲಿ ಇದೇ ರೀತಿಯ ಹೆಚ್ಚಳವಿದೆ, ಇದಕ್ಕೆ ಈಗ ಬಾಕ್ಸ್‌ನಿಂದ 16 MB ಅಗತ್ಯವಿದೆ. Xfce ಟರ್ಮಿನಲ್ 34 MB ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಇದು ಮೊದಲಿಗಿಂತ ಮೂರು ಪಟ್ಟು ದೊಡ್ಡದಾಗಿದೆ, ಆದರೆ GNOME ಟರ್ಮಿನಲ್‌ಗೆ ಕೇವಲ 20 MB ಅಗತ್ಯವಿದೆ. ಸಹಜವಾಗಿ, ಎಲ್ಲಾ ಹಿಂದಿನ ಪರೀಕ್ಷೆಗಳನ್ನು 32-ಬಿಟ್ ಆರ್ಕಿಟೆಕ್ಚರ್ನಲ್ಲಿ ನಡೆಸಲಾಯಿತು. LCA 2012 ರಸ್ಟಿ ರಸ್ಸೆಲ್ ನಲ್ಲಿ ನಾನು ಹೇಳಿದರು, ಮೆಮೊರಿ ಬಳಕೆಯ ಹೆಚ್ಚಳವನ್ನು ವಿವರಿಸಲು ಇನ್ನೂ ಹಲವು ಸೂಕ್ಷ್ಮ ಕಾರಣಗಳಿವೆ. ಅದನ್ನು ಹೇಳಿದ ನಂತರ, ನಾವು ಈಗ ಗಿಗಾಬೈಟ್‌ಗಳ ಸ್ಮರಣೆಯನ್ನು ಹೊಂದಿರುವ ಸಮಯದಲ್ಲಿ ವಾಸಿಸುತ್ತಿದ್ದೇವೆ, ಆದ್ದರಿಂದ ನಾವು ಹೇಗಾದರೂ ನಿರ್ವಹಿಸುತ್ತೇವೆ.

ಆದಾಗ್ಯೂ, ಟರ್ಮಿನಲ್‌ನಂತೆ ಮೂಲಭೂತವಾದ ಯಾವುದನ್ನಾದರೂ ಹೆಚ್ಚಿನ ಮೆಮೊರಿಯನ್ನು ನಿಯೋಜಿಸುವುದು ಸಂಪನ್ಮೂಲಗಳ ವ್ಯರ್ಥ ಎಂದು ನನಗೆ ಸಹಾಯ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ. ಈ ಪ್ರೋಗ್ರಾಮ್‌ಗಳು ಚಿಕ್ಕದಕ್ಕಿಂತ ಚಿಕ್ಕದಾಗಿರಬೇಕು, ಯಾವುದೇ "ಬಾಕ್ಸ್", ಶೂಬಾಕ್ಸ್‌ನಲ್ಲಿಯೂ ಸಹ ಚಲಾಯಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ, ನಾವು ಎಂದಾದರೂ ಅವುಗಳು ಲಿನಕ್ಸ್ ಸಿಸ್ಟಮ್‌ಗಳೊಂದಿಗೆ ಸಜ್ಜುಗೊಳ್ಳಬೇಕಾದ ಹಂತಕ್ಕೆ ಬಂದರೆ (ಮತ್ತು ಅದು ಹಾಗೆ ಆಗುತ್ತದೆ ಎಂದು ನಿಮಗೆ ತಿಳಿದಿದೆ. ) ಆದರೆ ಈ ಸಂಖ್ಯೆಗಳೊಂದಿಗೆ, ಕೆಲವು ಹಗುರವಾದ ಮತ್ತು ಅತ್ಯಂತ ಸೀಮಿತ ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಹೊರತುಪಡಿಸಿ ಬಹು ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ಚಾಲನೆಯಲ್ಲಿರುವ ಯಾವುದೇ ಪರಿಸರದಲ್ಲಿ ಭವಿಷ್ಯದಲ್ಲಿ ಮೆಮೊರಿ ಬಳಕೆ ಸಮಸ್ಯೆಯಾಗುತ್ತದೆ. ಇದನ್ನು ಸರಿದೂಗಿಸಲು, GNOME ಟರ್ಮಿನಲ್, Konsole, urxvt, ಟರ್ಮಿನೇಟರ್ ಮತ್ತು Xfce ಟರ್ಮಿನಲ್‌ಗಳು ಡೀಮನ್ ಮೋಡ್ ಅನ್ನು ಹೊಂದಿದ್ದು ಅದು ಒಂದೇ ಪ್ರಕ್ರಿಯೆಯ ಮೂಲಕ ಬಹು ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ನಿಯಂತ್ರಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ, ಅವುಗಳ ಮೆಮೊರಿ ಬಳಕೆಯನ್ನು ಸೀಮಿತಗೊಳಿಸುತ್ತದೆ.

ಟರ್ಮಿನಲ್ ಎಮ್ಯುಲೇಟರ್‌ಗಳ ಅವಲೋಕನ

ನನ್ನ ಪರೀಕ್ಷೆಗಳ ಸಮಯದಲ್ಲಿ, ಡಿಸ್ಕ್ ರೀಡ್-ರೈಟ್ ಬಗ್ಗೆ ನಾನು ಮತ್ತೊಂದು ಅನಿರೀಕ್ಷಿತ ಫಲಿತಾಂಶಕ್ಕೆ ಬಂದಿದ್ದೇನೆ: ನಾನು ಇಲ್ಲಿ ಏನನ್ನೂ ನೋಡುವುದಿಲ್ಲ ಎಂದು ನಿರೀಕ್ಷಿಸಿದೆ, ಆದರೆ ಕೆಲವು ಟರ್ಮಿನಲ್‌ಗಳು ಡಿಸ್ಕ್‌ಗೆ ಹೆಚ್ಚು ದೊಡ್ಡ ಡೇಟಾವನ್ನು ಬರೆಯುತ್ತವೆ ಎಂದು ತಿಳಿದುಬಂದಿದೆ. ಆದ್ದರಿಂದ, VTE ಲೈಬ್ರರಿಯು ವಾಸ್ತವವಾಗಿ ಡಿಸ್ಕ್ನಲ್ಲಿ ಸ್ಕ್ರಾಲ್ ಬಫರ್ ಅನ್ನು ಇರಿಸುತ್ತದೆ (ಈ ವೈಶಿಷ್ಟ್ಯ 2010 ರಲ್ಲಿ ಮತ್ತೆ ಗಮನಿಸಲಾಯಿತು, ಮತ್ತು ಇದು ಇನ್ನೂ ನಡೆಯುತ್ತಿದೆ). ಆದರೆ ಹಳೆಯ ಅಳವಡಿಕೆಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿ, ಈಗ ಕನಿಷ್ಠ ಈ ಡೇಟಾವನ್ನು AES256 GCM ಬಳಸಿ ಎನ್‌ಕ್ರಿಪ್ಟ್ ಮಾಡಲಾಗಿದೆ (ಆವೃತ್ತಿ 0.39.2 ರಿಂದ) ಆದರೆ ಒಂದು ಸಮಂಜಸವಾದ ಪ್ರಶ್ನೆ ಉದ್ಭವಿಸುತ್ತದೆ: VTE ಲೈಬ್ರರಿಯ ವಿಶೇಷತೆ ಏನು ಎಂದರೆ ಅದು ಅನುಷ್ಠಾನಕ್ಕೆ ಅಂತಹ ಪ್ರಮಾಣಿತವಲ್ಲದ ವಿಧಾನದ ಅಗತ್ಯವಿದೆ ...

ತೀರ್ಮಾನಕ್ಕೆ

ಲೇಖನದ ಮೊದಲ ಭಾಗದಲ್ಲಿ, ವಿಟಿಇ-ಆಧಾರಿತ ಟರ್ಮಿನಲ್‌ಗಳು ಉತ್ತಮ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಹೊಂದಿವೆ ಎಂದು ನಾವು ಕಂಡುಕೊಂಡಿದ್ದೇವೆ, ಆದರೆ ಈಗ ಇದು ಕೆಲವು ಕಾರ್ಯಕ್ಷಮತೆಯ ವೆಚ್ಚಗಳೊಂದಿಗೆ ಬರುತ್ತದೆ ಎಂದು ನಾವು ನೋಡುತ್ತೇವೆ. ಈಗ ಮೆಮೊರಿ ಸಮಸ್ಯೆಯಲ್ಲ ಏಕೆಂದರೆ ಎಲ್ಲಾ VTE ಟರ್ಮಿನಲ್‌ಗಳನ್ನು ಡೀಮನ್ ಪ್ರಕ್ರಿಯೆಯ ಮೂಲಕ ನಿಯಂತ್ರಿಸಬಹುದು, ಅದು ಅವರ ಹಸಿವನ್ನು ಮಿತಿಗೊಳಿಸುತ್ತದೆ. ಆದಾಗ್ಯೂ, RAM ಮತ್ತು ಕರ್ನಲ್ ಬಫರ್‌ಗಳ ಮೊತ್ತದ ಮೇಲೆ ಭೌತಿಕ ಮಿತಿಗಳನ್ನು ಹೊಂದಿರುವ ಹಳೆಯ ವ್ಯವಸ್ಥೆಗಳಿಗೆ ಇನ್ನೂ ಟರ್ಮಿನಲ್‌ಗಳ ಹಿಂದಿನ ಆವೃತ್ತಿಗಳು ಬೇಕಾಗಬಹುದು, ಏಕೆಂದರೆ ಅವುಗಳು ಗಮನಾರ್ಹವಾಗಿ ಕಡಿಮೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಬಳಸುತ್ತವೆ. VTE ಟರ್ಮಿನಲ್‌ಗಳು ಥ್ರೋಪುಟ್ (ಸ್ಕ್ರೋಲಿಂಗ್) ಪರೀಕ್ಷೆಗಳಲ್ಲಿ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಿದರೂ, ಅವುಗಳ ಡಿಸ್‌ಪ್ಲೇ ಲೇಟೆನ್ಸಿ GNOME ಯೂಸರ್ ಗೈಡ್‌ನಲ್ಲಿ ಹೊಂದಿಸಲಾದ ಮಿತಿಗಿಂತ ಮೇಲಿರುತ್ತದೆ. VTE ಡೆವಲಪರ್‌ಗಳು ಇದನ್ನು ಬಹುಶಃ ಗಣನೆಗೆ ತೆಗೆದುಕೊಳ್ಳಬೇಕು. ಅನನುಭವಿ ಲಿನಕ್ಸ್ ಬಳಕೆದಾರರಿಗೆ ಸಹ ಟರ್ಮಿನಲ್ ಅನ್ನು ಎದುರಿಸುವುದು ಅನಿವಾರ್ಯವಾಗಿದೆ ಎಂದು ನಾವು ಗಣನೆಗೆ ತೆಗೆದುಕೊಂಡರೆ, ಅವರು ಅದನ್ನು ಹೆಚ್ಚು ಬಳಕೆದಾರ ಸ್ನೇಹಿಯಾಗಿಸಬಹುದು. ಅನುಭವಿ ಗೀಕ್‌ಗಳಿಗೆ, ಡೀಫಾಲ್ಟ್ ಟರ್ಮಿನಲ್‌ನಿಂದ ಬದಲಾಯಿಸುವುದು ಕಡಿಮೆ ಕಣ್ಣಿನ ಆಯಾಸ ಮತ್ತು ದೀರ್ಘಾವಧಿಯ ಕೆಲಸದ ಅವಧಿಯ ಕಾರಣದಿಂದಾಗಿ ಭವಿಷ್ಯದ ಕೆಲಸ-ಸಂಬಂಧಿತ ಗಾಯಗಳು ಮತ್ತು ಅನಾರೋಗ್ಯವನ್ನು ತಪ್ಪಿಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಸಹ ಅರ್ಥೈಸಬಹುದು. ದುರದೃಷ್ಟವಶಾತ್, ಹಳೆಯ xterm ಮತ್ತು mlterm ಮಾತ್ರ ನಮ್ಮನ್ನು 10 ಮಿಲಿಸೆಕೆಂಡ್‌ಗಳ ಮ್ಯಾಜಿಕ್ ಪಿಂಗ್ ಮಿತಿಗೆ ತರುತ್ತದೆ, ಇದು ಅನೇಕರಿಗೆ ಸ್ವೀಕಾರಾರ್ಹವಲ್ಲ.

ಬೆಂಚ್‌ಮಾರ್ಕ್ ಮಾಪನಗಳು ಲಿನಕ್ಸ್ ಗ್ರಾಫಿಕಲ್ ಪರಿಸರದ ಅಭಿವೃದ್ಧಿಯಿಂದಾಗಿ, ಡೆವಲಪರ್‌ಗಳು ಹಲವಾರು ರಾಜಿ ಮಾಡಿಕೊಳ್ಳಬೇಕಾಯಿತು ಎಂದು ತೋರಿಸಿದೆ. ಕೆಲವು ಬಳಕೆದಾರರು ಸಾಮಾನ್ಯ ವಿಂಡೋ ಮ್ಯಾನೇಜರ್‌ಗಳನ್ನು ನೋಡಲು ಬಯಸಬಹುದು ಏಕೆಂದರೆ ಅವುಗಳು ಗಮನಾರ್ಹವಾದ ಪಿಂಗ್ ಕಡಿತವನ್ನು ಒದಗಿಸುತ್ತವೆ. ದುರದೃಷ್ಟವಶಾತ್, ವೇಲ್ಯಾಂಡ್‌ಗೆ ಸುಪ್ತತೆಯನ್ನು ಅಳೆಯಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ: ನಾನು ಬಳಸಿದ ಟೈಪೊಮೀಟರ್ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ವೇಲ್ಯಾಂಡ್ ಅನ್ನು ತಡೆಗಟ್ಟಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ: ಇತರ ಕಿಟಕಿಗಳ ಮೇಲೆ ಬೇಹುಗಾರಿಕೆ. ವೇಲ್ಯಾಂಡ್ ಸಂಯೋಜನೆಯು X.org ಗಿಂತ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ ಮತ್ತು ಭವಿಷ್ಯದಲ್ಲಿ ಯಾರಾದರೂ ಈ ಪರಿಸರದಲ್ಲಿ ಸುಪ್ತತೆಯನ್ನು ಅಳೆಯಲು ಒಂದು ಮಾರ್ಗವನ್ನು ಕಂಡುಕೊಳ್ಳುತ್ತಾರೆ ಎಂದು ನಾನು ಭಾವಿಸುತ್ತೇನೆ.

ಮೂಲ: www.habr.com

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