Project - Part2.pdf

‫به نام خدا‬
‫دانشگاه صنعتی شریف‬
‫درس سیستن عاهل پیشرفته‪ ،CE 40533 ،‬دکتر رسول جلیلی‬
‫اتصال ماشیههای مهمان و میزبان در محیط مجازی‬
‫هوعد تحویل‪ 12 :‬خرداد ‪93‬‬
‫َذف از ایه قسمت پريشٌ بررسی وحًٌی تبادل اطالعات بیه سیستمَای مختلف در محیط مجازیساازی داذٌ مایباداذ‪ .‬در‬
‫بخش ايل وحًٌی وصب ي راٌ اوذازی مادیهَای مُمان ي میسبان را با استفادٌ از وار ازاسار ماته بااز ‪ KVM‬بررسای راردیم‪.‬‬
‫سیستم عامل میسبان برای ارتباط با عامل مُمان از ابسار ‪ VirtIO‬استفادٌ میرىذ‪ .‬بذیه مىظًر میسبان یک راوال سریال ایجااد‬
‫میرىذ ي درخًاستَا را در قالب ‪ QMP‬برای عامل ارسال میرىذ‪.‬‬
‫عامل میسبان ي مُمان با استفادٌ از ‪ VirtIO‬اتصال را برقرار میرىىذ‪ .‬در ایه پريتکل عامل میسبان با استفادٌ از یاک ‪chardev‬‬
‫ارتباط را برقرار میرىذ‪ .‬در ایه ابسار عاملَا بر ريی یک سریال مجازی مىتظر دریازت دستًرات میبادىذ‪ .‬زار‬
‫درين مادیه مُمان بر ريی سریال مجازی ‪ /dev/virtio-ports/org.qemu.guest_agent.0‬گاً‬
‫رىیاذ عامال‬
‫دَاذ‪ .‬عامال میسباان باا‬
‫استفادٌ از زراخًاوی دبیٍ زیر میتًاوذ اتصال را با عامل میسبان برقرار رىذ‪:‬‬
‫‪qemu … -chardev socket,path=/tmp/qga.sock,server,nowait,id=qga0‬‬
‫‪-device virtio-serial -device virtserialport,chardev=qga0,name=org.qemu.guest_agent.0‬‬
‫سپس دستًرات برای مادیه مُمان ي باٍ ددر‬
‫‪ /tmp/qga.sock‬ارساال مایداًد‪ .‬ایاه دساتًرات در قالاب ‪ QMP‬ارساال‬
‫میدًد ي پاسخ دن برای عامل میسبان ارسال میدًد‪ .‬برای اتصال عامل مُمان بٍ راوال اتصال از دستًر زیر در مادیه مُماان‬
‫استفادٌ میدًد‪:‬‬
‫‪./qemu-ga -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0‬‬
‫در مادیه میسبان دستًر زیر باعث ایجاد یک رىسًل برای ارتباط با عامل مُمان میدًد‪.‬‬
‫‪sudo socat unix-connect:/tmp/qga.sock readline‬‬
‫پس از اجرای دستًر زًق میتًان درخًاستَا را در قالب ‪ QMP‬برای عامل مُمان ارسال ررد‪ .‬بٍ عىاًان ومًواٍ دساتًر زیار‬
‫درخًاست وسخٍی عامل مُمان را برای ایه عامل ارسال میرىذ‪.‬‬
‫}"‪{"execute": "guest-info‬‬
‫}}"‪{"return": {"version": "1.0‬‬
‫در ایه قسمت از پريشٌ ایه مراحل را اوجا دَیذ‪:‬‬
‫‪ -1‬با استفادٌ از دستًرات ‪ QMP‬یک زایل را در سامت عامال مُماان ایجااد رىیاذ ي پیغاا !‪ Hello World‬را در دن‬
‫بىًیسیذ‪.‬‬
‫‪ -2‬مفاَیم ‪ freeze‬ي ‪ unfreeze‬را در مًرد سیستم زایل مادایه مُماان بررسای رىیاذ ي بیاان رىیاذ ایًواٍ ایاه‬
‫دستًرات پیادٌسازی دذٌ اوذ ي اٍ راربردَایی داروذ‪.‬‬
‫‪ -3‬ایه دستًرات در زایل ‪ qemu-ga.c‬پیادٌ سازی دذٌاوذ‪ .‬یک دستًر جذیذ بٍ ایاه واًرت پیاادٌ ساازی رىیاذ راٍ‬
‫مادیه مُمان پس از دریازت دستًر مذت زمان مشخص دذٌ در پیغا را وبر رىذ (‪ 12‬ثاویٍ) ي پاس از دن پیغاامی‬
‫را برای مادیه میسبان ارسال رىذ‪.‬‬
‫}}"‪{"execute":"guest-callback", "arguments":{"12‬‬
‫}}"!‪{"return": {"Call‬‬
‫دستورات زده شده را به همراه کد و عامل مهمان کامپای ل ش ده در ی‬
‫‪ CE40533-StudentNumber1-StudentNumber2-Part2‬ب‬
‫اای ل ‪ zip‬ب ا عو وان‬
‫ه در‬
‫‪ [email protected]‬ارسال کوید‪ .‬هر روز تاخیر موجب کسر بیست درص د از مم ره‬
‫خواهد شد‪.‬‬
‫مواق باشید‬