ವೆಸ್ಟರ್ನ್ ಡಿಜಿಟಲ್ ಈಗಾಗಲೇ ರಸ್ಟ್‌ನಲ್ಲಿ ಬರೆದ NVMe ಡ್ರೈವರ್‌ನಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದೆ

RustLinux

ಲಿನಕ್ಸ್‌ನಲ್ಲಿ ರಸ್ಟ್‌ನ ಏಕೀಕರಣವು ಸಮುದಾಯ ಮತ್ತು ಡೆವಲಪರ್‌ಗಳಿಂದ ಹೆಚ್ಚಿನ ಮಟ್ಟದ ಸ್ವೀಕಾರವನ್ನು ಹೊಂದಿದೆ

"Linux Plumbers 2022" ಸಮ್ಮೇಳನದ ಸಮಯದಲ್ಲಿ ಅದು ಈ ದಿನಗಳಲ್ಲಿ ನಡೆಯುತ್ತಿದೆ, ಒಬ್ಬ ಪಾಶ್ಚಿಮಾತ್ಯ ಡಿಜಿಟಲ್ ಇಂಜಿನಿಯರ್ ನಿಯಂತ್ರಕ ಅಭಿವೃದ್ಧಿ ಕುರಿತು ಪ್ರಸ್ತುತಿ ನೀಡಿದರು SSD NVM-ಎಕ್ಸ್‌ಪ್ರೆಸ್‌ಗಾಗಿ ಪ್ರಾಯೋಗಿಕ (NVMe) ರಸ್ಟ್‌ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು Linux ಕರ್ನಲ್ ಮಟ್ಟದಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿದೆ.

ಆದರೂ ಯೋಜನೆಯು ಇನ್ನೂ ಅಭಿವೃದ್ಧಿಯ ಆರಂಭಿಕ ಹಂತದಲ್ಲಿದೆ, ನಡೆಸಿದ ಪರೀಕ್ಷೆಗಳು ರಸ್ಟ್ NVMe ಡ್ರೈವರ್‌ನ ಕಾರ್ಯಕ್ಷಮತೆಯು ಕರ್ನಲ್‌ನಲ್ಲಿ C ನಲ್ಲಿ ಬರೆದ NVMe ಡ್ರೈವರ್‌ಗೆ ಅನುರೂಪವಾಗಿದೆ ಎಂದು ತೋರಿಸಿದೆ.

ನಾನು ಮ್ಯಾಥ್ಯೂ ವಿಲ್ಕಾಕ್ಸ್, ನಾನು NVMe ಸ್ಪೆಕ್‌ನ ಲೇಖಕರಲ್ಲಿ ಒಬ್ಬನಾಗಿದ್ದೇನೆ, ರಸ್ಟ್‌ನ ಮೌಲ್ಯವನ್ನು ಪ್ರದರ್ಶಿಸಲು ನಾನು NVMe ಡ್ರೈವರ್ ಮಾಡಲು ಸಲಹೆ ನೀಡಿದವನು. ಇದು ನನ್ನ ನಿರೀಕ್ಷೆಗೂ ಮೀರಿ ಯಶಸ್ವಿಯಾಗಿದೆ. 

ಮಂಡಿಸಿದ ವರದಿಗೆ ಸಂಬಂಧಿಸಿದಂತೆ ಪ್ರಸ್ತುತ NVMe C ಚಾಲಕವು ಸಂಪೂರ್ಣವಾಗಿ ತೃಪ್ತಿಕರವಾಗಿದೆ ಎಂದು ಹೇಳಲಾಗುತ್ತದೆ ಡೆವಲಪರ್‌ಗಳಿಗೆ, ಆದರೆ NVMe ಉಪವ್ಯವಸ್ಥೆಯು ರಸ್ಟ್‌ನಲ್ಲಿ ಡ್ರೈವರ್‌ಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವ ಕಾರ್ಯಸಾಧ್ಯತೆಯನ್ನು ಅನ್ವೇಷಿಸಲು ಉತ್ತಮ ವೇದಿಕೆಯಾಗಿದೆ, ಏಕೆಂದರೆ ಇದು ತುಂಬಾ ಸರಳವಾಗಿದೆ, ವ್ಯಾಪಕವಾಗಿ ಬಳಸಲ್ಪಟ್ಟಿದೆ, ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯ ಅವಶ್ಯಕತೆಗಳನ್ನು ಹೊಂದಿದೆ, ಹೋಲಿಕೆಗಾಗಿ ಸಾಬೀತಾಗಿರುವ ಉಲ್ಲೇಖದ ಅನುಷ್ಠಾನವನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ವಿವಿಧ ಇಂಟರ್ಫೇಸ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ ( dev, pci, dma, blk-mq, gendisk, sysfs).

ಎಂದು ಗಮನಿಸಲಾಗಿದೆ ರಸ್ಟ್ PCI NVMe ಚಾಲಕವು ಈಗಾಗಲೇ ಕಾರ್ಯಾಚರಣೆಗೆ ಅಗತ್ಯವಾದ ಕಾರ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ, ಆದರೆ ಇದು ಇನ್ನೂ ವ್ಯಾಪಕ ಬಳಕೆಗೆ ಸಿದ್ಧವಾಗಿಲ್ಲ, ಏಕೆಂದರೆ ಇದಕ್ಕೆ ಪ್ರತ್ಯೇಕ ವರ್ಧನೆಗಳು ಬೇಕಾಗುತ್ತವೆ.

ಭವಿಷ್ಯದ ಯೋಜನೆಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಅಸುರಕ್ಷಿತ ಬ್ಲಾಕ್‌ಗಳನ್ನು ತೊಡೆದುಹಾಕುವುದನ್ನು ಒಳಗೊಂಡಿವೆ, ಸಾಧನವನ್ನು ತೆಗೆದುಹಾಕಲು ಮತ್ತು ಚಾಲಕವನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಲು ಬೆಂಬಲ, sysfs ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಬೆಂಬಲಿಸಿ, ಲೇಜಿ ಇನಿಶಿಯಲೈಸೇಶನ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿ, blk-mq ಗಾಗಿ ನಿಯಂತ್ರಕವನ್ನು ರಚಿಸಿ ಮತ್ತು queue_rq ಗಾಗಿ ಅಸಮಕಾಲಿಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿಯನ್ನು ಪ್ರಯೋಗಿಸಿ.

ಇದಲ್ಲದೆ, ನಾವು ಸೂಚಿಸಬಹುದು ಪ್ರಯೋಗಗಳನ್ನು ನಡೆಸಲಾಯಿತು NCC ಗ್ರೂಪ್‌ನಿಂದ ರಸ್ಟ್ ಭಾಷೆಯಲ್ಲಿ ನಿಯಂತ್ರಕಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು FreeBSD ಕರ್ನಲ್. ಉದಾಹರಣೆಯಾಗಿ, /dev/rustmodule ಗೆ ಬರೆದ ಡೇಟಾವನ್ನು ಹಿಂತಿರುಗಿಸುವ ಸರಳ ಪ್ರತಿಧ್ವನಿ ನಿಯಂತ್ರಕ. ಮುಂದಿನ ಹಂತದ ಪ್ರಯೋಗದಲ್ಲಿ, NCC ಗ್ರೂಪ್ ನೆಟ್‌ವರ್ಕ್ ಮತ್ತು ಫೈಲ್ ಕಾರ್ಯಾಚರಣೆಗಳ ಸುರಕ್ಷತೆಯನ್ನು ಸುಧಾರಿಸಲು ರಸ್ಟ್‌ನಲ್ಲಿ ಕೋರ್ ಕೋರ್ ಘಟಕಗಳನ್ನು ಮರುನಿರ್ಮಾಣ ಮಾಡಲು ಪರಿಗಣಿಸುತ್ತಿದೆ.

ರಸ್ಟ್‌ನಲ್ಲಿ ಸರಳ ಮಾಡ್ಯೂಲ್‌ಗಳನ್ನು ರಚಿಸಲು ಸಾಧ್ಯವಿದೆ ಎಂದು ತೋರಿಸಲಾಗಿದ್ದರೂ, ಅದು ಹೇಳಿದೆ, FreeBSD ಕರ್ನಲ್‌ಗೆ ರಸ್ಟ್‌ನ ಬಿಗಿಯಾದ ಏಕೀಕರಣಕ್ಕೆ ಹೆಚ್ಚುವರಿ ಕೆಲಸದ ಅಗತ್ಯವಿರುತ್ತದೆ.

ಉದಾಹರಣೆಗೆ, Linux ಗಾಗಿ ರಸ್ಟ್ ಪ್ರಾಜೆಕ್ಟ್ ಸಿದ್ಧಪಡಿಸಿದ ಪ್ಲಗಿನ್‌ಗಳಂತೆಯೇ ಕರ್ನಲ್ ಉಪವ್ಯವಸ್ಥೆಗಳು ಮತ್ತು ರಚನೆಗಳ ಮೇಲೆ ಅಮೂರ್ತ ಪದರಗಳ ಗುಂಪನ್ನು ರಚಿಸುವ ಅಗತ್ಯವನ್ನು ಅವರು ಉಲ್ಲೇಖಿಸುತ್ತಾರೆ. ಭವಿಷ್ಯದಲ್ಲಿ, ನಾವು Illumos ಕೋರ್‌ನೊಂದಿಗೆ ಇದೇ ರೀತಿಯ ಪ್ರಯೋಗಗಳನ್ನು ಮಾಡಲು ಯೋಜಿಸುತ್ತೇವೆ ಮತ್ತು Linux, BSD ಮತ್ತು Illumos ಗಾಗಿ Rust ಬರೆದ ಡ್ರೈವರ್‌ಗಳಲ್ಲಿ ಬಳಸಬಹುದಾದ Rust ನಲ್ಲಿ ಸಾಮಾನ್ಯ ಅಮೂರ್ತತೆಗಳನ್ನು ಹೈಲೈಟ್ ಮಾಡಲು ಯೋಜಿಸುತ್ತೇವೆ.

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಮತ್ತು ಗೂಗಲ್ ಪ್ರಕಾರ, ತಮ್ಮ ಸಾಫ್ಟ್‌ವೇರ್ ಉತ್ಪನ್ನಗಳಲ್ಲಿನ ಸುಮಾರು 70% ದುರ್ಬಲತೆಗಳು ಅಸುರಕ್ಷಿತ ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯ ಕಾರಣದಿಂದಾಗಿವೆ.

ರಸ್ಟ್ ಭಾಷೆಯನ್ನು ಬಳಸುವುದು ದುರ್ಬಲತೆಯ ಅಪಾಯವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ ಅಸುರಕ್ಷಿತ ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯಿಂದ ಉಂಟಾಗುತ್ತದೆ ಮತ್ತು ಮೆಮೊರಿಯ ಪ್ರದೇಶವನ್ನು ಮುಕ್ತಗೊಳಿಸಿದ ನಂತರ ಮತ್ತು ಬಫರ್ ಓವರ್‌ಫ್ಲೋ ಅನ್ನು ಪ್ರವೇಶಿಸುವಂತಹ ದೋಷಗಳ ಸಂಭವವನ್ನು ನಿವಾರಿಸುತ್ತದೆ.

ಉಲ್ಲೇಖಗಳನ್ನು ಪರಿಶೀಲಿಸುವ ಮೂಲಕ, ಆಬ್ಜೆಕ್ಟ್ ಮಾಲೀಕತ್ವ ಮತ್ತು ಆಬ್ಜೆಕ್ಟ್ ಜೀವಿತಾವಧಿಯನ್ನು (ವ್ಯಾಪ್ತಿ) ಪರಿಶೀಲಿಸುವ ಮೂಲಕ ಕಂಪೈಲ್ ಸಮಯದಲ್ಲಿ ರಸ್ಟ್ನಲ್ಲಿ ಮೆಮೊರಿ ಸುರಕ್ಷತೆಯನ್ನು ಒದಗಿಸಲಾಗುತ್ತದೆ, ಹಾಗೆಯೇ ಕೋಡ್ನ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯ ಸಮಯದಲ್ಲಿ ಮೆಮೊರಿ ಪ್ರವೇಶದ ಸರಿಯಾದತೆಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡುವ ಮೂಲಕ.

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

ಪ್ಯಾಚ್‌ಗಳ ಸರಣಿಯಾಗಿ ಪ್ರಸ್ತುತಪಡಿಸಲಾದ ಅವರ "ರಸ್ಟ್ ಫಾರ್ ಲಿನಕ್ಸ್" ಡ್ರೈವರ್‌ಗಳಲ್ಲಿ ಮಿಗುಯೆಲ್ ಒಜೆಡಾ ಪ್ರಸ್ತುತಪಡಿಸಿದ ಕೆಲಸದ ಜೊತೆಗೆ ಭವಿಷ್ಯದ ಕೆಲಸವು ಕೈಜೋಡಿಸುವ ಸಾಧ್ಯತೆಯಿದೆ ಎಂದು ನಮೂದಿಸುವುದು ಯೋಗ್ಯವಾಗಿದೆ.

ಅಂತಿಮವಾಗಿ ನೀವು ಅದರ ಬಗ್ಗೆ ಇನ್ನಷ್ಟು ತಿಳಿದುಕೊಳ್ಳಲು ಆಸಕ್ತಿ ಹೊಂದಿದ್ದರೆ, ನೀವು ವಿವರಗಳನ್ನು ಪರಿಶೀಲಿಸಬಹುದು ಕೆಳಗಿನ ಲಿಂಕ್.


ನಿಮ್ಮ ಅಭಿಪ್ರಾಯವನ್ನು ಬಿಡಿ

ನಿಮ್ಮ ಈಮೇಲ್ ವಿಳಾಸ ಪ್ರಕಟವಾದ ಆಗುವುದಿಲ್ಲ. ಅಗತ್ಯವಿರುವ ಜಾಗ ಗುರುತಿಸಲಾಗಿದೆ *

*

*

  1. ಡೇಟಾಗೆ ಜವಾಬ್ದಾರಿ: ಮಿಗುಯೆಲ್ ಏಂಜೆಲ್ ಗಟಾನ್
  2. ಡೇಟಾದ ಉದ್ದೇಶ: ನಿಯಂತ್ರಣ SPAM, ಕಾಮೆಂಟ್ ನಿರ್ವಹಣೆ.
  3. ಕಾನೂನುಬದ್ಧತೆ: ನಿಮ್ಮ ಒಪ್ಪಿಗೆ
  4. ಡೇಟಾದ ಸಂವಹನ: ಕಾನೂನುಬದ್ಧ ಬಾಧ್ಯತೆಯನ್ನು ಹೊರತುಪಡಿಸಿ ಡೇಟಾವನ್ನು ಮೂರನೇ ವ್ಯಕ್ತಿಗಳಿಗೆ ಸಂವಹನ ಮಾಡಲಾಗುವುದಿಲ್ಲ.
  5. ಡೇಟಾ ಸಂಗ್ರಹಣೆ: ಆಕ್ಸೆಂಟಸ್ ನೆಟ್‌ವರ್ಕ್‌ಗಳು (ಇಯು) ಹೋಸ್ಟ್ ಮಾಡಿದ ಡೇಟಾಬೇಸ್
  6. ಹಕ್ಕುಗಳು: ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ನೀವು ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಮಿತಿಗೊಳಿಸಬಹುದು, ಮರುಪಡೆಯಬಹುದು ಮತ್ತು ಅಳಿಸಬಹುದು.