هذا هو الأمر nvme-id-ctrl الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
nvme-id-ctrl - إرسال NVMe تحديد وحدة التحكم ، وإرجاع النتيجة والهيكل
موجز
nvme معرف- ctrl [-v | - خاص بالبائع] [-ب | - سحب ثنائي]
الوصف
بالنسبة لجهاز NVMe المعطى ، يرسل أمر تعريف وحدة التحكم ويقدم النتيجة
وعاد الهيكل.
ال المعلمة إلزامية وقد تكون إما جهاز حرف NVMe (على سبيل المثال:
/ dev / nvme0) ، أو جهاز كتلة مساحة الاسم (على سبيل المثال: / dev / nvme0n1).
عند النجاح ، قد يتم إرجاع البنية بإحدى الطرق المتعددة اعتمادًا على الخيار
الأعلام. قد يتم تحليل البنية بواسطة البرنامج أو قد تتم طباعة المخزن المؤقت الخام إلى
com.stdout.
OPTIONS
-ب ، - ثنائي-تقشر
طباعة المخزن المؤقت الخام إلى stdout. لم يتم تحليل البنية عن طريق البرنامج. هذا يتجاوز
خيارات محددة البائع وقابلة للقراءة البشرية.
-v ، - خاص بالبائع
بالإضافة إلى تحليل الحقول المعروفة ، سيؤدي هذا الخيار إلى تفريغ المنطقة المحددة للمورد
للهيكل في عرافة مع تفسير أسكي.
-H ، - يمكن قراءتها من قبل الإنسان
سيقوم هذا الخيار بتحليل وتنسيق العديد من حقول البت إلى تنسيقات يمكن للبشر قراءتها.
أمثلة
· هل يقوم البرنامج بتفسير المخزن المؤقت وعرض الحقول المعروفة في الإنسان
تنسيق قابل للقراءة:
# nvme id-ctrl / dev / nvme0
· بالإضافة إلى إظهار الحقول المعروفة ، فقد قام البرنامج بعرض البائع بشكل فريد
حقل:
# nvme id-ctrl / dev / nvme0 - خاص بالمورد
# nvme id-ctrl / dev / nvme0 -v
ما ورد أعلاه سوف يتخلص من ملف vs المخزن المؤقت في سداسي عشري لأنه لا يعرف كيفية تفسيره.
اجعل البرنامج يعيد البنية الأولية بالثنائي:
# nvme id-ctrl / dev / nvme0 --raw-binary> id_ctrl.raw
# nvme id-ctrl / dev / nvme0 -b> id_ctrl.raw
ربما تكون فكرة سيئة عدم إعادة توجيه stdout عند استخدام هذا الوضع.
· بدلاً من ذلك ، قد ترغب في إرسال البيانات إلى برنامج آخر يمكنه تحليل الملف الخام
العازلة.
# nvme id-ctrl / dev / nvme0 --raw-binary | nvme_parse_id_ctrl
يمكن أن يكون برنامج التحليل في المثال أعلاه برنامجًا يُظهر البنية في ملف
بالطريقة التي تريدها. البرنامج التالي هو مثال من شأنه تحليلها ويمكن
اقبل الإخراج من خلال أنبوب ، "|" ، كما هو موضح في المثال أعلاه ، أو يمكنك "cat"
مخزن مؤقت للإخراج المحفوظ عليه.
/ * الملف: nvme_parse_id_ctrl.c * /
#يشمل
#يشمل
#يشمل
int main (int argc، char ** argv)
{
char buf غير الموقعة [sizeof (Struct nvme_id_ctrl)] ؛
هيكل nvme_id_ctrl * ctrl = (هيكل nvme_id_ctrl *) buf ؛
إذا (اقرأ (STDIN_FILENO، buf، sizeof (buf)))
1 العودة؛
printf ("vid:٪ # x \ n"، ctrl-> vid) ؛
printf ("ssvid:٪ # x \ n"، ctrl-> ssvid)؛
0 العودة؛
}
NVME
جزء من مجموعة nvme-user
استخدم nvme-id-ctrl عبر الإنترنت باستخدام خدمات onworks.net