{"id":378462,"date":"2024-06-09T15:19:38","date_gmt":"2024-06-09T15:19:38","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=378462"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=378462","title":{"rendered":"<span>\u041f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u043c Android-\u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u0432 USB-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u043c\u044b\u0448\u044c \u0438 \u0444\u043b\u0435\u0448\u043a\u0443<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\"><a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/816595\/\"><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/lb\/lp\/fi\/lblpfin6lruli3ifsndzrf8yjjo.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/lb\/lp\/fi\/lblpfin6lruli3ifsndzrf8yjjo.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><\/a><br \/>  Android-\u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043f\u0440\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0443 \u0447\u0435\u0440\u0435\u0437 USB \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043a\u0430\u043a \u043c\u0435\u0434\u0438\u0430\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e, \u043c\u043e\u0434\u0435\u043c \u0438\u043b\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0444\u0430\u0439\u043b\u043e\u0432. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u043d\u0430\u0443\u0447\u0438\u043c\u0441\u044f \u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0437 \u043d\u0435\u0433\u043e USB-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u043c\u044b\u0448\u044c \u0438 \u0444\u043b\u0435\u0448\u043a\u0443. <br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<blockquote><p><b>\u0412\u0410\u0416\u041d\u041e!!!<\/b> \u0412\u0441\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u00ab\u0432\u0437\u043b\u043e\u043c\u0430\u00bb \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u043d\u0451\u043c \u043f\u0440\u0430\u0432 \u0441\u0443\u043f\u0435\u0440\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f (root). \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u00ab\u0432\u0437\u043b\u043e\u043c\u0430\u00bb \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0442\u0435\u0440\u044f\u0442\u044c \u043d\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043b\u0438 \u0432\u043e\u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0440\u0430\u0442\u0438\u043c\u043e \u0441\u043b\u043e\u043c\u0430\u0442\u044c \u0435\u0433\u043e. \u0411\u0443\u0434\u044c\u0442\u0435 \u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u044b! \u041e\u0431\u0434\u0443\u043c\u044b\u0432\u0430\u0439\u0442\u0435 \u0441\u0432\u043e\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043d\u0435 \u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0442\u043e\u0433\u043e, \u043e \u0447\u0451\u043c \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0436\u0430\u043b\u0435\u0442\u044c!<\/p><\/blockquote>\n<p>  <\/p>\n<h2><font color=\"#3AC1EF\">\u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0441\u0442\u0430\u0440\u0442<\/font><\/h2>\n<p>  \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430, \u043f\u043e\u0442\u043e\u043c \u0442\u0435\u043e\u0440\u0438\u044f? \u041d\u0435\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c. \u0415\u0441\u043b\u0438 \u0432\u044b \u043d\u0435 \u043f\u043e\u043d\u0430\u0441\u043b\u044b\u0448\u043a\u0435 \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u043c\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f\u043c\u0438 \u0438 \u0445\u043e\u0440\u043e\u0448\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u0442\u0435\u0441\u044c \u0441 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043e\u0439 Android, \u0442\u043e \u044d\u0442\u0430 \u0433\u043b\u0430\u0432\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0432\u0430\u0441. \u0415\u0441\u043b\u0438 \u0436\u0435 \u0432\u044b \u043d\u043e\u0432\u0438\u0447\u043e\u043a, \u0442\u043e \u043b\u0443\u0447\u0448\u0435 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0433\u043b\u0430\u0432\u0443 \u00ab\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430\u00bb, \u0430 \u043f\u043e\u0442\u043e\u043c \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0441\u044e\u0434\u0430.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041f\u0440\u0435\u0434\u043f\u043e\u043b\u0451\u0442\u043d\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430<\/font><\/h3>\n<p>  \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e:<\/p>\n<ol>\n<li>Android-\u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u0441 \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e root.<\/li>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043d\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 <a href=\"https:\/\/termux.dev\/en\/\">termux<\/a>.<\/li>\n<li>\u041d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0432 termux OpenSSH \u0441\u0435\u0440\u0432\u0435\u0440.<\/li>\n<li>\u0421\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u0434\u043e\u043b\u0436\u0435\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 Wi-Fi \u0441\u0435\u0442\u0438, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439 \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430.<\/li>\n<\/ol>\n<p>  \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0439\u0434\u0435\u043d\u043d\u043e\u0439, \u0435\u0441\u043b\u0438 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0443 \u043f\u043e SSH \u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043d\u0430 \u043d\u0451\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u00absu\u00bb. \u0415\u0441\u043b\u0438 \u0441 \u044d\u0442\u0438\u043c \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442\u0435 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b \u00ab\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430\u00bb, \u0442\u0430\u043c \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c\u0441\u044f, \u043a\u0430\u043a \u0447\u0442\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041f\u0435\u0440\u0435\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 USB-\u043f\u043e\u0440\u0442\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, \u043c\u044b\u0448\u044c \u0438 \u0444\u043b\u0435\u0448\u043a\u0430<\/font><\/h3>\n<p>  \u0412 termux \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442 USB-\u043f\u043e\u0440\u0442 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u043f\u043e\u0434 \u043d\u0430\u0448\u0438 \u0437\u0430\u0434\u0430\u0447\u0438. <br \/>  <i>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435. \u0412\u0441\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 (\u0435\u0441\u043b\u0438 \u043d\u0435 \u0441\u043a\u0430\u0437\u0430\u043d\u043e \u0434\u0440\u0443\u0433\u043e\u0433\u043e) \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0438\u0437-\u043f\u043e\u0434 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 root.<\/i>  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">add_profile.sh<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/system\/bin\/sh # add_profile.sh  PROFILE_NAME=\"xxx\" PROFILE_BASEPATH=\"\/config\/usb_gadget\/\" PROFILE_PATH=\"${PROFILE_BASEPATH}${PROFILE_NAME}\" PROFILE_CONFIG_NAME=\"b.1\" STORAGE_FILE_NAME=\"\/data\/data\/com.termux\/files\/home\/storage_file.img\" STORAGE_FILE_SIZE=\"100M\"  # More info about USB Report Descriptors: # - Human Interface Devices (HID) Specifications and Tools: https:\/\/www.usb.org\/hid # - USB HID Report Descriptor: https:\/\/github.com\/tmk\/tmk_keyboard\/wiki\/USB:-HID-Report-Descriptor # - Device Class Definition for Human Interface Devices (HID). B.1. # - -  https:\/\/usb.org\/sites\/default\/files\/hid1_11.pdf  KEYBOARD_REPORT_DESC=\"\\ \\\\x05\\\\x01\\\\x09\\\\x06\\\\xa1\\\\x01\\\\x05\\\\x07\\\\x19\\\\xe0\\\\x29\\\\xe7\\ \\\\x15\\\\x00\\\\x25\\\\x01\\\\x75\\\\x01\\\\x95\\\\x08\\\\x81\\\\x02\\\\x95\\\\x01\\ \\\\x75\\\\x08\\\\x81\\\\x03\\\\x95\\\\x05\\\\x75\\\\x01\\\\x05\\\\x08\\\\x19\\\\x01\\ \\\\x29\\\\x05\\\\x91\\\\x02\\\\x95\\\\x01\\\\x75\\\\x03\\\\x91\\\\x03\\\\x95\\\\x06\\ \\\\x75\\\\x08\\\\x15\\\\x00\\\\x25\\\\x65\\\\x05\\\\x07\\\\x19\\\\x00\\\\x29\\\\x65\\ \\\\x81\\\\x00\\\\xc0\" # Version for online parser https:\/\/eleccelerator.com\/usbdescreqparser\/ # 0x05 0x01 0x09 0x06 0xa1 0x01 0x05 0x07 0x19 0xe0 0x29 0xe7\\ # 0x15 0x00 0x25 0x01 0x75 0x01 0x95 0x08 0x81 0x02 0x95 0x01\\ # 0x75 0x08 0x81 0x03 0x95 0x05 0x75 0x01 0x05 0x08 0x19 0x01\\ # 0x29 0x05 0x91 0x02 0x95 0x01 0x75 0x03 0x91 0x03 0x95 0x06\\ # 0x75 0x08 0x15 0x00 0x25 0x65 0x05 0x07 0x19 0x00 0x29 0x65\\ # 0x81 0x00 0xc0  MOUSE_REPORT_DESC=\"\\ \\\\x05\\\\x01\\\\x09\\\\x02\\\\xa1\\\\x01\\\\x09\\\\x01\\\\xa1\\\\x00\\\\x05\\\\x09\\ \\\\x19\\\\x01\\\\x29\\\\x05\\\\x15\\\\x00\\\\x25\\\\x01\\\\x95\\\\x05\\\\x75\\\\x01\\ \\\\x81\\\\x02\\\\x95\\\\x01\\\\x75\\\\x03\\\\x81\\\\x01\\\\x05\\\\x01\\\\x09\\\\x30\\ \\\\x09\\\\x31\\\\x09\\\\x38\\\\x15\\\\x81\\\\x25\\\\x7F\\\\x75\\\\x08\\\\x95\\\\x03\\ \\\\x81\\\\x06\\\\xc0\\\\xc0\" # Version for online parser https:\/\/eleccelerator.com\/usbdescreqparser\/ # 0x05 0x01 0x09 0x02 0xa1 0x01 0x09 0x01 0xa1 0x00 0x05 0x09\\ # 0x19 0x01 0x29 0x05 0x15 0x00 0x25 0x01 0x95 0x05 0x75 0x01\\ # 0x81 0x02 0x95 0x01 0x75 0x03 0x81 0x01 0x05 0x01 0x09 0x30\\ # 0x09 0x31 0x09 0x38 0x15 0x81 0x25 0x7F 0x75 0x08 0x95 0x03\\ # 0x81 0x06 0xc0 0xc0   # Device parameters VID=\"0xDEAD\" PID=\"0xBEAF\" MANUFACTURER=\"DEAD\" PRODUCT=\"BEAF\" SERIAL_NUMBER=\"AQAK-10\" PROFILE_CONFIGURATION_STR=\"Multi-Device\"   echo \"Creating new USB profile...\" # Fileds info: https:\/\/www.kernel.org\/doc\/Documentation\/ABI\/testing mkdir -p $PROFILE_PATH cd $PROFILE_PATH if [ $? -eq 0 ]; then     # Base Class 00h (Device): https:\/\/www.usb.org\/defined-class-codes     echo 0x00   > bDeviceClass    # 00 - Class Defined by Interface ( composite )     echo 0x00   > bDeviceProtocol # Base Class 00h (Device): https:\/\/www.usb.org\/defined-class-codes     echo 0x00   > bDeviceSubClass #      echo 0x40   > bMaxPacketSize0 # = 64 bytes. Auto assigned by Android, can't change     echo 0x0200 > bcdUSB          # = USB 2.0. Auto assigned by Android, can't change     echo 0x0333 > bcdDevice       # Device release number. Can be any     echo $VID   > idVendor     echo $PID   > idProduct else     echo \"USB profile create fail.\"     exit 1 fi  mkdir -p \"$PROFILE_PATH\/strings\/0x409\" cd \"$PROFILE_PATH\/strings\/0x409\/\" if [ $? -eq 0 ]; then     echo $MANUFACTURER  > manufacturer     echo $PRODUCT       > product     echo $SERIAL_NUMBER > serialnumber else     echo \"strings create fail\"     exit 1 fi  # create keyboard function mkdir -p \"$PROFILE_PATH\/functions\/hid.keyboard\" cd \"$PROFILE_PATH\/functions\/hid.keyboard\" if [ $? -eq 0 ]; then     echo 1 > protocol # Keyboard     echo 1 > subclass # Boot Interface Subclass     echo 8 > report_length     echo -ne $KEYBOARD_REPORT_DESC > report_desc else     echo \"keyboard function create fail\"     exit 1 fi  # create mouse function mkdir -p \"$PROFILE_PATH\/functions\/hid.mouse\" cd \"$PROFILE_PATH\/functions\/hid.mouse\" if [ $? -eq 0 ]; then     echo 2 > protocol # Mouse     echo 1 > subclass # Boot Interface Subclass     echo 4 > report_length     echo -ne $MOUSE_REPORT_DESC > report_desc else     echo \"mouse function create fail\"     exit 1 fi  # create mass_storage image file if [ ! -f \"$STORAGE_FILE_NAME\" ]; then     fallocate -l $STORAGE_FILE_SIZE $STORAGE_FILE_NAME fi  # create mass_storage function mkdir -p \"$PROFILE_PATH\/functions\/mass_storage.0\" cd \"$PROFILE_PATH\/functions\/mass_storage.0\/lun.0\" if [ $? -eq 0 ]; then     echo 1 >..\/stall     echo 0 > cdrom     echo 0 > removable     echo 0 > ro     echo 0 > nofua     echo \"$STORAGE_FILE_NAME\" > file else     echo \"mass_storage function create fail\"     exit 1 fi  # DISABLE ALL USB Profiles! find $PROFILE_BASEPATH  -name UDC -type f -exec sh -c 'echo \"\" >  \"$@\"' _ {} \\;  # enable functions # Device can have many configurations, like c.1, a.1, etc., but host chose from it # Usually, device have only one config mkdir -p \"${PROFILE_PATH}\/configs\/${PROFILE_CONFIG_NAME}\/strings\/0x409\" cd \"$PROFILE_PATH\/configs\/${PROFILE_CONFIG_NAME}\/\" if [ $? -eq 0 ]; then     echo $PROFILE_CONFIGURATION_STR > strings\/0x409\/configuration     find $PROFILE_PATH\/functions\/* -type d -maxdepth 0 -exec sh -c 'ln -s $@ .\/' _ {} \\; else     echo \"functions enable fail\"     exit 1 fi  cd $PROFILE_PATH ls \/sys\/class\/udc > UDC  exit 0<\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438<\/font><\/h3>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0432\u0441\u0451 \u043f\u0440\u043e\u0448\u043b\u043e \u043a\u0430\u043a \u043d\u0430\u0434\u043e \u0432 termux \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n<pre><code class=\"bash\">ls \/dev | grep hidg<\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432\u044b \u0432\u0438\u0434\u0438\u0442\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u00abhidg0\u00bb \u0438 \u00abhidg1\u00bb \u0437\u043d\u0430\u0447\u0438\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043b\u0438\u0441\u044c \u0443\u0441\u043f\u0435\u0448\u043d\u043e. <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u0418\u043c\u0438\u0442\u0430\u0446\u0438\u044f \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043d\u043e\u043f\u043a\u0438 \u00ab\u0430\u00bb<\/font><\/h3>\n<p>  \u041f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d. \u0412\u0441\u0451 \u0433\u043e\u0442\u043e\u0432\u043e \u043a \u043f\u0435\u0440\u0432\u043e\u043c\u0443 \u0448\u0430\u0433\u0443. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u00ab\u043d\u0430\u0436\u0430\u0442\u044c\u00bb \u043a\u043d\u043e\u043f\u043a\u0443 \u00ab\u0430\u00bb. <br \/>  <i>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435. \u041d\u0435 \u0437\u0430\u0431\u0443\u0434\u044c\u0442\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043a USB-\u043f\u043e\u0440\u0442\u0443 \u0438 \u043d\u0430\u0439\u0442\u0438 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u0441\u0442\u0440\u043e\u043a\u0443, \u0433\u0434\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u043d\u0430\u0436\u0430\u0442\u0430\u044f \u0431\u0443\u043a\u0432\u0430.<\/i><\/p>\n<pre><code class=\"bash\">#!\/system\/bin\/sh # print_a.sh  echo \"\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 #press a echo \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 #release a <\/code><\/pre>\n<h3><font color=\"#3AC1EF\">\u258d \u0418\u043c\u0438\u0442\u0430\u0446\u0438\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043c\u044b\u0448\u0438<\/font><\/h3>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0448\u0435\u0432\u0435\u043b\u0438\u043c \u043a\u0443\u0440\u0441\u043e\u0440\u043e\u043c \u043c\u044b\u0448\u0438. \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442 \u043a\u0443\u0440\u0441\u043e\u0440 \u043c\u044b\u0448\u0438 \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u043d\u0438\u0437. \u0427\u0442\u043e\u0431\u044b \u043b\u0443\u0447\u0448\u0435 \u044d\u0442\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043a\u0443\u0440\u0441\u043e\u0440 \u0432 \u0446\u0435\u043d\u0442\u0440 \u044d\u043a\u0440\u0430\u043d\u0430.<\/p>\n<pre><code class=\"bash\">#!\/system\/bin\/sh # mouse_move_down.sh  echo \"\\x00\\x00\\x55\\x00\" > \/dev\/hidg1<\/code><\/pre>\n<h3><font color=\"#3AC1EF\">\u258d \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u0444\u043b\u0435\u0448\u043a\u0438<\/font><\/h3>\n<p>  \u042d\u0442\u043e, \u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0442\u0435\u0441\u0442. \u0415\u0441\u043b\u0438 \u0432\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0435 Windows, \u0442\u043e \u043e\u0442\u043a\u0440\u043e\u0439\u0442\u0435 \u00abDisk Management\u00bb (\u00ab\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0434\u0438\u0441\u043a\u0430\u043c\u0438\u00bb), \u0442\u0430\u043c \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043d\u043e\u0432\u044b\u0439 \u0434\u0438\u0441\u043a \u043d\u0430 100Mb (\u0420\u0438\u0441. 1). \u0414\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0435\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0442\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0434\u0440\u0443\u0433\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043d\u043e \u0443\u0436\u0435 \u0441 \u0432\u0430\u0448\u0435\u0439 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u043e\u0439.<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/ik\/vi\/zq\/ikvizqlom3e0jk3pjp-8whhzmci.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/ik\/vi\/zq\/ikvizqlom3e0jk3pjp-8whhzmci.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><i><font color=\"#999999\">\u0420\u0438\u0441. 1<\/font><\/i><\/p>\n<p>  \u0418\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e? \u0425\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0435\u0439? \u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0442\u0430\u0442\u044c\u044e.<\/p>\n<h2><font color=\"#3AC1EF\">\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430<\/font><\/h2>\n<p>  \u0412\u0441\u0435\u043c, \u043a\u0442\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043f\u0440\u043e\u0448\u0451\u043b \u00ab\u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0441\u0442\u0430\u0440\u0442\u00bb, \u043c\u043e\u0436\u043d\u043e \u0441\u043c\u0435\u043b\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u0443\u044e \u0433\u043b\u0430\u0432\u0443.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 root<\/font><\/h3>\n<p>  <\/p>\n<blockquote><p>\u041d\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u044e, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043e\u043f\u0430\u0441\u0435\u043d. \u041d\u0435 \u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0435\u0433\u043e \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0435 \u0436\u0430\u043b\u043a\u043e \u0443\u0433\u0440\u043e\u0431\u0438\u0442\u044c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434\u043e\u043f\u044b\u0442\u043d\u044b\u043c \u043a\u0440\u043e\u043b\u0438\u043a\u043e\u043c \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u043e\u0441\u043b\u0443\u0436\u0438\u043b ASUS ZenFone Max Pro M1 (Android 8.1) c \u0440\u0430\u0437\u0431\u0438\u0442\u044b\u043c \u044d\u043a\u0440\u0430\u043d\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u0431\u0435\u0437 \u0434\u0435\u043b\u0430 \u0432\u0430\u043b\u044f\u043b\u0441\u044f \u043d\u0430 \u043f\u043e\u043b\u043a\u0435.<\/p><\/blockquote>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f root \u0432 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u044d\u0442\u0430\u043f\u043e\u0432:<\/p>\n<ol>\n<li>\u0410\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044f \u0432 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 USB.<\/li>\n<li>\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430.<\/li>\n<li>\u0417\u0430\u043c\u0435\u043d\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e (custom recovery), \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/twrp.me\/\">TWRP<\/a>.<\/li>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0438\u0437 TWRP \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u044b <a href=\"https:\/\/github.com\/topjohnwu\/Magisk\">Magisk<\/a>.<\/li>\n<li>\u0418\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044f \u0438\u0437 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0438 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 Magisk.<\/li>\n<\/ol>\n<p>  \u041f\u0435\u0440\u0432\u044b\u0435 \u044d\u0442\u0430\u043f\u044b \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u043d\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430. \u041d\u0430\u0439\u0442\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432\u044b \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430 \u0441\u0430\u0439\u0442\u0430\u0445 4PDA \u0438\u043b\u0438 XDA Forums. \u0415\u0441\u043b\u0438 \u0438\u0445 \u0442\u0430\u043c \u043d\u0435\u0442, \u0442\u043e \u042f\u043d\u0434\u0435\u043a\u0441 \u0432 \u043f\u043e\u043c\u043e\u0449\u044c.<\/p>\n<p>  \u0425\u043e\u0447\u0443 \u0437\u0430\u043e\u0441\u0442\u0440\u0438\u0442\u044c \u0432\u0430\u0448\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0432\u0430\u0436\u043d\u043e\u0439 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f root, \u043e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u0447\u0435\u043c\u0443-\u0442\u043e \u043d\u0438\u0433\u0434\u0435 \u043d\u0435 \u043f\u0438\u0448\u0443\u0442. \u041f\u0440\u0438 \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043a USB 2.0 \u043f\u043e\u0440\u0442\u0430\u043c \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430. \u0415\u0441\u043b\u0438 \u0438\u0445 \u043d\u0435\u0442, \u0442\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f USB 2.0 \u0445\u0430\u0431. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 USB 3.0 \u043f\u043e\u0440\u0442\u043e\u0432 (\u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u043d\u043e\u0432\u044b\u0445) \u043c\u043e\u0436\u0435\u0442 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0430\u0442\u044c\u0441\u044f \u0432\u043e\u0440\u043e\u0445\u043e\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c:<\/p>\n<ul>\n<li>\u0421\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0441\u0430\u043c\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e \u0432\u044b\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u0437 \u0440\u0435\u0436\u0438\u043c\u0430 \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438.<\/li>\n<li>\u0423\u0442\u0438\u043b\u0438\u0442\u0430 fastboot \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u00ab\u0447\u0435\u0440\u0435\u0437 \u0440\u0430\u0437\u00bb \u0438 \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u043e\u0448\u0438\u0431\u043a\u0438: FAILED (command write failed (No error)), FAILED (status read failed (Too many links)) \u0438 \u043f\u0440\u043e\u0447\u0438\u0435. <\/li>\n<\/ul>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 termux<\/font><\/h3>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f root \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 termux. C \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u0441\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b. \u0421\u0442\u0430\u0432\u0438\u0442\u044c termux \u043b\u0443\u0447\u0448\u0435 \u0441 \u0441\u0430\u0439\u0442\u0430 <a href=\"https:\/\/f-droid.org\/packages\/com.termux\/\">F-Droid<\/a>, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u00abGoogle play\u00bb \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0430 \u0441\u0442\u0430\u0440\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f, \u0438\u043c\u0435\u044e\u0449\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u043c\u0438. <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 SSH \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0432 termux<\/font><\/h3>\n<p>  \u041a\u043e\u043c\u0430\u043d\u0434\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 SSH \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043e\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u0439 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438, root \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435 \u043d\u0443\u0436\u043d\u043e.<\/p>\n<ol>\n<li>\u041f\u0435\u0440\u0432\u044b\u043c \u0434\u0435\u043b\u043e\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c termux:\n<pre><code class=\"bash\">pkg update -y<\/code><\/pre>\n<p>  \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0441 \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0438\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u043c\u0438 \u0444\u0430\u0439\u043b\u0430\u043c\u0438. \u0414\u043b\u044f \u043d\u0430\u0448\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u043b\u0443\u0447\u0448\u0435 \u0438\u0445 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c.<\/li>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b:\n<pre><code class=\"bash\">pkg install -y termux-auth openssh<\/code><\/pre>\n<\/li>\n<li>\u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0437\u043d\u0430\u0442\u044c \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 termux. \u041d\u0430\u0431\u0435\u0440\u0451\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443:\n<pre><code class=\"bash\">id<\/code><\/pre>\n<p>  \u041e\u0442\u0432\u0435\u0442 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c\u0438, \u0441\u0440\u0435\u0434\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u00abuid\u00bb (user id) \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0435 \u0438\u043c\u044f.<\/li>\n<li>\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0432 SSH \u043f\u043e \u043f\u0430\u0440\u043e\u043b\u044e, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c. \u0421\u0434\u0435\u043b\u0430\u0435\u043c \u044d\u0442\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b:\n<pre><code class=\"bash\">passwd<\/code><\/pre>\n<\/li>\n<li>\u0423\u0437\u043d\u0430\u0435\u043c IP-\u0430\u0434\u0440\u0435\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043f\u043e WiFi. \u0412\u044b\u043f\u043e\u043b\u043d\u0438\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443:\n<pre><code class=\"bash\">ipconfig<\/code><\/pre>\n<\/li>\n<li>\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u043c OpenSSH \u0441\u0435\u0440\u0432\u0435\u0440:\n<pre><code class=\"bash\">sshd<\/code><\/pre>\n<p>  \u0412\u0441\u0451 \u0433\u043e\u0442\u043e\u0432\u043e \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u043e SSH. \u041c\u044b \u0437\u043d\u0430\u0435\u043c IP \u0430\u0434\u0440\u0435\u0441 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430, \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0438\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438 \u043f\u0430\u0440\u043e\u043b\u044c, \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u043f\u043e\u0440\u0442 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0441\u0442\u043e\u0438\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c 8022, \u0442\u0430\u043a \u043a\u0430\u043a \u0438\u043c\u0435\u043d\u043d\u043e \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f OpenSSH \u0432 termux \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.<\/li>\n<\/ol>\n<p>  <\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 OpenSSH \u0432 termux<\/font><\/h4>\n<p>  \u0415\u0441\u043b\u0438 \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0443 \u043f\u043e SSH \u043d\u0435 \u0443\u0434\u0430\u0451\u0442\u0441\u044f, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b:<\/p>\n<ol>\n<li>\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c OpenSSH, \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u044b:\n<pre><code class=\"bash\">pkill sshd sshd<\/code><\/pre>\n<\/li>\n<li>\u041f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d.<\/li>\n<\/ol>\n<p>\u041e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u043f\u0440\u0438\u0447\u0438\u043d \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 SSH \u0432 termux \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043d\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435 \u0431\u0440\u0430\u043d\u0434\u043c\u0430\u0443\u044d\u0440\u0430, \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u043b\u044e\u0431\u044b\u0435 \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435 SSH \u0441\u0435\u0440\u0432\u0435\u0440, \u0441\u043e \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f \u043a \u043d\u0435\u043c\u0443 SSH \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c \u0441 \u043f\u0440\u043e\u0431\u0440\u043e\u0441\u043a\u043e\u0439 \u043f\u043e\u0440\u0442\u043e\u0432, \u0430 \u0437\u0430\u0442\u0435\u043c \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 SSH \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f \u0432 \u043f\u0440\u043e\u0431\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u0439 \u043f\u043e\u0440\u0442.<\/p>\n<p>  \u041f\u0440\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043f\u043e\u0438\u0441\u043a\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442\u044b \u0432 <a href=\"https:\/\/wiki.termux.com\/wiki\/Remote_Access\">\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u043c \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0435<\/a> termux \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0440\u0430\u0432 root \u0432 Magisk<\/font><\/h3>\n<p>  \u041f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437, \u043d\u0430\u0431\u0440\u0430\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u00absu\u00bb, \u0432 termux \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435 \u043e\u0442 Magisk, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u0442 \u0432\u0430\u0448\u0435\u0433\u043e \u043e\u0434\u043e\u0431\u0440\u0435\u043d\u0438\u044f \u043d\u0430\u0434\u0435\u043b\u0435\u043d\u0438\u044f (grant) \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f termux root \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c. \u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u0433\u043b\u0430\u0441\u0438\u0442\u044c\u0441\u044f.<\/p>\n<h2><font color=\"#3AC1EF\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 USB-\u043f\u043e\u0440\u0442\u0430 \u0432 Andoid<\/font><\/h2>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0439 root \u0432 Android<\/font><\/h3>\n<p>  \u0415\u0441\u043b\u0438 \u043e\u0447\u0435\u043d\u044c \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 Android \u2013 \u044d\u0442\u043e <a href=\"https:\/\/source.android.com\/docs\/core\/architecture?hl=en\">\u0441\u043b\u043e\u0451\u043d\u044b\u0439 \u043f\u0438\u0440\u043e\u0433<\/a> (\u0420\u0438\u0441. 2), \u0433\u0434\u0435 \u0432\u0441\u044e \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 Linux, \u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 <a href=\"https:\/\/source.android.com\/docs\/core\/runtime?hl=en\">Android runtime<\/a>.   <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/tz\/lk\/fc\/tzlkfcuefcwblf046u49y1ahhou.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/tz\/lk\/fc\/tzlkfcuefcwblf046u49y1ahhou.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><i><font color=\"#999999\">\u0420\u0438\u0441. 2<\/font><\/i><\/p>\n<p>  \u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0431\u044b\u0432\u0430\u044e\u0442 \u043e\u0431\u044b\u0447\u043d\u044b\u0435, \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 (\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435) \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0449\u0438\u043a\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (Device manufacturer apps). \u041f\u0435\u0440\u0435\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 USB-\u043f\u043e\u0440\u0442\u0430 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u043e\u0431\u044b\u0447\u043d\u044b\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c, \u0430 \u043f\u043e\u0432\u044b\u0448\u0435\u043d\u0438\u0435 \u0443\u0440\u043e\u0432\u043d\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0434\u043e \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u043e\u043f\u0440\u044f\u0436\u0435\u043d\u043e \u0441 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u043c\u0438 <a href=\"https:\/\/xakep.ru\/2016\/04\/20\/android-api\/\">\u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438<\/a>.<\/p>\n<p>  \u041d\u043e \u0435\u0441\u0442\u044c \u0434\u0440\u0443\u0433\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442. \u0414\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 Android runtime \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 API, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c Linux-\u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0430 \u0443\u0436\u0435 \u0441 \u0438\u0445 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0451 \u0447\u0442\u043e \u0443\u0433\u043e\u0434\u043d\u043e. \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0431\u0443\u0434\u0443\u0442 \u043b\u0438\u0448\u044c \u043f\u043e\u043b\u043d\u043e\u043c\u043e\u0447\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0438 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u0440\u0430\u0437\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0441\u0430\u043c\u043e\u0433\u043e Linux (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, SELinux). <\/p>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u043f\u0435\u0440\u0435\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 USB-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b\u0437\u043e\u0432\u0430 Linux-\u043a\u043e\u043c\u0430\u043d\u0434 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0434\u043b\u044f \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f root-\u0434\u043e\u0441\u0442\u0443\u043f. \u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e \u0447\u0442\u043e \u043c\u044b \u0440\u0430\u043d\u0435\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 root, \u044d\u0442\u043e \u0432\u043e\u0432\u0441\u0435 \u043d\u0435 \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0432\u0441\u0435 \u043d\u0430\u0448\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u043b\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c\u0441\u044f \u0438\u0437-\u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f root. \u041e\u043d\u0438 \u0432\u0441\u0451 \u0442\u0430\u043a \u0436\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u0438\u0437-\u043f\u043e\u0434 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0439 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438, \u0438 \u0442\u043e, \u0447\u0435\u0433\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0431\u044b\u043b\u043e \u0434\u0435\u043b\u0430\u0442\u044c \u0440\u0430\u043d\u0435\u0435 (\u0434\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f root), \u043d\u0435\u043b\u044c\u0437\u044f \u0434\u0435\u043b\u0430\u0442\u044c \u0438 \u0441\u0435\u0439\u0447\u0430\u0441. \u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0432\u0430\u0436\u043d\u044b\u043c \u043e\u0442\u043b\u0438\u0447\u0438\u0435\u043c \u0441\u0442\u0430\u043b\u043e \u0442\u043e, \u0447\u0442\u043e \u0442\u0435\u043f\u0435\u0440\u044c (\u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f root) \u0435\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u00absu\u00bb, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0443 (shell), \u0433\u0434\u0435 \u043a\u0430\u043a \u0440\u0430\u0437 \u0438 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043d\u0430\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f. <\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u0427\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0442 root<\/font><\/h4>\n<p>  \u0412\u0441\u044f\u043a\u0438\u0439 \u0440\u0430\u0437, \u043a\u043e\u0433\u0434\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0438\u043b\u0438 \u0441\u043a\u0440\u0438\u043f\u0442 \u0438\u0437-\u043f\u043e\u0434 \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 root \u044d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0432\u044b\u0441\u0438\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u043c\u043e\u0447\u0438\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u00absu\u00bb, \u0430 \u043f\u043e\u0442\u043e\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f.<\/p>\n<h2><font color=\"#3AC1EF\">Linux USB Gadget<\/font><\/h2>\n<p>  \u0412 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 Linux-\u044f\u0434\u0440\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d, \u043e\u0441\u043d\u0430\u0449\u0451\u043d\u043d\u044b\u0439 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u043c USB-\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c, \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <a href=\"https:\/\/www.kernel.org\/doc\/Documentation\/usb\/gadget_configfs.txt\">Linux USB Gadget<\/a>. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 <a href=\"https:\/\/docs.kernel.org\/filesystems\/configfs.html\">configfs<\/a> \u2014 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0435\u0433\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. <\/p>\n<p>  \u0421\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u044b \u0431\u044b\u0432\u0430\u044e\u0442 \u0440\u0430\u0437\u043d\u044b\u0435, \u0438 \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u0437 \u043d\u0438\u0445, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u0442\u0430\u0440\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u044f\u0445 \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430 \u043c\u043e\u0436\u0435\u0442 \u0438 \u043d\u0435 \u0431\u044b\u0442\u044c. \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0432\u0430\u0448 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c USB-\u043f\u043e\u0440\u0442 \u0447\u0435\u0440\u0435\u0437 configfs, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043e\u043f\u0446\u0438\u0438 Linux-\u044f\u0434\u0440\u0430:<\/p>\n<pre><code class=\"bash\">#!\/system\/bin\/sh  echo KERNEL_VERSION=`(uname -r |cut -d '-' -f1 )`  gunzip -c \/proc\/config.gz | grep -i configfs <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u043d\u0430\u0448\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0438:<\/p>\n<pre><code class=\"bash\">... CONFIG_USB_CONFIGFS=y \u2026 CONFIG_USB_CONFIGFS_MASS_STORAGE=y \u2026 CONFIG_USB_CONFIGFS_F_HID=y \u2026<\/code><\/pre>\n<p>  \u041e\u043d\u0438 \u043e\u0437\u043d\u0430\u0447\u0430\u044e\u0442, \u0447\u0442\u043e Linux-\u044f\u0434\u0440\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443 USB \u0447\u0435\u0440\u0435\u0437 configfs, \u0438 \u0432\u0434\u043e\u0431\u0430\u0432\u043e\u043a \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0440\u0435\u0436\u0438\u043c\u044b MASS_STORAGE (\u0444\u043b\u0435\u0448\u043a\u0430) \u0438 HID (\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, \u043c\u044b\u0448\u044c).<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 USB-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0447\u0435\u0440\u0435\u0437 configfs<\/font><\/h3>\n<p>  \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0442\u043e\u0447\u043a\u0443 \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f configfs \u043c\u043e\u0436\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b:<\/p>\n<pre><code class=\"bash\">mount | grep configfs<\/code><\/pre>\n<p>  \u041e\u0431\u044b\u0447\u043d\u043e \u0432 Android \u044d\u0442\u043e \u00ab\/config\u00bb. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 USB-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043b\u0435\u0436\u0430\u0442 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u00ab\/config\/usb_gadget\/\u00bb. <br \/>  \u0412\u043e\u0442 \u0437\u0434\u0435\u0441\u044c \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e. \u0415\u0441\u043b\u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u044d\u0442\u043e\u0433\u043e \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430:<\/p>\n<pre><code class=\"bash\">ls \/config\/usb_gadget\/<\/code><\/pre>\n<p>  \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c, \u0447\u0442\u043e \u0432 \u043d\u0451\u043c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u00abg1\u00bb \u2013 \u044d\u0442\u043e \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c USB-\u043f\u043e\u0440\u0442\u0430, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u043e\u0439 Android. \u041a\u0440\u043e\u043c\u0435 \u043d\u0435\u0433\u043e, \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u00ab\/config\/usb_gadget\/\u00bb \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u043a\u043e\u043b\u044c \u0443\u0433\u043e\u0434\u043d\u043e \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u0439, \u043d\u043e \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u0438\u043d. \u0412 \u0441\u0432\u044f\u0437\u0438 \u0441 \u044d\u0442\u0438\u043c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0434\u0432\u0435 \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f USB-\u043f\u043e\u0440\u0442\u0430:<\/p>\n<ol>\n<li>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0438 \u0437\u0430\u0442\u0435\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c, \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0432 \u0441\u0442\u0430\u0440\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c (\u0442\u0430\u043a \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u00ab\u0411\u044b\u0441\u0442\u0440\u044b\u0439 \u0441\u0442\u0430\u0440\u0442\u00bb).<\/li>\n<li>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c\/\u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u043c \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u043c \u043f\u0440\u043e\u0444\u0438\u043b\u0435.<\/li>\n<\/ol>\n<p>  \u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u0438\u043c\u0435\u0435\u0442 \u0441\u0432\u043e\u0438 \u043f\u043b\u044e\u0441\u044b \u0438 \u043c\u0438\u043d\u0443\u0441\u044b. \u0421\u043e\u0437\u0434\u0430\u0432\u0430\u044f \u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u044f \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u043c\u044b\u0448\u044c \u0438 \u0444\u043b\u0435\u0448\u043a\u0443, \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0432\u044b\u043d\u0443\u0436\u0434\u0435\u043d\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c, \u0447\u0442\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043e\u0442\u043b\u0430\u0434\u043a\u0430 \u043f\u043e USB \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430.<br \/>  \u0418\u0437\u043c\u0435\u043d\u044f\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0444\u0438\u043b\u044f, \u043c\u044b, \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u043b\u0430\u0432\u0430\u044e\u0449\u0438\u0435 \u00ab\u0433\u043b\u044e\u043a\u0438\u00bb \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 USB, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0446\u0438\u044e \u0441 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u043e\u0439 Android \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 USB-\u043f\u043e\u0440\u0442\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043a\u0430\u0436\u0434\u0430\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f.<\/p>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b configfs \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 USB-\u043f\u043e\u0440\u0442\u0430 \u0438\u043c\u0435\u0435\u0442 \u0440\u044f\u0434 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0435\u0439:<\/p>\n<ol>\n<li>\u0417\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0438\u043c\u0435\u043d\u0438 \u043f\u0440\u043e\u0444\u0438\u043b\u044f, \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b. \u0412\u043d\u0443\u0442\u0440\u0438 configfs \u043d\u0435\u043b\u044c\u0437\u044f \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0438\u043b\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433.<\/li>\n<li>\u0424\u043e\u0440\u043c\u0430\u0442\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u0432 \u0444\u0430\u0439\u043b\u044b \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0435\u0434\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b.<\/li>\n<li>\u0414\u043b\u044f \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u00abrmdir\u00bb, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u0438\u0432 \u0438\u0437 \u043d\u0435\u0433\u043e \u0432\u0441\u0435 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u043e\u0441\u0442\u0438. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u00abrm -rf\u00bb \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u043b\u0435\u0447\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b.<\/li>\n<li>\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432 configfs \u043f\u0440\u043e\u043f\u0430\u0434\u0430\u044e\u0442 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430.<\/li>\n<\/ol>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u043e\u0432 \u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432<\/font><\/h3>\n<p>  \u041f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c \u043a\u0430\u043a \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e USB-\u043f\u043e\u0440\u0442\u0430, \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432. \u041f\u0435\u0440\u0432\u043e\u0435, \u043d\u0430 \u0447\u0451\u043c \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u0437\u0430\u043e\u0441\u0442\u0440\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u044d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0448\u0430 \u0438\u0434\u0435\u044f \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u044c \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0432 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u043c\u044b\u0448\u044c \u0438 \u0444\u043b\u0435\u0448\u043a\u0443 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0435\u043c-\u0442\u043e \u044d\u043a\u0441\u0442\u0440\u0430\u043e\u0440\u0434\u0438\u043d\u0430\u0440\u043d\u044b\u043c. \u041d\u0438\u043a\u043e\u0433\u043e \u0432\u0435\u0434\u044c \u043d\u0435 \u0441\u043c\u0443\u0449\u0430\u044e\u0442 \u041c\u0424\u0423, \u0441\u043e\u0432\u043c\u0435\u0449\u0430\u044e\u0449\u0438\u0435 \u0432 \u0441\u0435\u0431\u0435 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0444\u0438\u043a\u0446\u0438\u0438 \u043f\u0440\u0438\u043d\u0442\u0435\u0440\u0430, \u0441\u043a\u0430\u043d\u0435\u0440\u0430 \u0438 \u0444\u0430\u043a\u0441\u0430. \u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u043e\u0431\u043b\u0430\u0434\u0430\u044e\u0449\u0438\u0435 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u0445 USB, \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0442\u043d\u044b\u043c\u0438. \u041a\u0441\u0442\u0430\u0442\u0438, \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0438\u0433\u0440\u043e\u0432\u044b\u0445 \u043c\u044b\u0448\u0435\u043a \u0442\u0430\u043a\u0436\u0435 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a\u043e\u043c\u043f\u043e\u0437\u0438\u0442\u043d\u044b\u043c\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438, \u0441\u043e\u0447\u0435\u0442\u0430\u044e\u0449\u0438\u043c\u0438 \u0432 \u0441\u0435\u0431\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043c\u044b\u0448\u043a\u0438 \u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b (\u0420\u0438\u0441. 3). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u0448 \u0433\u0438\u0431\u0440\u0438\u0434 \u2013 \u0432\u043f\u043e\u043b\u043d\u0435 \u0437\u0430\u0443\u0440\u044f\u0434\u043d\u0430\u044f \u0432\u0435\u0449\u044c \u0432 \u043c\u0438\u0440\u0435 USB. <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/6q\/1j\/md\/6q1jmdm_0zrml7qnqdupjyxhjbi.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/6q\/1j\/md\/6q1jmdm_0zrml7qnqdupjyxhjbi.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><i><font color=\"#999999\">\u0420\u0438\u0441. 3<\/font><\/i><\/p>\n<p>  \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043a USB-\u0448\u0438\u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0441\u0430\u043c\u044b\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432, \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 (USB-\u0445\u043e\u0441\u0442) \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043a \u043d\u0435\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043b\u043e\u0441\u044c \u0438 \u043a\u0430\u043a \u0441 \u044d\u0442\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043e\u0431\u043c\u0435\u043d\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u0432:<\/p>\n<ol>\n<li>\u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f USB \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c, \u043a\u043b\u0430\u0441\u0441\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u044f\u0434 \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432.<\/li>\n<li>\u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0421\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f USB \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c \u0438\u043c\u0435\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0442\u044c \u043f\u0438\u0442\u0430\u043d\u0438\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043e\u0442 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u0431\u043b\u043e\u043a\u0430 \u043f\u0438\u0442\u0430\u043d\u0438\u044f, \u0430 \u0432\u0442\u043e\u0440\u0430\u044f \u2013 \u043f\u0438\u0442\u0430\u043d\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 \u0448\u0438\u043d\u0443 USB. \u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043e\u0434\u043d\u0443 \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0441\u0432\u043e\u0438\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u043e\u0443\u0442\u0431\u0443\u043a \u043f\u0440\u0438 \u043f\u0438\u0442\u0430\u043d\u0438\u0438 \u043e\u0442 \u0441\u0435\u0442\u0438 \u043c\u043e\u0436\u0435\u0442 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0441 \u043f\u0438\u0442\u0430\u043d\u0438\u0435\u043c \u0447\u0435\u0440\u0435\u0437 \u0448\u0438\u043d\u0443 USB, \u0430 \u043f\u0440\u0438 \u043f\u0438\u0442\u0430\u043d\u0438\u0438 \u043e\u0442 \u0431\u0430\u0442\u0430\u0440\u0435\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e, \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u044e\u0449\u0443\u044e \u043f\u0438\u0442\u0430\u043d\u0438\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0447\u0435\u0440\u0435\u0437 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0431\u043b\u043e\u043a \u043f\u0438\u0442\u0430\u043d\u0438\u044f.<\/li>\n<li>\u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b \u0441\u0442\u0440\u043e\u043a. \u0421\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u0430\u0441\u0441\u043e\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0441 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c.<\/li>\n<li>\u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b \u043e\u0442\u0447\u0451\u0442\u0430 HID \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (USB HID Report descriptor). \u0414\u0430\u043d\u043d\u044b\u0439 \u0432\u0438\u0434 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043a HID (Human Interface Device) \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c, \u0442\u0430\u043a\u0438\u043c \u043a\u0430\u043a \u043c\u044b\u0448\u044c, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, \u0434\u0436\u043e\u0439\u0441\u0442\u0438\u043a \u0438 \u0442. \u0434. \u0410 \u0432\u043e\u0442 USB-\u0444\u043b\u0435\u0448\u043a\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f HID \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c. \u0415\u0441\u043b\u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c, \u0442\u043e \u0432 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c\u0441\u044f \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u044e\u0449\u0443\u044e \u0441 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e.<\/li>\n<\/ol>\n<p>  \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 USB-\u043f\u043e\u0440\u0442\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e configfs \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c Linux-\u044f\u0434\u0440\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e, \u043d\u0430 \u0431\u0430\u0437\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u043d\u043e \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u0432.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u0424\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 configfs<\/font><\/h3>\n<p>  \u041d\u0430\u0441\u0442\u0430\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441\u043e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439 configfs \u0432 \u0447\u0430\u0441\u0442\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f USB-\u043f\u043e\u0440\u0442\u0430. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \/config\/usb_gadget\/ \u043d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u043d\u0430\u0437\u043e\u0432\u0451\u043c \u0435\u0433\u043e \u00abxxx\u00bb:<\/p>\n<pre><code class=\"bash\">mkdir \/config\/usb_gadget\/xxx<\/code><\/pre>\n<p>  \u0421\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u00ab\/config\/usb_gadget\/xxx\u00bb \u0431\u044b\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0444\u0430\u0439\u043b\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430:  <\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0424\u0430\u0439\u043b \u0438\u043b\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433<\/td>\n<td>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>UDC<\/td>\n<td>\u0424\u0430\u0439\u043b, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u043e\u0444\u0438\u043b\u044f. \u0415\u0441\u043b\u0438 \u0444\u0430\u0439\u043b \u043f\u0443\u0441\u0442, \u0442\u043e \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u043d\u0435 \u0430\u043a\u0442\u0438\u0432\u0435\u043d, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442, \u0442\u043e \u0432 \u043d\u0451\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0438\u043c\u044f \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0430\u0441\u0441\u043e\u0446\u0438\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0441 \u044d\u0442\u0438\u043c \u043f\u0440\u043e\u0444\u0438\u043b\u0435\u043c.<br \/>  \u0414\u043b\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430:<\/p>\n<pre><code class=\"bash\">echo \"\" > UDC<\/code><\/pre>\n<p>  \u0414\u043b\u044f \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0444\u0438\u043b\u044f:<\/p>\n<pre><code class=\"bash\">ls \/sys\/class\/udc > UDC<\/code><\/pre>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430  <\/td>\n<\/tr>\n<tr>\n<td>bDeviceClass<\/td>\n<td rowspan=\"3\">\u0424\u0430\u0439\u043b\u044b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0448\u0435\u0441\u0442\u043d\u0430\u0434\u0446\u0430\u0442\u0435\u0440\u0438\u0447\u043d\u044b\u0435 \u043a\u043e\u0434\u044b USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432. \u041f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u043a\u043e\u0434\u043e\u0432 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 <a href=\"https:\/\/www.usb.org\/defined-class-codes\">USB-IF<\/a><\/td>\n<\/tr>\n<tr>\n<td>bDeviceProtocol<\/td>\n<\/tr>\n<tr>\n<td>bDeviceSubClass<\/td>\n<\/tr>\n<tr>\n<td>bMaxPacketSize0<\/td>\n<td>\u041c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u043f\u0430\u043a\u0435\u0442\u0430 \u0434\u043b\u044f \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0439 \u0442\u043e\u0447\u043a\u0438 0. \u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b 8, 16, 32, 64. \u041f\u043e \u0444\u0430\u043a\u0442\u0443, \u0432\u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0437\u0434\u0435\u0441\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f Android USB Gadget \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 64.<\/td>\n<\/tr>\n<tr>\n<td>bcdUSB<\/td>\n<td>\u041d\u043e\u043c\u0435\u0440 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 USB, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e. \u041f\u043e \u0444\u0430\u043a\u0442\u0443, \u0432\u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0437\u0434\u0435\u0441\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f Android USB Gadget \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 USB 2.0.<\/td>\n<\/tr>\n<tr>\n<td>bcdDevice<\/td>\n<td>\u041d\u043e\u043c\u0435\u0440 \u0432\u0435\u0440\u0441\u0438\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430.<\/td>\n<\/tr>\n<tr>\n<td>idVendor<\/td>\n<td rowspan=\"2\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0434\u043b\u044f \u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u0434\u043b\u044f \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. idVendor \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0435\u0439 USB-IF, idProduct \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0435\u043c.<\/td>\n<\/tr>\n<tr>\n<td>idProduct<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\">\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u044b\u0445 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u0432<\/td>\n<\/tr>\n<tr>\n<td>functions\/<\/td>\n<td>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u00abhid.keyboard\u00bb \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u00abhid.mouse\u00bb \u2013 \u043c\u044b\u0448\u044c, \u00abmass_storage.0\u00bb \u2013 \u0444\u043b\u0435\u0448\u043a\u0443. \u0414\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u044d\u0442\u0438\u0445 \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u043e \u0434\u0430\u043b\u0435\u0435.<\/td>\n<\/tr>\n<tr>\n<td>configs\/<\/td>\n<td>\u041a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u0438\u043c\u0435\u0442\u044c \u0438\u043c\u044f, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0438\u0437 \u0431\u0443\u043a\u0432\u044b \u0438 \u0446\u0438\u0444\u0440\u044b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u00abb.1\u00bb.<\/td>\n<\/tr>\n<tr>\n<td>config\/&lt;\u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430>\/<\/td>\n<td>\u0417\u0434\u0435\u0441\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438\u0437 \u043f\u0430\u043f\u043a\u0438 \u00abfunctions\/\u00bb, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0440\u044f\u0434 \u0444\u0430\u0439\u043b\u043e\u0432, \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u043b\u044f \u043d\u0430\u0441 \u043d\u0435\u0432\u0430\u0436\u043d\u043e. <\/p>\n<p>  \u041d\u0430\u043b\u0438\u0447\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0441\u0441\u044b\u043b\u043a\u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u0438\u043c\u0432\u043e\u043b\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u2026functions\/hid.mouse, \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u0437\u043d\u0430\u0447\u0430\u0442\u044c, \u0447\u0442\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u044f hid.mouse \u0430\u043a\u0442\u0438\u0432\u043d\u0430.<\/td>\n<\/tr>\n<tr>\n<td>strings\/<\/td>\n<td>\u0421\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438 \u0441 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u0430\u0445. \u0418\u043c\u044f \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043a\u043e\u0434\u0443 \u044f\u0437\u044b\u043a\u0430. \u041a\u043e\u0434\u044b \u044f\u0437\u044b\u043a\u043e\u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0435\u0439 USB.org. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0434 0x409 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c\u0443 \u044f\u0437\u044b\u043a\u0443 (en-US).<\/td>\n<\/tr>\n<tr>\n<td>strings\/&lt;\u043a\u043e\u0434 \u044f\u0437\u044b\u043a\u0430>\/manufacturer<\/td>\n<td>\u0424\u0430\u0439\u043b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f<\/td>\n<\/tr>\n<tr>\n<td>strings\/&lt;\u043a\u043e\u0434 \u044f\u0437\u044b\u043a\u0430>\/manufacturer<\/td>\n<td>\u0424\u0430\u0439\u043b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430<\/td>\n<\/tr>\n<tr>\n<td>strings\/&lt;\u043a\u043e\u0434 \u044f\u0437\u044b\u043a\u0430>\/serialnumber<\/td>\n<td>\u0424\u0430\u0439\u043b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0441\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430<\/td>\n<\/tr>\n<tr>\n<td>os_desc\/<\/td>\n<td>\u041a\u0430\u0442\u0430\u043b\u043e\u0433 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u00abOS Description\u00bb. \u0412 \u043d\u0430\u0448\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u0445 \u043e\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430.<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<h3><font color=\"#3AC1EF\">\u258d \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u00abhid.mouse\u00bb \u0438 \u00abhid.keyboard\u00bb<\/font><\/h3>\n<p>  \u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043c\u044b\u0448\u043a\u0438 \u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438\u043c\u0435\u044e\u0442 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0449\u0443\u044e\u0441\u044f \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c.   <\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0424\u0430\u0439\u043b<\/td>\n<td>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>protocol<\/td>\n<td>\u041d\u043e\u043c\u0435\u0440 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430: 1 \u2013 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, 2 \u2013 \u043c\u044b\u0448\u044c<\/td>\n<\/tr>\n<tr>\n<td>subclass<\/td>\n<td>\u041d\u043e\u043c\u0435\u0440 \u043f\u043e\u0434\u043a\u043b\u0430\u0441\u0441\u0430. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 1, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439, \u0447\u0442\u043e \u044d\u0442\u043e \u043f\u043e\u0434\u043a\u043b\u0430\u0441\u0441 Boot Interface. \u0414\u0440\u0443\u0433\u0438\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u0430\u044f \u043d\u0430\u043c\u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0438 \u043c\u044b\u0448\u044c \u0431\u0443\u0434\u0443\u0442 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b \u0434\u0430\u0436\u0435 \u0441 BIOS.<\/td>\n<\/tr>\n<tr>\n<td>report_length<\/td>\n<td>\u0414\u043b\u0438\u043d\u0430 \u043e\u0442\u0447\u0451\u0442\u0430 \u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u043c \u043e\u0442\u0447\u0451\u0442\u0430 HID \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435: 8 \u2013 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, 4 \u2013 \u043c\u044b\u0448\u044c.<\/td>\n<\/tr>\n<tr>\n<td>report_desc<\/td>\n<td>\u0414\u0432\u043e\u0438\u0447\u043d\u044b\u0439 \u043a\u043e\u0434 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u0432 \u043e\u0442\u0447\u0451\u0442\u0430 HID-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432. \u0414\u0430\u043b\u0435\u0435 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0438\u0445 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e.<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>\u0412 \u043d\u0430\u0448\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u0445 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b \u043e\u0442\u0447\u0451\u0442\u043e\u0432 HID-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u043e\u0447\u0443\u044e\u0442 \u043f\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c open-source \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u043c, \u043d\u043e \u0442\u0435\u043c \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0438 \u0441\u0435\u0431\u044f \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u043c\u0438.   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440 \u043e\u0442\u0447\u0451\u0442\u0430 HID-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">0x05, 0x01,        \/\/ Usage Page (Generic Desktop Ctrls) 0x09, 0x06,        \/\/ Usage (Keyboard) 0xA1, 0x01,        \/\/ Collection (Application) 0x05, 0x07,        \/\/   Usage Page (Kbrd\/Keypad) 0x19, 0xE0,        \/\/   Usage Minimum (0xE0) 0x29, 0xE7,        \/\/   Usage Maximum (0xE7) 0x15, 0x00,        \/\/   Logical Minimum (0) 0x25, 0x01,        \/\/   Logical Maximum (1) 0x75, 0x01,        \/\/   Report Size (1) 0x95, 0x08,        \/\/   Report Count (8) 0x81, 0x02,        \/\/   Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x95, 0x01,        \/\/   Report Count (1) 0x75, 0x08,        \/\/   Report Size (8) 0x81, 0x03,        \/\/   Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x95, 0x05,        \/\/   Report Count (5) 0x75, 0x01,        \/\/   Report Size (1) 0x05, 0x08,        \/\/   Usage Page (LEDs) 0x19, 0x01,        \/\/   Usage Minimum (Num Lock) 0x29, 0x05,        \/\/   Usage Maximum (Kana) 0x91, 0x02,        \/\/   Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x95, 0x01,        \/\/   Report Count (1) 0x75, 0x03,        \/\/   Report Size (3) 0x91, 0x03,        \/\/   Output (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) 0x95, 0x06,        \/\/   Report Count (6) 0x75, 0x08,        \/\/   Report Size (8) 0x15, 0x00,        \/\/   Logical Minimum (0) 0x25, 0x65,        \/\/   Logical Maximum (101) 0x05, 0x07,        \/\/   Usage Page (Kbrd\/Keypad) 0x19, 0x00,        \/\/   Usage Minimum (0x00) 0x29, 0x65,        \/\/   Usage Maximum (0x65) 0x81, 0x00,        \/\/   Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) 0xC0,              \/\/ End Collection  \/\/ 63 bytes<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">\u0414\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b \u043e\u0442\u0447\u0451\u0442\u0430 HID-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u044b\u0448\u044c<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">0x05, 0x01,        \/\/ Usage Page (Generic Desktop Ctrls) 0x09, 0x02,        \/\/ Usage (Mouse) 0xA1, 0x01,        \/\/ Collection (Application) 0x09, 0x01,        \/\/   Usage (Pointer) 0xA1, 0x00,        \/\/   Collection (Physical) 0x05, 0x09,        \/\/     Usage Page (Button) 0x19, 0x01,        \/\/     Usage Minimum (0x01) 0x29, 0x05,        \/\/     Usage Maximum (0x05) 0x15, 0x00,        \/\/     Logical Minimum (0) 0x25, 0x01,        \/\/     Logical Maximum (1) 0x95, 0x05,        \/\/     Report Count (5) 0x75, 0x01,        \/\/     Report Size (1) 0x81, 0x02,        \/\/     Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x95, 0x01,        \/\/     Report Count (1) 0x75, 0x03,        \/\/     Report Size (3) 0x81, 0x01,        \/\/     Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) 0x05, 0x01,        \/\/     Usage Page (Generic Desktop Ctrls) 0x09, 0x30,        \/\/     Usage (X) 0x09, 0x31,        \/\/     Usage (Y) 0x09, 0x38,        \/\/     Usage (Wheel) 0x15, 0x81,        \/\/     Logical Minimum (-127) 0x25, 0x7F,        \/\/     Logical Maximum (127) 0x75, 0x08,        \/\/     Report Size (8) 0x95, 0x03,        \/\/     Report Count (3) 0x81, 0x06,        \/\/     Input (Data,Var,Rel,No Wrap,Linear,Preferred State,No Null Position) 0xC0,              \/\/   End Collection 0xC0,              \/\/ End Collection  \/\/ 52 bytes<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  \u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0432 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 <a href=\"#Liter\">[1]<\/a>.Appendix E: Example USB Descriptors for HID Class Devices \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Android \u043d\u0435 \u043f\u043e\u0434\u043e\u0448\u043b\u0438. <\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u0437\u0430\u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u043e\u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430\u043c\u0438 \u043e\u0442\u0447\u0451\u0442\u0430, \u0442\u043e \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 <a href=\"https:\/\/usb.org\/sites\/default\/files\/documents\/dt2_4.zip\">\u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439<\/a> \u043e\u0442 USB-IF, \u043b\u0438\u0431\u043e <a href=\"https:\/\/eleccelerator.com\/usbdescreqparser\/\">\u043e\u043d\u043b\u0430\u0439\u043d-\u043f\u0430\u0440\u0441\u0435\u0440\u043e\u043c<\/a> \u043e\u0442 Frank Zhao.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 mass_storage.0<\/font><\/h3>\n<p>  \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438, \u043a\u0430\u0442\u0430\u043b\u043e\u0433, \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0444\u043b\u0435\u0448\u043a\u0438, \u0438\u043c\u0435\u0435\u0442 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u0434\u0440\u0443\u0433\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443  <\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0424\u0430\u0439\u043b<\/td>\n<td>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>stall<\/td>\n<td>\u0424\u0430\u0439\u043b-\u0444\u043b\u0430\u0433, \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u044e\u0449\u0438\u0439 (\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u00ab1\u00bb) \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u0445 \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0445 \u0442\u043e\u0447\u0435\u043a (bulk endpoints). \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0432\u043a\u043b\u044e\u0447\u0451\u043d. \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c.<\/td>\n<\/tr>\n<tr>\n<td>\/lun.&lt;\u0447\u0438\u0441\u043b\u043e>\/<\/td>\n<td>\u041f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f (LUN).<\/td>\n<\/tr>\n<tr>\n<td>\/lun.&lt;\u0447\u0438\u0441\u043b\u043e>\/file<\/td>\n<td>\u0424\u0430\u0439\u043b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u043e\u0431\u0440\u0430\u0437\u0430 \u0444\u043b\u0435\u0448\u043a\u0438.<\/td>\n<\/tr>\n<tr>\n<td>ro<\/td>\n<td>\u0424\u0430\u0439\u043b-\u0444\u043b\u0430\u0433, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. 0 \u2013 \u0437\u0430\u043f\u0438\u0441\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430, 1 \u2013 \u0437\u0430\u043f\u0440\u0435\u0449\u0435\u043d\u0430 (read-only).<\/td>\n<\/tr>\n<tr>\n<td>removable<\/td>\n<td>\u0424\u0430\u0439\u043b-\u0444\u043b\u0430\u0433, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a \u043e\u0442\u0447\u0443\u0436\u0434\u0430\u0435\u043c\u043e\u0435. 1 \u2013 \u0434\u0430, 0 \u2013 \u043d\u0435\u0442.<\/td>\n<\/tr>\n<tr>\n<td>cd<\/td>\n<td>\u0424\u0430\u0439\u043b-\u0444\u043b\u0430\u0433, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c CD-ROM. 1 \u2013 \u0434\u0430, 0 \u2013 \u043d\u0435\u0442.<\/td>\n<\/tr>\n<tr>\n<td>nofua<\/td>\n<td>\u0424\u0430\u0439\u043b-\u0444\u043b\u0430\u0433, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e SCSI FUA. 1 \u2013 \u0434\u0430, 0 \u2013 \u043d\u0435\u0442.<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<h3><font color=\"#3AC1EF\">\u258d \u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \/dev\/hidg0 \u0438 \/dev\/hidg1<\/font><\/h3>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u043c \u043f\u0440\u043e\u0444\u0438\u043b\u0435 USB-\u043f\u043e\u0440\u0442\u0430 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438, \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0434\u0432\u0430 \u043d\u043e\u0432\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \/dev\/hidg0 \u0438 \/dev\/hidg1. \u041f\u0435\u0440\u0432\u043e\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435, \u0430 \u0432\u0442\u043e\u0440\u043e\u0435 \u2014 \u043c\u044b\u0448\u0438. \u041f\u043e\u0441\u044b\u043b\u0430\u044f \u043e\u0442\u0447\u0451\u0442\u044b \u0432 \u044d\u0442\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0438\u043c\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043d\u043e\u043f\u043e\u043a \u043d\u0430 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0435 \u0438\u043b\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043c\u044b\u0448\u0438. <\/p>\n<p>  \u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438\u043b\u0438 \u043c\u044b\u0448\u043a\u0438 \u0432 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u043c USB \u043f\u0440\u043e\u0444\u0438\u043b\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u044d\u0442\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043d\u0443\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c. \u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u043e\u0442\u0447\u0451\u0442\u044b, \u0438 \u043a\u0430\u043a \u0438\u0445 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u0434\u0430\u043b\u0435\u0435.<\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 USB-\u043f\u043e\u0440\u0442\u0430 \u0432 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435<\/font><\/h3>\n<p>  \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u044f \u0442\u0435\u043c\u0443 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 USB-\u043f\u043e\u0440\u0442\u0430 \u0432 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0435\u0449\u0451 \u0440\u044f\u0434 \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0442 \u0432\u0430\u043c \u0433\u043b\u0443\u0431\u0436\u0435 \u043f\u043e\u043a\u043e\u0432\u044b\u0440\u044f\u0442\u044c\u0441\u044f \u0432 \u044d\u0442\u043e\u0439 \u0442\u0435\u043c\u0435.<\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u044f<\/font><\/h4>\n<p>  \u041f\u0435\u0440\u0432\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u0440\u0430\u043d\u0435\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c USB-\u043f\u043e\u0440\u0442\u0430. \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0444\u0438\u043b\u044f \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430. <br \/>  <i>\u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u0435. \u041d\u0435 \u0443\u0434\u0430\u043b\u044f\u0439\u0442\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043f\u0440\u043e\u0444\u0438\u043b\u044c \u00abg1\u00bb, \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u0438\u0441\u043d\u0443\u0442\u044c.<\/i>   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">remove_profile.sh<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/system\/bin\/sh # remove_profile.sh   PROFILE_NAME=\"$1\" PROFILE_BASEPATH=\"\/config\/usb_gadget\/\" PROFILE_PATH=\"${PROFILE_BASEPATH}${PROFILE_NAME}\"  if [ -z \"$PROFILE_NAME\" ]; then   echo \"Specify the profile name: \\n$(ls $PROFILE_BASEPATH)\"   exit 1 fi  # Stop profile echo \"\" > ${PROFILE_PATH}\/UDC  # Disable active functions find ${PROFILE_PATH}\/configs\/ -type l -delete  # Remove config find ${PROFILE_PATH}\/configs\/ -type d -delete  # Remove functions find ${PROFILE_PATH}\/functions\/ -type d -delete  # Remove strings find ${PROFILE_PATH}\/strings\/ -type d -delete  # Remove profile rmdir \"$PROFILE_PATH\"<\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 USB \u043f\u0440\u043e\u0444\u0438\u043b\u044f\u0445<\/font><\/h4>\n<p>  \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u0438\u043c\u0435\u044e\u0449\u0438\u0445\u0441\u044f \u043f\u0440\u043e\u0444\u0438\u043b\u044f\u0445, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0432 \u043f\u0440\u043e\u0444\u0438\u043b\u0435.  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">get_profiles_info.sh<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/system\/bin\/sh # get_profiles_info.sh  for dir in \/config\/usb_gadget\/*\/ do   echo PROFILE_PATH=$dir   cd ${dir}configs\/   echo CONFIG_PATH=\"${dir}configs\/$(ls -1 | head -1)\/\"   cd $dir   if [ \"$?\" -ne \"0\" ]; then     echo \"Error. Unable to change dir to $dir... exit\"     exit 1   fi   echo UDC=$(cat UDC)   find .\/configs\/ -type l -exec sh -c 'echo FUNCTIONS_ACTIVE=$(basename $(readlink \"$@\"))' _ {} \\;    for f in `ls -1 .\/functions\/`;   do     echo FUNCTIONS=$f;   done;    cd .\/strings\/0x409\/;   for vars in *   do     echo ${vars}=$(cat $vars)   done   echo \"=============\"  done<\/code><\/pre>\n<p>  <\/div>\n<\/p><\/div>\n<p>  <\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b, \u043c\u044b\u0448\u0438 \u0438 \u0444\u043b\u0435\u0448\u043a\u0438 \u043a \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0444\u0438\u043b\u044e USB-\u043f\u043e\u0440\u0442\u0430<\/font><\/h4>\n<p>  \u041a\u0430\u043a \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u043b\u043e\u0441\u044c \u0440\u0430\u043d\u0435\u0435, \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c USB-\u043f\u043e\u0440\u0442 \u043c\u043e\u0436\u043d\u043e \u043a\u0430\u043a \u043f\u0443\u0442\u0451\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0444\u0438\u043b\u044f, \u0442\u0430\u043a \u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u0443\u0436\u0435 \u0438\u043c\u0435\u044e\u0449\u0435\u043c\u0441\u044f \u043f\u0440\u043e\u0444\u0438\u043b\u0435. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u043d\u0438\u0436\u0435 \u0441\u043a\u0440\u0438\u043f\u0442 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b, \u043c\u044b\u0448\u0438 \u0438 \u0444\u043b\u0435\u0448\u043a\u0438 \u043a \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u043c\u0443 USB-\u043f\u0440\u043e\u0444\u0438\u043b\u044e.  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">enable_func_in_sys_profile.sh<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/system\/bin\/sh # enable_func_in_sys_profile.sh  PROFILE_NAME=\"g1\" PROFILE_BASEPATH=\"\/config\/usb_gadget\/\" PROFILE_PATH=\"${PROFILE_BASEPATH}${PROFILE_NAME}\" PROFILE_CONFIG_NAME=\"b.1\" STORAGE_FILE_NAME=\"\/data\/data\/com.termux\/files\/home\/storage_file.img\" STORAGE_FILE_SIZE=\"100M\"  KEYBOARD_REPORT_DESC=\"\\ \\\\x05\\\\x01\\\\x09\\\\x06\\\\xa1\\\\x01\\\\x05\\\\x07\\\\x19\\\\xe0\\\\x29\\\\xe7\\ \\\\x15\\\\x00\\\\x25\\\\x01\\\\x75\\\\x01\\\\x95\\\\x08\\\\x81\\\\x02\\\\x95\\\\x01\\ \\\\x75\\\\x08\\\\x81\\\\x03\\\\x95\\\\x05\\\\x75\\\\x01\\\\x05\\\\x08\\\\x19\\\\x01\\ \\\\x29\\\\x05\\\\x91\\\\x02\\\\x95\\\\x01\\\\x75\\\\x03\\\\x91\\\\x03\\\\x95\\\\x06\\ \\\\x75\\\\x08\\\\x15\\\\x00\\\\x25\\\\x65\\\\x05\\\\x07\\\\x19\\\\x00\\\\x29\\\\x65\\ \\\\x81\\\\x00\\\\xc0\"  MOUSE_REPORT_DESC=\"\\ \\\\x05\\\\x01\\\\x09\\\\x02\\\\xa1\\\\x01\\\\x09\\\\x01\\\\xa1\\\\x00\\\\x05\\\\x09\\ \\\\x19\\\\x01\\\\x29\\\\x05\\\\x15\\\\x00\\\\x25\\\\x01\\\\x95\\\\x05\\\\x75\\\\x01\\ \\\\x81\\\\x02\\\\x95\\\\x01\\\\x75\\\\x03\\\\x81\\\\x01\\\\x05\\\\x01\\\\x09\\\\x30\\ \\\\x09\\\\x31\\\\x09\\\\x38\\\\x15\\\\x81\\\\x25\\\\x7F\\\\x75\\\\x08\\\\x95\\\\x03\\ \\\\x81\\\\x06\\\\xc0\\\\xc0\"   # create keyboard function mkdir -p \"$PROFILE_PATH\/functions\/hid.keyboard\" cd \"$PROFILE_PATH\/functions\/hid.keyboard\" if [ $? -eq 0 ]; then     echo 1 > protocol # Keyboard     echo 1 > subclass # Boot Interface Subclass     echo 8 > report_length     echo -ne $KEYBOARD_REPORT_DESC > report_desc else     echo \"keyboard function create fail\"     exit 1 fi  # create mouse function mkdir -p \"$PROFILE_PATH\/functions\/hid.mouse\" cd \"$PROFILE_PATH\/functions\/hid.mouse\" if [ $? -eq 0 ]; then     echo 2 > protocol # Mouse     echo 1 > subclass # Boot Interface Subclass     echo 4 > report_length     echo -ne $MOUSE_REPORT_DESC > report_desc else     echo \"mouse function create fail\"     exit 1 fi  # create mass_storage image file if [ ! -f \"$STORAGE_FILE_NAME\" ]; then     fallocate -l $STORAGE_FILE_SIZE $STORAGE_FILE_NAME fi  # create mass_storage function mkdir -p \"$PROFILE_PATH\/functions\/mass_storage.0\" cd \"$PROFILE_PATH\/functions\/mass_storage.0\/lun.0\" if [ $? -eq 0 ]; then     echo 1 >..\/stall     echo 0 > cdrom     echo 0 > removable     echo 0 > ro     echo 0 > nofua     echo \"$STORAGE_FILE_NAME\" > file else     echo \"mass_storage function create fail\"     exit 1 fi  # Disable current profile echo \"\" > $PROFILE_PATH\/UDC  # Enable keyboard, mouse and mass storage functions cd \"$PROFILE_PATH\/configs\/$PROFILE_CONFIG_NAME\/\" if [ $? -eq 0 ]; then     ln -s \"$PROFILE_PATH\/functions\/hid.keyboard\" .\/     ln -s \"$PROFILE_PATH\/functions\/hid.mouse\" .\/     ln -s \"$PROFILE_PATH\/functions\/mass_storage.0\" .\/ else     echo \"functions enable fail\"     exit 1 fi  # Enable current profile ls \/sys\/class\/udc > $PROFILE_PATH\/UDC  exit 0<\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u041e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b, \u043c\u044b\u0448\u0438 \u0438 \u0444\u043b\u0435\u0448\u043a\u0438 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u043c USB-\u043f\u0440\u043e\u0444\u0438\u043b\u0435<\/font><\/h4>\n<p>  \u042d\u0442\u043e \u0441\u043a\u0440\u0438\u043f\u0442 \u0430\u043d\u0442\u0430\u0433\u043e\u043d\u0438\u0441\u0442 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c\u0443. \u041e\u043d \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 (\u043d\u043e \u043d\u0435 \u0443\u0434\u0430\u043b\u044f\u0435\u0442) \u0440\u0430\u043d\u0435\u0435 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u043c \u043f\u0440\u043e\u0444\u0438\u043b\u0435.  <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">disable_func_in_sys_profile.sh<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/system\/bin\/sh # disable_func_in_sys_profile.sh  PROFILE_NAME=\"g1\" PROFILE_BASEPATH=\"\/config\/usb_gadget\/\" PROFILE_PATH=\"${PROFILE_BASEPATH}${PROFILE_NAME}\" PROFILE_CONFIG_NAME=\"b.1\"  # Stop profile echo \"\" > \"${PROFILE_PATH}\/UDC\"  rm \"${PROFILE_PATH}\/configs\/$PROFILE_CONFIG_NAME\/hid.keyboard\" rm \"${PROFILE_PATH}\/configs\/$PROFILE_CONFIG_NAME\/hid.mouse\" rm \"${PROFILE_PATH}\/configs\/$PROFILE_CONFIG_NAME\/mass_storage.0\"  # Start profile ls \/sys\/class\/udc > \"${PROFILE_PATH}\/UDC\"  exit 0 <\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<h2><font color=\"#3AC1EF\">\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 USB-\u043f\u043e\u0440\u0442\u0430 \u0432 Android<\/font><\/h2>\n<p>  <\/p>\n<h3><font color=\"#3AC1EF\">\u258d \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b<\/font><\/h3>\n<p>  USB-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f (\u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u0438\u043b\u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438) \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442 \u043e\u0442\u0447\u0451\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 (<a href=\"#Liter\">[1]<\/a>.B.1 Protocol 1 (Keyboard)):   <\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0411\u0430\u0439\u0442<\/td>\n<td>\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>0<\/td>\n<td>\u041c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>\u0420\u0435\u0437\u0435\u0440\u0432<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>\u041a\u043e\u0434 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 1<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>\u041a\u043e\u0434 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 2<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>\u041a\u043e\u0434 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 3<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>\u041a\u043e\u0434 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 4<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>\u041a\u043e\u0434 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 5<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>\u041a\u043e\u0434 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 6<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>\u041c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b, \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u0435\u0441\u044f \u0432 \u0411\u0430\u0439\u0442\u0435 0 \u043e\u0442\u0447\u0451\u0442\u0430, \u0438\u043c\u0435\u044e\u0442 \u0444\u043e\u0440\u043c\u0430\u0442 (<a href=\"#Liter\">[1]<\/a>.8.3 Report Format for Array Items):  <\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0411\u0438\u0442<\/td>\n<td>\u041d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>0<\/td>\n<td>LEFT CTRL<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>LEFT SHIFT<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>LEFT ALT<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>LEFT GUI<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>RIGHT CTRL<\/td>\n<\/tr>\n<tr>\n<td>5<\/td>\n<td>RIGHT SHIFT<\/td>\n<\/tr>\n<tr>\n<td>6<\/td>\n<td>RIGHT ALT<\/td>\n<\/tr>\n<tr>\n<td>7<\/td>\n<td>RIGHT GUI<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>\u0412 \u0431\u0430\u0439\u0442\u0430\u0445 (2-7) \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043a\u043e\u0434\u044b \u043d\u0430\u0436\u0430\u0442\u044b\u0445 \u043a\u043b\u0430\u0432\u0438\u0448, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0432 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 <a href=\"#Liter\">[2]<\/a>.Keyboard\/Keypad Page (0x07). \u0418\u0437-\u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043e\u0431\u044a\u0451\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u0434\u044b \u0432\u0441\u0435\u0445 \u043a\u043b\u0430\u0432\u0438\u0448 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u043c, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u043c\u0441\u044f \u043b\u0438\u0448\u044c \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u043e\u043c (\u0420\u0438\u0441. 4), \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430 \u0440\u0430\u0431\u043e\u0442\u044b.   <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/qr\/ls\/ij\/qrlsij5egm-amzfbhzic_mqk8fu.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/qr\/ls\/ij\/qrlsij5egm-amzfbhzic_mqk8fu.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><i><font color=\"#999999\">\u0420\u0438\u0441. 4<\/font><\/i><\/p>\n<p>  \u0421\u0430\u043c\u0430 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0432 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435, \u0442\u0430\u043a \u0447\u0442\u043e \u0432\u044b \u043b\u0435\u0433\u043a\u043e \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0435\u0451 \u043d\u0430\u0439\u0442\u0438. \u041a\u0440\u043e\u043c\u0435 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c <a href=\"https:\/\/github.com\/tmk\/tmk_keyboard\/wiki\/USB:-HID-Usage-Table\">GitHub-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 tmk_keyboard<\/a>, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0432\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u043a\u0430\u0440\u0442\u0443 \u043a\u043e\u0434\u043e\u0432 \u043a\u043d\u043e\u043f\u043e\u043a. \u041d\u0430 \u043f\u0435\u0440\u0432\u044b\u0445 \u044d\u0442\u0430\u043f\u0430\u0445 \u043e\u043d, \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u0431\u0443\u0434\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c.<\/p>\n<p>  \u0421\u043e \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043f\u043e\u043a\u043e\u043d\u0447\u0435\u043d\u043e, \u043f\u0435\u0440\u0435\u0439\u0434\u0451\u043c \u043a \u0430\u043d\u0430\u043b\u0438\u0437\u0443 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430 \u0440\u0430\u0431\u043e\u0442\u044b. \u041a\u0430\u043a \u0432\u044b \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0443\u0436\u0435 \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, USB-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043d\u0430\u0436\u0430\u0442\u0438\u0435 6 \u043a\u043b\u0430\u0432\u0438\u0448, \u0430 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043a\u043b\u0430\u0432\u0438\u0448 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u0432 \u044d\u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e 14. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0432\u044f\u0437\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u0435\u0451 \u0440\u0430\u0431\u043e\u0442\u044b (<a href=\"#Liter\">[1]<\/a>.Appendix C: Keyboard Implementation) \u0438\u043c\u0435\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u0443\u044e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0443: \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b. \u0414\u0440\u0443\u0433\u0438\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u0436\u0430\u043b \u043a\u043d\u043e\u043f\u043a\u0443, \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e, \u0435\u0441\u043b\u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442, \u0442\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f, \u0435\u0441\u043b\u0438 \u043e\u0442\u043f\u0443\u0441\u0442\u0438\u043b, \u0442\u043e \u043e\u043f\u044f\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435. <\/p>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0441 \u044d\u0442\u0438\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u044f\u0434 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432:<\/p>\n<ol>\n<li>\u0412 \u0441\u043a\u0440\u0438\u043f\u0442\u0435, \u0438\u043c\u0438\u0442\u0438\u0440\u0443\u044e\u0449\u0435\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u00ab\u0430\u00bb, \u043c\u044b \u0438\u043c\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043e\u043d \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0436\u0430\u043b \u043a\u043d\u043e\u043f\u043a\u0443 \u00ab\u0430\u00bb, \u0430 \u043f\u043e\u0442\u043e\u043c \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u043b \u0432\u0441\u0435 \u043d\u0430\u0436\u0430\u0442\u044b\u0435 \u043a\u043d\u043e\u043f\u043a\u0438. \u041f\u043e \u0444\u0430\u043a\u0442\u0443 \u043c\u044b \u043f\u043e\u0441\u044b\u043b\u0430\u043b\u0438 \u0432 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443 \u0434\u0432\u0430 \u043e\u0442\u0447\u0451\u0442\u0430:\n<ul>\n<li>00 00 04 00 00 00 00 00 \u2013 \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u00ab\u0430\u00bb;<\/li>\n<li>00 00 00 00 00 00 00 00 \u2013 \u043e\u0442\u043f\u0443\u0441\u043a \u0432\u0441\u0435\u0445 \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u0436\u0430\u0442\u044b\u0445 \u043a\u043d\u043e\u043f\u043e\u043a.<\/li>\n<\/ul>\n<\/li>\n<li>\u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u043c. \u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0438\u043c\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0432\u043e\u0434 \u0437\u0430\u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u00ab\u0410\u00bb. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0441\u043b\u0430\u0442\u044c \u043e\u0442\u0447\u0451\u0442, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u043a\u043e\u0434 \u0431\u0443\u043a\u0432\u044b \u00ab\u0430\u00bb \u0441 \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u043c \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u043e\u043c Left Shift (\u0445\u043e\u0442\u044f \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0438 Right Shift). \u041e\u0442\u0447\u0451\u0442 \u0434\u043b\u044f \u0432\u0432\u043e\u0434\u0430 \u0437\u0430\u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u00ab\u0410\u00bb \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:\n<ul>\n<li>02 00 04 00 00 00 00 00 \u2013 \u0432\u0432\u043e\u0434 \u00ab\u0410\u00bb.<\/li>\n<\/ul>\n<\/li>\n<li>\u0427\u0442\u043e \u0431\u0443\u0434\u0435\u0442, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u0448\u043b\u0451\u043c \u043e\u0442\u0447\u0451\u0442 \u0432 \u043d\u0430\u0436\u0430\u0442\u043e\u0439 \u00ab\u0410\u00bb \u0438 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u043b\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u043c? \u0410 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0451\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435. \u041f\u041e \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043f\u043e\u0434\u043e\u0436\u0434\u0451\u0442 0,5 \u0441\u0435\u043a, \u0430 \u0437\u0430\u0442\u0435\u043c \u0431\u0443\u0434\u0435\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u00ab\u0410\u00bb \u0438 \u0431\u0443\u0434\u0435\u0442 \u044d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u043d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442 \u043a\u043e\u0434 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u0432\u0441\u0435\u0445 \u043a\u043b\u0430\u0432\u0438\u0448.<\/li>\n<li>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0442\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c\u0441\u044f, \u0447\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442 \u00ab\u043e\u0442\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443\u00bb \u0438 \u00ab\u043e\u0442\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0441\u0435 \u043a\u043d\u043e\u043f\u043a\u0438\u00bb. \u041f\u043e\u043d\u044f\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u0442 \u043a\u043d\u043e\u043f\u043a\u0443 \u00ab\u0430\u00bb, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442 \u043e\u0442\u0447\u0451\u0442 \u00ab00 00 04 00 00 00 00 00\u00bb. \u0417\u0430\u0442\u0435\u043c, \u043d\u0435 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u044f \u0435\u0451 \u043e\u043d \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u0442 \u00abm\u00bb \u2013 \u0442\u043e\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0430\u043d \u043a\u043e\u0434 \u00ab00 00 04 10 00 00 00 00\u00bb. \u0422\u0435\u043f\u0435\u0440\u044c \u043e\u043d, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u00abm\u00bb \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u00aba\u00bb \u2013 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0430\u043d \u043e\u0442\u0447\u0451\u0442 \u00ab00 00 10 00 00 00 00 00\u00bb. \u0422\u043e \u0435\u0441\u0442\u044c, \u043a\u043e\u0434 \u00ab\u0430\u00bb (04) \u043f\u0440\u043e\u043f\u0430\u043b, \u0430 \u0435\u0433\u043e \u043c\u0435\u0441\u0442\u043e \u0437\u0430\u043d\u044f\u043b \u043a\u043e\u0434 \u00abm\u00bb (10). \u041a\u043e\u0433\u0434\u0430 \u043e\u043d \u043e\u0442\u043f\u0443\u0441\u0442\u0438\u0442 \u00abm\u00bb \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0441\u043b\u0430\u043d \u043a\u043e\u0434 \u00ab00 00 00 00 00 00 00 00\u00bb. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043a\u043e\u0434\u0430 \u043e\u0442\u043f\u0443\u0441\u043a\u0430 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442. \u0417\u0430\u0442\u043e \u0435\u0441\u0442\u044c \u043a\u043e\u0434, \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0430\u044e\u0449\u0438\u0439, \u0447\u0442\u043e \u0432\u0441\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 \u043e\u0442\u043f\u0443\u0449\u0435\u043d\u044b.<\/li>\n<\/ol>\n<p>  \u0417\u0430\u043a\u043e\u043d\u0447\u0438\u043c \u0441 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043e\u0439, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0432 \u0441\u043a\u0440\u0438\u043f\u0442, \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0431\u043b\u043e\u043a\u043d\u043e\u0442 \u0438 \u043f\u0435\u0447\u0430\u0442\u0430\u044e\u0449\u0438\u0439 \u0432 \u043d\u0451\u043c \u00abHello World!!\u00bb.   <\/p>\n<div class=\"spoiler\" role=\"button\" tabindex=\"0\">                         <b class=\"spoiler_title\">print_hello_world.sh<\/b>                         <\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/system\/bin\/sh # print_hello_world.sh  echo \"\\x08\\x00\\x15\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press Win+R sleep 1s # wait until window apears echo \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # release key echo \"\\x00\\x00\\x11\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press n echo \"\\x00\\x00\\x12\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press o echo \"\\x00\\x00\\x17\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press t echo \"\\x00\\x00\\x08\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press e echo \"\\x00\\x00\\x13\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press p echo \"\\x00\\x00\\x04\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press a echo \"\\x00\\x00\\x07\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press d echo \"\\x00\\x00\\x37\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press . echo \"\\x00\\x00\\x08\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press e echo \"\\x00\\x00\\x1B\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press x echo \"\\x00\\x00\\x08\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press e echo \"\\x00\\x00\\x28\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press Enter echo \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # release key sleep 3s # wait until window apears echo \"\\x02\\x00\\x0B\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press H echo \"\\x00\\x00\\x08\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press e echo \"\\x00\\x00\\x0F\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press l echo \"\\x00\\x00\\x0F\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press l echo \"\\x00\\x00\\x12\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press o echo \"\\x00\\x00\\x2C\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press Space echo \"\\x02\\x00\\x1A\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press W echo \"\\x00\\x00\\x12\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press o echo \"\\x00\\x00\\x15\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press r echo \"\\x00\\x00\\x0F\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press l echo \"\\x00\\x00\\x07\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press d echo \"\\x02\\x00\\x1E\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # press ! echo \"\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\" > \/dev\/hidg0 # release key <\/code><\/pre>\n<\/div><\/div>\n<p>  <\/p>\n<h4><font color=\"#3AC1EF\">\u258d \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0434\u043b\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b<\/font><\/h4>\n<p>  \u0427\u0435\u043b\u043e\u0432\u0435\u043a, \u043a\u043e\u0433\u0434\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0437\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u043c, \u0432\u0438\u0434\u0438\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0441\u0432\u043e\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b, \u0430 \u0441\u043a\u0440\u0438\u043f\u0442, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0448 \u2013 \u043d\u0435\u0442, \u044d\u0442\u043e \u043f\u043e\u0440\u043e\u0436\u0434\u0430\u0435\u0442 \u0440\u044f\u0434 \u043f\u0440\u043e\u0431\u043b\u0435\u043c:<\/p>\n<ol>\n<li>\u0417\u0430\u0440\u0430\u043d\u0435\u0435 \u043d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u043a\u0430\u043a\u0430\u044f \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043d\u0430\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u0430 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435. \u0421\u043a\u0440\u0438\u043f\u0442 \u0432\u043c\u0435\u0441\u0442\u043e \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0445 \u0431\u0443\u043a\u0432 \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0447\u0430\u0442\u044c \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u0443\u0441\u0441\u043a\u0438\u0435 \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442. \u041d\u0435 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b \u0442\u0430\u043a\u0436\u0435 \u0433\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043a\u0430\u043a Shift+Alt, \u0442\u0430\u043a \u0438 Ctrl+Shift \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u0435.<\/li>\n<li>\u0415\u0441\u043b\u0438 \u0441\u043a\u0440\u0438\u043f\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u0442\u043e \u0438\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u0440\u0435\u043c\u044f \u043d\u0430 \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0443 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0444\u043e\u043a\u0443\u0441\u0430 \u0432\u0432\u043e\u0434\u0430. \u041f\u0440\u0438\u0447\u0451\u043c \u0432\u0440\u0435\u043c\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432 \u043e\u0431\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u043e\u0436\u0435\u0442 \u0441\u0438\u043b\u044c\u043d\u043e \u0432\u0430\u0440\u044c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f. \u041a\u043d\u043e\u043f\u043a\u0438, \u043d\u0430\u0436\u0430\u0442\u044b\u0435 \u0434\u043e \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u0432 \u043b\u0443\u0447\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u043e\u0433\u0443\u0442 \u0443\u0439\u0442\u0438 \u00ab\u0432 \u043c\u043e\u043b\u043e\u043a\u043e\u00bb, \u0430 \u0445\u0443\u0434\u0448\u0435\u043c \u2013 \u043d\u0430\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043b\u043e\u0445\u0438\u0445 \u0434\u0435\u043b.<\/li>\n<\/ol>\n<h3><font color=\"#3AC1EF\">\u258d \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0441 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u043c\u044b\u0448\u0438<\/font><\/h3>\n<p>  \u041c\u044b\u0448\u044c, \u043a\u0430\u043a \u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442 \u043e\u0442\u0447\u0451\u0442. \u0424\u043e\u0440\u043c\u0430\u0442 \u043e\u0442\u0447\u0451\u0442\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d \u0432 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 <a href=\"#Liter\">[1]<\/a>.B.2 Protocol 2 (Mouse). \u041f\u043e\u0441\u043b\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0430\u0434 Android, \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u043c \u0432 \u043c\u044b\u0448\u044c, \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e \u043e\u0442\u0447\u0451\u0442\u0430 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u044c, \u0438 \u0432 \u0438\u0442\u043e\u0433\u0435 \u043e\u043d\u0430 \u0441\u0442\u0430\u043b\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u0442\u0430\u043a:<\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0411\u0430\u0439\u0442<\/td>\n<td>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>0<\/td>\n<td>\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043a\u043d\u043e\u043f\u043e\u043a<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>\u041f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043f\u043e X (\u00ab+\u00bb \u2013 \u0432\u043b\u0435\u0432\u043e, \u00ab-\u00bb \u2013 \u0432\u043f\u0440\u0430\u0432\u043e)<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>\u041f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043f\u043e Y (\u00ab+\u00bb \u2013 \u0432\u0432\u0435\u0440\u0445, \u00ab-\u00bb \u2013 \u0432\u043d\u0438\u0437)<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>\u041a\u043e\u043b\u0451\u0441\u0438\u043a\u043e (\u00ab+\u00bb \u2013 \u0432\u0432\u0435\u0440\u0445, \u00ab-\u00bb \u2013 \u0432\u043d\u0438\u0437)<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>\u0411\u0430\u0439\u0442\u044b 1-3 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043e\u0442 -127 \u0434\u043e 127. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0433\u0434\u0435 00 hex = 0 dec, 01 hex = 1 dec, 7F hex = 127, 81 hex = -127 dec, FF hex = -1 dec, 80 hex \u2013 \u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f. \u0411\u0430\u0439\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043a\u043d\u043e\u043f\u043e\u043a \u043c\u044b\u0448\u0438 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u0430\u043a (1 \u2013 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043d\u0430\u0436\u0430\u0442\u0438\u0435 \u043a\u043d\u043e\u043f\u043a\u0438, 0 \u2013 \u043e\u0442\u043f\u0443\u0441\u043a):<\/p>\n<div class=\"scrollable-table\">\n<table>\n<tr>\n<td>\u0411\u0438\u0442<\/td>\n<td>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/td>\n<\/tr>\n<tr>\n<td>0<\/td>\n<td>\u041b\u0435\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>\u041f\u0440\u0430\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>\u0421\u0440\u0435\u0434\u043d\u044f\u044f \u043a\u043d\u043e\u043f\u043a\u0430<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043d\u0430\u0437\u0430\u0434<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u0432\u043f\u0435\u0440\u0451\u0434<\/td>\n<\/tr>\n<tr>\n<td>5-7<\/td>\n<td>\u041d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<p>\u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u043c\u044b\u0448\u0438 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 USB-\u043e\u0442\u0447\u0451\u0442\u0430 \u043e\u0442 \u043c\u044b\u0448\u0438 (\u0420\u0438\u0441. 5).<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/is\/nh\/fk\/isnhfku7arqgztp5jwamholy8da.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/is\/nh\/fk\/isnhfku7arqgztp5jwamholy8da.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><i><font color=\"#999999\">\u0420\u0438\u0441. 5<\/font><\/i><\/p>\n<p>  \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0432 \u0432\u0435\u0440\u0445\u043d\u0435\u043c \u043b\u0435\u0432\u043e\u043c \u0443\u0433\u043b\u0443 \u044d\u043a\u0440\u0430\u043d\u0430. \u041e\u0441\u044c X \u0440\u0430\u0441\u0442\u0451\u0442 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e, \u043e\u0441\u044c Y \u0441\u0432\u0435\u0440\u0445\u0443 \u0432\u043d\u0438\u0437. \u041d\u043e\u0432\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e \u0444\u043e\u0440\u043c\u0443\u043b\u0430\u043c: <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/088\/05d\/579\/08805d57999618300b9e9bd3fb05a830.svg\" alt=\"$New X = Old X + Move X$\" data-tex=\"display\"\/><\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/formulas\/0b9\/801\/bcf\/0b9801bcff44b20205e51a62ddfd1b4d.svg\" alt=\"$New Y = Old Y + Move Y$\" data-tex=\"display\"\/><\/p>\n<p>  \u0433\u0434\u0435 New X \u2013 \u043d\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b X \u043a\u0443\u0440\u0441\u043e\u0440\u0430, Old X \u2013 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b X \u043a\u0443\u0440\u0441\u043e\u0440\u0430, Move X \u2013 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b X \u043a\u0443\u0440\u0441\u043e\u0440\u0430, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 \u0438\u0437 USB \u043e\u0442\u0447\u0451\u0442\u0430 \u043c\u044b\u0448\u0438. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u044f New Y, Old Y \u0438 Move Y \u2013 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b, \u043d\u043e \u0434\u043b\u044f \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b Y. \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Move X \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435, \u0442\u043e \u043a\u0443\u0440\u0441\u043e\u0440 \u0441\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432\u043b\u0435\u0432\u043e, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435, \u0442\u043e \u0432\u043f\u0440\u0430\u0432\u043e. \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 Move Y \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435, \u0442\u043e \u043a\u0443\u0440\u0441\u043e\u0440 \u043f\u043e\u0434\u044b\u043c\u0430\u0435\u0442\u0441\u044f \u0432\u0432\u0435\u0440\u0445, \u0438\u043d\u0430\u0447\u0435 \u0441\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432\u043d\u0438\u0437.<\/p>\n<p>  \u041a\u043e\u043b\u0451\u0441\u0438\u043a\u043e \u043c\u044b\u0448\u043a\u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0443: \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u2013 \u0441\u043a\u0440\u043e\u043b\u043b\u0438\u043d\u0433 \u0432\u0432\u0435\u0440\u0445, \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u2013 \u0441\u043a\u0440\u043e\u043b\u043b\u0438\u043d\u0433 \u0432\u043d\u0438\u0437. \u0412\u0435\u043b\u0438\u0447\u0438\u043d\u0430 \u0441\u043a\u0440\u043e\u043b\u043b\u043b\u0438\u043d\u0433\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u00ab\u043a\u043e\u043b\u0451\u0441\u0438\u043a\u043e\u00bb \u0432 USB-\u043e\u0442\u0447\u0451\u0442\u0435.<\/p>\n<p>  C \u043c\u044b\u0448\u043a\u043e\u0439 \u043d\u0435 \u0432\u0441\u0451 \u0442\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e. \u0415\u0441\u0442\u044c \u0440\u044f\u0434 \u043d\u044e\u0430\u043d\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c:<\/p>\n<ol>\n<li>\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u044b\u0435 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u044b \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u043c\u044b\u0448\u0438 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438. \u0427\u0442\u043e\u0431\u044b \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u0433\u043b\u0430 \u043f\u0435\u0440\u0435\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u043a\u0443\u0440\u0441\u043e\u0440 \u0432 \u043d\u043e\u0432\u043e\u043c \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0438 \u044d\u043a\u0440\u0430\u043d\u0430, \u043e\u043d\u0430 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442 \u0438\u0445 \u0432 \u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u044d\u043a\u0440\u0430\u043d\u0430 \u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0430\u043a\u0441\u0435\u043b\u0435\u0440\u0430\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443\u0441\u043a\u043e\u0440\u044f\u0435\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u044d\u043a\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0438\u043d\u0442\u0435\u043d\u0441\u0438\u0432\u043d\u043e\u0441\u0442\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043c\u044b\u0448\u0438. \u041d\u0430 \u0431\u043e\u043b\u0435\u0435 \u0440\u0435\u0437\u043a\u0438\u0439 \u0441\u0434\u0432\u0438\u0433 \u043c\u044b\u0448\u0438 \u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u043a\u0443\u0440\u0441 \u043e\u0442\u043e\u0434\u0432\u0438\u043d\u0435\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u0448\u0435.<\/li>\n<li>\u041c\u044b\u0448\u044c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 USB-\u043e\u0442\u0447\u0451\u0442\u044b \u0441 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439, \u0438 \u043d\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u0442\u0430\u043a\u0436\u0435 \u0442\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0432\u0440\u0435\u043c\u044f. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u0441\u0442\u0432\u0438\u044f\u043c. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0432 MS Paint \u043a\u0432\u0430\u0434\u0440\u0430\u0442:\n<pre><code class=\"bash\">#!\/system\/bin\/sh # mouse_draw_rect.sh  echo \"\\x01\\x00\\x00\\x00\" > \/dev\/hidg1 # Press LMB echo \"\\x01\\x7F\\x00\\x00\" > \/dev\/hidg1 # Move MAX Right echo \"\\x01\\x01\\x00\\x00\" > \/dev\/hidg1 # Move MIN Right echo \"\\x01\\x00\\x00\\x00\" > \/dev\/hidg1 # Press LMB echo \"\\x01\\x00\\x7F\\x00\" > \/dev\/hidg1 # Move MAX Down echo \"\\x01\\x00\\x01\\x00\" > \/dev\/hidg1 # Move MIN Down echo \"\\x01\\x00\\x00\\x00\" > \/dev\/hidg1 # Press LMB echo \"\\x01\\x81\\x00\\x00\" > \/dev\/hidg1 # Move MAX Left echo \"\\x01\\xFF\\x00\\x00\" > \/dev\/hidg1 # Move MIN Left echo \"\\x01\\x00\\x00\\x00\" > \/dev\/hidg1 # Press LMB echo \"\\x01\\x00\\x81\\x00\" > \/dev\/hidg1 # Move MAX Up echo \"\\x01\\x00\\xFF\\x00\" > \/dev\/hidg1 # Move MIN Up echo \"\\x00\\x00\\x00\\x00\" > \/dev\/hidg1 # Release LMB<\/code><\/pre>\n<p>  \u0417\u0434\u0435\u0441\u044c \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u043b\u0435\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u043c\u044b\u0448\u0438, \u0437\u0430\u0442\u0435\u043c \u043a\u0443\u0440\u0441\u043e\u0440 \u0441 \u0437\u0430\u0436\u0430\u0442\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u0434\u0432\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043f\u0440\u0430\u0432\u043e, \u0437\u0430\u0442\u0435\u043c \u0432\u043d\u0438\u0437, \u043f\u043e\u0442\u043e\u043c \u0432\u0432\u0435\u0440\u0445, \u0433\u0434\u0435 \u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043a\u043d\u043e\u043f\u043a\u0430. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u043c\u0435\u0436\u0434\u0443 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u043c\u0438 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043a\u0443\u0440\u0441\u043e\u0440\u0430 \u0432\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043e\u0442\u0447\u0451\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043d\u0430\u0436\u0430\u0442\u043e\u0439 \u043b\u0435\u0432\u0443\u044e \u043a\u043d\u043e\u043f\u043a\u0443 \u043c\u044b\u0448\u0438. \u0415\u0441\u043b\u0438 \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c, \u0442\u043e \u0432 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u043e\u0433\u043e \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0430 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0442\u0440\u0435\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a.<\/p>\n<h2><font color=\"#3AC1EF\">\u0418\u043c\u0438\u0442\u0430\u0446\u0438\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0431\u043e\u0442\u043e\u0432<\/font><\/h2>\n<p>  \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u044f\u0434 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0442 \u043e\u0442\u043b\u0438\u0447\u0438\u0442\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043e\u0439 \u0438 \u043c\u044b\u0448\u044c\u044e \u0440\u0435\u0430\u043b\u044c\u043d\u044b\u043c \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u043c \u043e\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u043c\u0438 \u0436\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438 \u0431\u043e\u0442\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u043c Android \u043a\u0430\u043a \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0432\u0432\u043e\u0434\u0430.<br \/>  \u041f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0438:<\/p>\n<ol>\n<li>\u041f\u043e\u0441\u043b\u0430\u0432 \u043e\u0442\u0447\u0451\u0442\u044b \u00ab02 00 04 00 00 00 00 00\u00bb \u0438 \u00ab00 00 00 00 00 00 00 00\u00bb \u0431\u043e\u0442 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442 \u0432\u0432\u043e\u0434 \u043e\u0434\u043d\u043e\u0439 \u0437\u0430\u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u00ab\u0410\u00bb. \u041d\u043e \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u0430\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u043c, \u043f\u043e\u0441\u044b\u043b\u0430\u043b\u0430 \u0431\u044b \u0434\u0440\u0443\u0433\u0438\u0435 \u043a\u043e\u0434\u044b. \u0412\u043d\u0430\u0447\u0430\u043b\u0435 \u0431\u044b\u043b \u0431\u044b \u043f\u043e\u0441\u043b\u0430\u043d \u043a\u043e\u0434 \u043d\u0430\u0436\u0430\u0442\u0438\u044f Left Shift \u2013 \u00ab02 00 00 00 00 00 00 00\u00bb, \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u043e\u043c Left Shift \u0431\u044b\u043b\u0430 \u0431\u044b \u043d\u0430\u0436\u0430\u0442\u0430 \u00ab\u0430\u00bb \u2013 \u043a\u043e\u0434 \u00ab02 00 04 00 00 00 00 00\u00bb, \u043f\u043e\u0442\u043e\u043c \u043e\u0442\u043f\u0443\u0449\u0435\u043d\u0430 \u00ab\u0430\u00bb \u2013 \u043a\u043e\u0434 \u00ab02 00 00 00 00 00 00 00\u00bb, \u0430 \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u043f\u0443\u0449\u0435\u043d Left Shift \u2013 \u00ab00 00 00 00 00 00 00 00\u00bb. <\/li>\n<li>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0443 \u0432\u0441\u0435\u0445 \u043b\u044e\u0434\u0435\u0439 \u0440\u0430\u0437\u043d\u044b\u0435 \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u043b\u0430\u0434\u043e\u043d\u0435\u0439, \u043c\u043e\u0442\u043e\u0440\u0438\u043a\u0430 \u043f\u0430\u043b\u044c\u0446\u0435\u0432 \u0438 \u043f\u0440\u0438\u0432\u044b\u0447\u043a\u0438. \u0412\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043c\u0435\u0436\u0434\u0443 \u043d\u0430\u0436\u0430\u0442\u0438\u0435\u043c \u0438 \u043e\u0442\u043f\u0443\u0441\u043a\u043e\u043c \u043a\u043b\u0430\u0432\u0438\u0448, \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043c\u0435\u0436\u0434\u0443 \u0432\u0432\u043e\u0434\u043e\u043c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0431\u0443\u043a\u0432, \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0435\u043d\u0438\u044f \u043f\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u043c \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043d\u044b\u0439 \u043f\u043e\u0434\u0447\u0435\u0440\u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430. <\/li>\n<li>\u041c\u044b\u0448\u044c, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u0430\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u043c, \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043c\u044b\u0448\u0438, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0439 \u0431\u043e\u0442\u043e\u043c. \u0420\u0435\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u044b\u0448\u044c \u043e\u0431\u044b\u0447\u043d\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0433\u0438\u0433\u0430\u043d\u0442\u0441\u043a\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0442\u0447\u0451\u0442\u043e\u0432 \u043d\u0430 \u043c\u0430\u043b\u0435\u0439\u0448\u0435\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0435. \u041f\u0440\u0438\u0447\u0451\u043c \u0432 \u0441\u0430\u043c\u0438\u0445 \u043e\u0442\u0447\u0451\u0442\u0430\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 1 \u0438\u043b\u0438 \u0447\u0443\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435. \u0411\u043e\u0442 \u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043e\u0442\u0447\u0451\u0442\u043e\u0432 \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442.<\/li>\n<li>\u0427\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u043a\u0443\u0440\u0441\u043e\u0440 \u043f\u043e \u043f\u0440\u044f\u043c\u043e\u0439, \u0431\u0443\u0434\u0443\u0442 \u0445\u043e\u0442\u044c \u0438 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0435, \u043d\u043e \u0431\u0438\u0435\u043d\u0438\u044f \u0432 \u043e\u0431\u0435\u0438\u0445 \u043a\u043e\u043e\u0440\u0434\u0438\u043d\u0430\u0442\u0430\u0445. \u0411\u043e\u0442 \u0436\u0435 \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c \u043a\u0443\u0440\u0441\u043e\u0440 \u043f\u043e \u043f\u0440\u044f\u043c\u044b\u043c \u043b\u0438\u043d\u0438\u044f\u043c.<\/li>\n<\/ol>\n<p>  \u0410\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0435 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0438:<\/p>\n<ol>\n<li>\u041a\u0440\u043e\u043c\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432 \u0431\u043e\u0442\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0438 \u043f\u043e \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u043c \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c, \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f \u043e\u0431\u043c\u0435\u043d USB-\u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438. \u0412 \u0445\u043e\u0434\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e, \u0447\u0442\u043e Android \u0438\u043c\u0435\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0438\u043c\u0438\u0442\u0430\u0446\u0438\u044e USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0441\u044b\u043c\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0438\u0433\u0440\u043e\u0432\u0443\u044e \u043c\u044b\u0448\u044c \u043d\u0430 \u043d\u0451\u043c \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u0420\u0435\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u044b\u0448\u044c \u0432 \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 USB 1.1, \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a Android \u0432\u0441\u0435\u0433\u0434\u0430 \u043e\u0442\u0434\u0430\u0451\u0442 USB 2.0. \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u0435\u0449\u0451 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0434\u0440\u0443\u0433\u0438\u0445 \u0434\u0435\u043c\u0430\u0441\u043a\u0438\u0440\u0443\u044e\u0449\u0438\u0445 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u043e\u0442\u0430 \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u043e\u0432.<\/li>\n<\/ol>\n<h2><font color=\"#3AC1EF\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0440\u043e\u0434\u043d\u043e\u0433\u043e (native) \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/font><\/h2>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u043e\u0432\u0441\u0435\u043c\u0435\u0441\u0442\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u0438 \u0443 \u0432\u0430\u0441 \u043c\u043e\u0436\u0435\u0442 \u0441\u043b\u043e\u0436\u0438\u0442\u044c\u0441\u044f \u043c\u043d\u0435\u043d\u0438\u0435, \u0447\u0442\u043e, \u043a\u0440\u043e\u043c\u0435 \u043a\u0430\u043a \u0438\u0437 termux, \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0441 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u043e\u0439 \u0438 \u043c\u044b\u0448\u044c\u044e \u043d\u0438\u043a\u0430\u043a \u043d\u0435\u043b\u044c\u0437\u044f, \u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a. \u041a\u0430\u043a \u0443\u0436\u0435 \u043e\u0442\u043c\u0435\u0447\u0430\u043b\u043e\u0441\u044c \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0441\u0442\u0430\u0442\u044c\u0438, \u0438\u0437 \u0440\u043e\u0434\u043d\u043e\u0433\u043e API Andoird \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c Linux \u043a\u043e\u043c\u0430\u043d\u0434\u044b. \u0414\u043b\u044f \u043d\u0430\u0448\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u00absu\u00bb, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0438. \u0417\u0430\u0442\u0435\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u0442\u043e\u043a\u043e\u0432 \u0432\u0432\u043e\u0434\u0430-\u0432\u044b\u0432\u043e\u0434\u0430, \u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0430 \u0432\u0445\u043e\u0434 \u043b\u044e\u0431\u044b\u0435 \u0434\u0440\u0443\u0433\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043c\u0435\u043b\u043e \u0431\u0440\u0430\u0442\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u0437\u0434\u0435\u0441\u044c \u043a\u043e\u0434 \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0435\u0433\u043e \u0438\u0437 \u0441\u0432\u043e\u0435\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u041f\u0440\u0438\u043c\u0435\u0440 \u0442\u043e\u0433\u043e \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u00absu\u00bb \u0432 Android, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043d\u0430\u0439\u0442\u0438 \u0432 \u044d\u0442\u043e\u0439 <a href=\"https:\/\/muzikant-android.blogspot.com\/2011\/02\/how-to-get-root-access-and-execute.html\">\u0441\u0442\u0430\u0442\u044c\u0435<\/a>. <\/p>\n<p>  \u0412\u0441\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435, \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u043c \u041f\u041e \u0438 \u043c\u043e\u0433\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0431\u0435\u0437 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439.<\/p>\n<h2><font color=\"#3AC1EF\">\u0421\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f<\/font><\/h2>\n<p>  \u041c\u044b \u043d\u0430\u0443\u0447\u0438\u043b\u0438\u0441\u044c \u043d\u0430\u0436\u0438\u043c\u0430\u0442\u044c \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u043e\u043c \u043a\u043d\u043e\u043f\u043a\u0438 \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b, \u0448\u0435\u0432\u0435\u043b\u0438\u0442\u044c \u043a\u0443\u0440\u0441\u043e\u0440\u043e\u043c \u043c\u044b\u0448\u0438 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043d\u043e\u0432\u0443\u044e \u0444\u043b\u0435\u0448\u043a\u0443, \u0447\u0442\u043e \u0441 \u044d\u0442\u0438\u043c \u0432\u0441\u0435\u043c \u0434\u0435\u043b\u0430\u0442\u044c? \u0410 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u043d\u0430\u0448\u0435\u043c\u0443 \u043a\u043e\u043c\u0431\u0430\u0439\u043d\u0443 \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043e\u0447\u0435\u043d\u044c \u043c\u043d\u043e\u0433\u043e:<\/p>\n<ol>\n<li>\u0414\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432:\n<ul>\n<li>\u0421\u043c\u0430\u0440\u0442\u0444\u043e\u043d, \u043a\u0430\u043a \u043f\u043e\u0440\u0442\u0430\u0442\u0438\u0432\u043d\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0432\u0432\u043e\u0434\u0430 (\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430, \u043c\u044b\u0448\u044c). <br \/>  \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c \u0431\u0443\u0434\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u043f\u0440\u0438 \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u0438 \u0442\u0435\u0445\u043d\u0438\u043a\u0438 \u0432\u043d\u0435 \u043e\u0444\u0438\u0441\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0431\u0430\u043d\u043a\u043e\u043c\u0430\u0442\u043e\u0432, \u043f\u043b\u0430\u0442\u0451\u0436\u043d\u044b\u0445 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u043e\u0432, \u0438\u043d\u0444\u043e\u043a\u0438\u043e\u0441\u043a\u043e\u0432 \u0438 \u0442.\u0434.<\/li>\n<li>\u041c\u043d\u043e\u0433\u043e\u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0439 LiveUSB. <br \/>  \u041d\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0435 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043e\u0431\u0440\u0430\u0437\u043e\u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0445 \u0444\u043b\u0435\u0448\u0435\u043a \u043f\u043e\u0434 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438. \u0417\u0430\u0442\u0435\u043c \u043f\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u0445 \u043f\u0435\u0440\u0435\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f USB-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430.<\/li>\n<li>\u0410\u0432\u0442\u043e\u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0442\u043e\u0440. <br \/>  \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u044e \u041f\u041e. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0430 \u0444\u043b\u0435\u0448\u043a\u0443, \u0430 \u0434\u043b\u044f \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438 \u043f\u0438\u0448\u0443\u0442\u0441\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c \u0438\u043d\u0441\u0442\u0430\u043b\u043b\u044f\u0446\u0438\u0438.<\/li>\n<\/ul>\n<\/li>\n<li>\u0414\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432:\n<ul>\n<li>\u0410\u0432\u0442\u043e\u0442\u0435\u0441\u0442\u0435\u0440. <br \/>  \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430, \u0438\u043c\u0438\u0442\u0438\u0440\u0443\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u044b \u0438 \u043c\u044b\u0448\u0438, \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u041f\u041e.<\/li>\n<\/ul>\n<\/li>\n<li>\u0414\u043b\u044f \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u043b\u044e\u0434\u0435\u0439\n<ul>\n<li>\u0418\u043c\u0438\u0442\u0430\u0442\u043e\u0440 \u0440\u0430\u0431\u043e\u0442\u044b. <br \/>  \u041f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u043d\u0430 \u0443\u0434\u0430\u043b\u0451\u043d\u043a\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u044e\u0442, \u0447\u0442\u043e\u0431\u044b \u0447\u0435\u043b\u043e\u0432\u0435\u043a \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0447\u0442\u043e-\u0442\u043e \u0434\u0435\u043b\u0430\u043b \u0437\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u043c. \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u043c\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0443\u044e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0441\u0442\u044c, \u043d\u0435 \u0434\u0430\u044e\u0449\u0443\u044e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440\u0430\u043c \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u0441\u0442\u0430\u0442\u0443\u0441 \u00ab\u041e\u0442\u043e\u0448\u0451\u043b\u00bb.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p>  <\/p>\n<h2><font color=\"#3AC1EF\">\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f<\/font><\/h2>\n<p>  \u0412 \u0445\u043e\u0434\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043c\u043e\u0433\u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b:<\/p>\n<ol>\n<li><a href=\"https:\/\/www.wireshark.org\/download.html\">Wireshark \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c USBCap<\/a>. \u0417\u043d\u0430\u043c\u0435\u043d\u0438\u0442\u044b\u0439 \u0441\u043d\u0438\u0444\u0444\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 USB-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432. \u0421 \u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0432\u0435\u0441\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043e\u0431\u043c\u0435\u043d \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u043c \u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c, \u0432\u043a\u043b\u044e\u0447\u0430\u044f USB \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u044b, \u043e\u0442\u0447\u0451\u0442\u044b \u0438 \u043f\u0440\u043e\u0447\u0435\u0435.<\/li>\n<li><a href=\"https:\/\/pypi.org\/project\/hid-tools\/\">Python \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 hid-tools<\/a>. \u0418\u043c\u0435\u0435\u0442 \u0446\u0435\u043b\u0443\u044e \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 USB HID \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c\u0438. \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0438\u0437\u044e\u043c\u0438\u043d\u043a\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043e\u0442 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u043e\u0432, \u043e\u0442\u0447\u0451\u0442\u043e\u0432) \u0432 \u043f\u043e\u043d\u044f\u0442\u043d\u043e\u043c \u0434\u043b\u044f \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0432\u0438\u0434\u0435.<\/li>\n<\/ol>\n<p>  <a name=\"Liter\"><\/a>  <\/p>\n<h2><font color=\"#3AC1EF\">\u0421\u043f\u0438\u0441\u043e\u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432<\/font><\/h2>\n<p>  <\/p>\n<ol>\n<li><a href=\"https:\/\/usb.org\/sites\/default\/files\/hid1_11.pdf\">Universal Serial Bus (USB) Device Class Definition for Human Interface Devices (HID) Firmware Specification\u20145\/27\/01 Version 1.11<\/a><\/li>\n<li><a href=\"https:\/\/usb.org\/sites\/default\/files\/hut1_5.pdf\">HID Usage Tables FOR Universal Serial Bus (USB) Version 1.5<\/a><\/li>\n<\/ol>\n<p>  <\/p>\n<blockquote><p><b><font color=\"#3AC1EF\"><a href=\"https:\/\/t.me\/ruvds_community\">Telegram-\u043a\u0430\u043d\u0430\u043b \u0441\u043e \u0441\u043a\u0438\u0434\u043a\u0430\u043c\u0438, \u0440\u043e\u0437\u044b\u0433\u0440\u044b\u0448\u0430\u043c\u0438 \u043f\u0440\u0438\u0437\u043e\u0432 \u0438 \u043d\u043e\u0432\u043e\u0441\u0442\u044f\u043c\u0438 IT ? <\/a><\/font><\/b><\/p><\/blockquote>\n<p><a href=\"http:\/\/ruvds.com\/ru-rub?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=%20imbasoft&amp;utm_content=prevrashhaem_android-smartfon_v_usb-klaviaturu,_mysh_i_fleshku\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/jx\/md\/ye\/jxmdyendyev6uxwdkpnkdl77zac.png\" data-src=\"https:\/\/habrastorage.org\/webt\/jx\/md\/ye\/jxmdyendyev6uxwdkpnkdl77zac.png\"\/><\/a><\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/816595\/\"> https:\/\/habr.com\/ru\/articles\/816595\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\"><a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/816595\/\"><\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/lb\/lp\/fi\/lblpfin6lruli3ifsndzrf8yjjo.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/lb\/lp\/fi\/lblpfin6lruli3ifsndzrf8yjjo.jpeg\" data-blurred=\"true\"\/><\/div>\n<p><\/a><br \/>  Android-\u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d \u043f\u0440\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043a \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0443 \u0447\u0435\u0440\u0435\u0437 USB \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u0442\u044c \u043a\u0430\u043a \u043c\u0435\u0434\u0438\u0430\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e, \u043c\u043e\u0434\u0435\u043c \u0438\u043b\u0438 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0444\u0430\u0439\u043b\u043e\u0432. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u043d\u0430\u0443\u0447\u0438\u043c\u0441\u044f \u0434\u0435\u043b\u0430\u0442\u044c \u0438\u0437 \u043d\u0435\u0433\u043e USB-\u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0443, \u043c\u044b\u0448\u044c \u0438 \u0444\u043b\u0435\u0448\u043a\u0443.   <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-378462","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/378462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=378462"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/378462\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=378462"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=378462"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=378462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}