| SG_READ_BUFFER(8) | SG3_UTILS | SG_READ_BUFFER(8) |
نام (NAME)
sg_read_buffer - ارسال دستور SCSI READ BUFFER
خلاصه دستور (SYNOPSIS)
sg_read_buffer [--eh_code=EHC] [--help] [--hex] [--id=ID] [--inhex=FN] [--length=LEN] [--mode=MO] [--no_output] [--offset=OFF] [--raw] [--readonly] [--specific=MS] [--verbose] [--version] DEVICE
توضیحات (DESCRIPTION)
دستور SCSI READ BUFFER را به DEVICE ارسال میکند و در صورت دریافت پاسخ، یا آن را رمزگشایی میکند، یا به صورت هگزادسیمال چاپ میکند یا به صورت دودویی به خروجی استاندارد میفرستد. اگر پاسخی برای حالت «توصیفکننده» (descriptor) دریافت شود، در صورت نبود --hex و --raw، رمزگشایی میشود. پاسخهای مربوط به حالتهای غیرتوصیفکننده به صورت هگزادسیمال چاپ میشوند مگر اینکه گزینه --raw داده شده باشد.
پاسخهای مربوط به حالتهای وضعیت ریزکد خواندهشده ('rd_microc_st' [0xf]) و تاریخچه خطا ('err_hist' [0x1c]) طبق مستندات spc6r06.pdf و اسناد قدیمیتر T10 رمزگشایی میشوند.
این ابزار میتواند بدون DEVICE اما به همراه گزینه --inhex=FN فراخوانی شود. انتظار میرود FN نام یک فایل (یا '-' برای ورودی استاندارد) باشد. فرض میشود محتوای فایل (یا جریان stdin) دادههای هگزادسیمال (یا باینری) نماینده پاسخ دستور SCSI READ BUFFER باشد و به همان شکل رمزگشایی میشود.
گزینهها (OPTIONS)
آرگومانهای گزینههای طولانی برای گزینههای کوتاه نیز الزامی هستند.
- -e, --eh_code=EHC
- مقدار EHC کد
تاریخچه
خطا است که
در فیلد Buffer ID
از cdb قرار
میگیرد.
فیلد Mode روی err_hist
[0x1c] تنظیم
میشود. این
گزینه
معادل
استفاده از
گزینههای
'--mode=eh --id=EHC' است.
اگر این
گزینه به
همراه یکی
دیگر از
گزینهها
داده شود و
تناقض
داشته
باشند، خطا
صادر
میشود. طول
پاسخ
پیشفرض
(حداکثر) به
۶۴ بایت
افزایش
مییابد که
ممکن است
نیاز به
افزایش
داشته باشد
(در صورت
بریده شدن
خروجی، این
مورد ذکر
میشود).
به عنوان مثال تنظیم EHC روی 0 باعث رمزگشایی فهرست تاریخچه خطا میشود (مگر اینکه گزینههای --hex یا --raw داده شده باشند). - -h, --help
- پیام راهنمای استفاده را چاپ کرده و خارج میشود. در صورت استفاده مکرر، نام حالتها و کوتهنوشتهای آنها را نیز چاپ میکند.
- -H, --hex
- پاسخ را به صورت هگزادسیمال چاپ میکند. اگر دو بار داده شود، پاسخ به صورت هگز همراه با معادل ASCII متناظر در سمت راست هر خط چاپ میشود. اگر سه بار داده شود، مقادیر هگز بدون آدرسها (اندیسها) در ابتدای هر خط چاپ میشوند؛ این قالب برای استفاده با گزینه --inhex=FN در فراخوانیهای بعدی مناسب است.
- -i, --id=ID
- این گزینه فیلد Buffer ID را در cdb تنظیم میکند. ID مقداری بین 0 (پیشفرض) تا 255 است. معنای فیلد Buffer ID بر اساس مقدار موجود در فیلد Mode در cdb متغیر است.
- -I, --inhex=FN
- انتظار میرود FN نام یک فایل (یا '-' برای ورودی استاندارد) باشد که حاوی دادههای هگزادسیمال ASCII یا باینری نماینده پاسخ READ BUFFER است. در صورت شناخته شده بودن، این ابزار آن پاسخ را رمزگشایی میکند. بهتر است گزینههای --mode=MO، --id=ID و در صورت امکان --specific=MS نیز ارائه شوند، زیرا این مقادیر در پاسخ حضور ندارند. برای اطلاعات بیشتر بخش "HEX, BINARY AND JSON FORMATS" را در صفحه راهنمای sg3_utils ببینید. اگر گزینه --raw نیز داده شود، محتوای FN به عنوان باینری در نظر گرفته میشود.
- -l, --length=LEN
- که در آن LEN
طول به بایت
است که در
فیلد "allocation length"
در cdb قرار
میگیرد.
مقدار
پیشفرض ۴
(بایت) است
که در صورت
تعیین یا
استنباط
حالت 'err_hist' [0x1c] به
۶۴ بایت
افزایش
مییابد.
دستگاه
ممکن است با
بایتهای
کمتری پاسخ
دهد.
اگر گزینه --inhex=FN داده شود، مقدار پیشفرض طول به ۸۱۹۲ بایت افزایش مییابد. این طول سپس ممکن است برای مطابقت با تعداد بایتهای رمزگشاییشده از محتوای FN کاهش یابد. - -m, --mode=MO
- این گزینه فیلد mode را در cdb تنظیم میکند. MO مقداری بین 0 (پیشفرض) تا 31 است. همچنین میتوان از کوتهنوشت استفاده کرد. بخش حالتها (MODES) در زیر را ببینید. برای مشاهده فهرست کوتهنوشتهای موجود میتوانید یک مقدار نامعتبر وارد کنید (مانند '--mode=xxx'). به عنوان مثال، برای دریافت توصیفکننده بافر خواندن مقدار '--mode=desc' را وارد کنید.
- -N, --no_output
- هنگامی که
این گزینه
داده شود،
پس از ارسال
دستور SCSI به
DEVICE، پاسخ
بررسی شده و
خطاهای
احتمالی
جستجو
میشوند و
سپس ابزار
خارج
میشود. هر
دادهای که
توسط دستور
READ BUFFER خوانده
شود نادیده
گرفته
میشود.
برای زمانسنجی خواندنهای بزرگتر از بافر DEVICE در حالت 'data' [0x2] مفید است. - -o, --offset=OFF
- این گزینه فیلد buffer offset را در cdb تنظیم میکند. OFF مقداری بین 0 (پیشفرض) تا 2**24-1 است. این مقدار یک آفست بایتی است.
- -r, --raw
- در صورت دریافت پاسخ، آن را به صورت باینری به خروجی استاندارد میفرستد. هنگامی که این گزینه همراه با --inhex=FN داده شود، فرض میشود محتوای FN باینری است و خروجی این ابزار ASCII معمولی خواهد بود (یعنی _نه_ به صورت باینری).
- -R, --readonly
- دستگاه DEVICE را به صورت فقطخواندنی باز میکند (مثلاً در یونیکس با پرچم O_RDONLY). حالت پیشفرض باز کردن آن به صورت خواندن-نوشتن است.
- -S, --specific=MS
- این گزینه فیلد mode specific را در cdb تنظیم میکند. MS مقداری بین 0 تا 7 است زیرا این یک فیلد ۳ بیتی است.
- -v, --verbose
- سطح پرگویی خروجی (خروجی اشکالزدایی) را افزایش میدهد.
- -V, --version
- رشته نسخه را چاپ کرده و سپس خارج میشود.
حالتها (MODES)
در ادامه فهرستی از تنظیمات دستور READ BUFFER برای فیلد MODE آمده است. ابتدا کوتهنوشتی که توسط آرگومان MO این ابزار پذیرفته میشود ذکر شده است. پس از کوتهنوشت در قلابها، مقادیر معادل دهدهی و هگزادسیمال متناظر که میتوان برای MO داد آمدهاند. موارد زیر به ترتیب عددی فهرست شدهاند.
- hd [0, 0x0]
- ترکیب سرآیند و داده (در SPC-4 منسوخ شده است).
- vendor [1, 0x1]
- وابسته به سازنده (Vendor specific).
- data [2, 0x2]
- داده (Data).
- desc [3, 0x3]
- توصیفکننده (Descriptor): ۴ بایت برمیگرداند که حاوی یک فیلد مرز آفست (۱ بایت) و ظرفیت بافر (۳ بایت) است.
- echo [10, 0xa]
- خواندن داده از بافر انعکاس (در SPC-3 به نام "Echo buffer" نامیده میشد).
- echo_desc [11, 0xb]
- توصیفکننده بافر انعکاس: ۴ بایت برمیگرداند که ۱۳ بیت آخر (پایینترین) آن نمایانگر ظرفیت بافر انعکاس است. حداکثر اندازه بافر انعکاس ۴۰۹۶ بایت است.
- rd_microc_st [15, 0xf]
- خواندن وضعیت ریزکد. در spc5r20 اضافه شد.
- en_ex [26, 0x1a]
- فعالسازی پروتکل ارتباطی بسطدهنده و بافر انعکاس. در SPC-4 منسوخ شد.
- err_hist|eh [28, 0x1c]
- تاریخچه خطا. برای این حالت میتوان از 'err_hist' یا کوتهنوشت کوتاه 'eh' استفاده کرد. در SPC-4 معرفی شد.
نکات (NOTES)
تمام اعداد ارائهشده همراه با گزینهها دهدهی فرض میشوند. در غیر این صورت، مقادیر عددی میتوانند به صورت هگزادسیمال همراه با پیشوند "0x" یا "0X" (یا پسوند "h" یا "H") داده شوند.
وضعیت خروج (EXIT STATUS)
وضعیت خروج sg_read_buffer در صورت موفقیت 0 است. در غیر این صورت به صفحه راهنمای sg3_utils(8) مراجعه کنید.
نویسندگان (AUTHORS)
نوشتهشده توسط Luben Tuikov و Douglas Gilbert.
گزارش باگها (REPORTING BUGS)
گزارش باگها به <dgilbert at interlog dot com>.
حق نشر (COPYRIGHT)
Copyright © 2006-2023 Luben Tuikov and Douglas Gilbert
این
نرمافزار
تحت مجوز BSD-2-Clause
توزیع شده
است. هیچ
تضمینی
وجود
ندارد؛ حتی
برای
قابلیت
فروش یا
تناسب با یک
هدف خاص.
همچنین ببینید (SEE ALSO)
sg_write_buffer(sg3_utils)
| June 2023 | sg3_utils-1.48 |