{"id":460900,"date":"2025-05-24T21:07:42","date_gmt":"2025-05-24T21:07:42","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=460900"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=460900","title":{"rendered":"<span>\u0420\u0435\u0446\u0435\u043f\u0442 \u0444\u0430\u0441\u043e\u043b\u0435\u0439: \u043a\u0430\u043a \u044f \u043e\u0442\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u043b \u0431\u044e\u0434\u0436\u0435\u0442\u043d\u044b\u0439 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d, \u0445\u0430\u043a\u043d\u0443\u043b \u0435\u0433\u043e \u0438 \u043d\u0430\u0443\u0447\u0438\u043b \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0430 C<\/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-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><strong>\u041e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u043e<\/strong>: \u043f\u043e\u043c\u043d\u0438\u0442\u0435 \u043b\u0438 \u0432\u044b, \u043a\u0430\u043a \u0432 \u0432\u0430\u0448\u0435\u043c \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0435 Siemens, Motorola \u0438 Sony \u043f\u043e\u0441\u0435\u043b\u0438\u043b\u0438\u0441\u044c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b &#8212; \u202d\u202d\u00ab\u044d\u043b\u044c\u0444\u044b\u00bb? \u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u0432\u043e \u0432\u0441\u0435\u0445 \u0434\u0435\u0442\u0430\u043b\u044f\u0445 \u0438\u0441\u0441\u043b\u0435\u0434\u0443\u0435\u043c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u0431\u044e\u0434\u0436\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u0438\u043a\u0430, \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0432 \u0435\u0451 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435, \u0445\u0430\u043a\u043d\u0435\u043c \u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0442\u0435\u0445 \u0441\u0430\u043c\u044b\u0445 \u044d\u043b\u044c\u0444\u043e\u0432 \u0441 MicroSD-\u0444\u043b\u044d\u0448\u043a\u0438. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u044f \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u0432\u0441\u0451 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u044f\u0437\u044b\u043a\u043e\u043c!<\/p>\n<p>\u041d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0441\u044f \u0441 \u043b\u0435\u0433\u0435\u043d\u0434\u043e\u0439 \u0444\u043e\u0440\u0443\u043c\u0430 allsiemens.ru \u2014 <strong>Ilya_ZX<\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d \u0441\u0432\u043e\u0438\u043c \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u043c \u0432\u043a\u043b\u0430\u0434\u043e\u043c \u0432 \u0442\u0435\u043c\u0443 \u0440\u0435\u0432\u0435\u0440\u0441\u0430 \u0438 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 E-Gold \u0438 S-Gold. \u0418\u043b\u044c\u044f \u043f\u043e\u0432\u0435\u0434\u0430\u043b \u043c\u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0443\u044e \u0438\u0441\u0442\u043e\u0440\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u043d\u0443\u043b\u0435\u0432\u044b\u0445, \u0431\u0443\u0434\u0443\u0447\u0438 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u043c, \u043f\u043e\u0441\u043f\u043e\u0440\u0438\u043b \u0441 \u043e\u0434\u043d\u043e\u0433\u0440\u0443\u043f\u043f\u043d\u0438\u043a\u043e\u043c, \u0441\u043c\u043e\u0436\u0435\u0442 \u043b\u0438 \u043e\u043d \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u202d\u202d\u00ab\u0437\u043c\u0435\u0439\u043a\u0443\u202d\u202d\u00bb \u0432 \u0441\u0432\u043e\u0439 Siemens A60. \u0418 \u0441\u043f\u043e\u0440 \u043e\u043d \u044d\u0442\u043e\u0442 \u0432\u044b\u0438\u0433\u0440\u0430\u043b, \u043f\u0443\u0442\u0435\u043c \u0431\u0435\u0441\u0441\u043e\u043d\u043d\u044b\u0445 \u043d\u043e\u0447\u0435\u0439 \u043a\u043e\u0432\u044b\u0440\u044f\u043d\u0438\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432 IDA Pro! \u042f \u043f\u043e\u0434\u0443\u043c\u0430\u043b \u202d\u202d\u2014 \u00ab\u0430 \u0447\u0435\u043c \u044f \u0445\u0443\u0436\u0435?\u202d\u202d\u00bb. \u0412\u0437\u044f\u043b \u0432 \u0440\u0443\u043a\u0438 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 Spreadtrum, \u0441\u0434\u0430\u043c\u043f\u0438\u043b \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b \u0432 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440&#8230;<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0435\u0432\u0435\u0440\u0441\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u043a\u0430\u043a \u043e\u043d\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0442 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439, \u043a\u0430\u043a \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u043a \u0444\u0443\u043b\u043b\u0444\u043b\u044d\u0448\u0443 \u0438, \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0431\u0438\u043d\u043b\u043e\u0430\u0434\u0435\u0440 \u0441 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u2014 \u0436\u0434\u0443 \u0432\u0430\u0441 \u043f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c!<\/p>\n<h2>\u276f \u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h2>\n<p>\u0412 <a href=\"https:\/\/habr.com\/ru\/companies\/timeweb\/articles\/906158\/\">\u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435<\/a> \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043a\u0440\u0430\u0442\u043a\u0443\u044e \u043f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b \u0438\u0437 \u043d\u0443\u043b\u0435\u0432\u044b\u0445 \u0433\u043e\u0434\u043e\u0432 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u044b \u0432 \u043f\u043e\u0447\u0442\u0438 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0435 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u044b \u0441 \u0432\u044b\u0442\u0435\u0441\u043d\u044f\u044e\u0449\u0435\u0439 \u043c\u043d\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u0447\u043d\u043e\u0441\u0442\u044c\u044e \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c. \u041a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0431\u044b, \u043d\u0430 \u043f\u0443\u0442\u0438 \u0431\u044b\u043b\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0435\u0433\u0440\u0430\u0434: \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u0438 \u043a\u0430\u043a\u043e\u0439 \u043b\u0438\u0431\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0438 \u0431\u0435\u0437 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u0438 \u043e\u0431\u0449\u0430\u044f \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u043a\u0430\u043a <strong>\u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433<\/strong>.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/419\/475\/e25\/419475e25a981fb626ea28f10615dedf.jpg\" alt=\"\u041f\u043e\u0438\u0441\u043a SKey \u0438 HASH \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 Java-\u043c\u0430\u0448\u0438\u043d\u0435\" title=\"\u041f\u043e\u0438\u0441\u043a SKey \u0438 HASH \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 Java-\u043c\u0430\u0448\u0438\u043d\u0435\" width=\"1560\" height=\"1170\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/419\/475\/e25\/419475e25a981fb626ea28f10615dedf.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/419\/475\/e25\/419475e25a981fb626ea28f10615dedf.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><em>\u041f\u043e\u0438\u0441\u043a SKey \u0438 HASH \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 Java-\u043c\u0430\u0448\u0438\u043d\u0435<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041d\u043e \u043e\u0431\u0449\u0438\u043c\u0438 \u0443\u0441\u0438\u043b\u0438\u044f\u043c\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u043c\u043e\u0434\u0434\u0435\u0440\u043e\u0432 \u0434\u0435\u043b\u0430\u043b\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0435. \u041b\u044e\u0434\u0438 \u0438\u0441\u043a\u0430\u043b\u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u043f\u0430\u0442\u0447\u0438\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0438 \u043d\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 Motorola \u0434\u043b\u044f \u043e\u0431\u0445\u043e\u0434\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 RSA, \u0440\u0435\u0437\u0430\u043b\u0438 \u0442\u0435\u0441\u0442-\u043f\u043e\u0438\u043d\u0442\u044b \u0438 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c \u0432 BootROM&#8217;\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 S-Gold \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 Siemens, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 BootKEY \u0434\u043b\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043a\u0430\u0441\u0442\u043e\u043c\u043e\u0432 \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0432\u044b\u0440\u044f\u043b\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u044b Samsung, \u0433\u0434\u0435 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0441\u0435\u043a\u044c\u044e\u0440\u0431\u0443\u0442\u0430, \u043d\u043e \u0435\u0449\u0451 \u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0443\u0442\u0435\u043a\u0430\u043b\u0438 \u0441\u043e \u0432\u0441\u0435\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0430\u0445 (\u0444\u0430\u0439\u043b\u044b .lst).<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c72\/917\/c51\/c72917c51e2cd872427685a7eebff717.jpg\" alt=\"Razr V3i\" title=\"Razr V3i\" width=\"1560\" height=\"1170\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/c72\/917\/c51\/c72917c51e2cd872427685a7eebff717.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c72\/917\/c51\/c72917c51e2cd872427685a7eebff717.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><em>Razr V3i<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041d\u043e \u0447\u0442\u043e \u0441\u0430\u043c\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435 \u2014 \u044d\u043b\u044c\u0444-\u0441\u0446\u0435\u043d\u0430 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0436\u0438\u0432\u0430\u044f \u0438 \u0432 \u043f\u0440\u043e\u0444\u0438\u043b\u044c\u043d\u044b\u0445 \u0447\u0430\u0442\u0430\u0445 \u0443\u0436\u0435 \u043f\u043e\u0432\u0437\u0440\u043e\u0441\u043b\u0435\u0432\u0448\u0438\u0435 \u0440\u0435\u0431\u044f\u0442\u0430 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442 \u0442\u043e, \u043a\u0430\u043a \u0438\u043c \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u043f\u043e\u0440\u0442 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 NES \u043f\u0443\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u0432 IRAM, \u0440\u0430\u0437\u043e\u0433\u043d\u0430\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Freescale Argon LV \u0438&#8230; \u043a\u0442\u043e \u0431\u044b \u043c\u043e\u0433 \u043f\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u2014 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0438 S-Gold \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 Benq-Siemens E71 \u0432 QEMU. \u0418 \u0445\u043e\u0442\u044f \u0444\u043e\u0440\u0443\u043c\u044b \u043f\u043e Siemens&#8217;\u0430\u043c \u0443\u0436\u0435 \u0434\u0430\u0432\u043d\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442, MotoFan \u0432\u0441\u0451 \u0435\u0449\u0451 \u0436\u0438\u0432 \u0438 \u0445\u0440\u0430\u043d\u0438\u0442 \u043a\u043b\u0430\u0434\u0435\u0437\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043c\u043e\u0434\u0434\u0435\u0440\u043e\u0432 \u0438 \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u043e\u0432!<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/7cd\/704\/734\/7cd7047343b20c3103ff932a9c7edcfd.png\" width=\"422\" height=\"540\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/7cd\/704\/734\/7cd7047343b20c3103ff932a9c7edcfd.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/7cd\/704\/734\/7cd7047343b20c3103ff932a9c7edcfd.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u0442\u0430\u043a\u0438\u0445 \u043f\u0430\u0440\u043d\u0435\u0439 \u0431\u044b\u043b \u0438 <a class=\"mention\" href=\"\/users\/ilya_zx\">@ILYA_ZX<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0434\u0435\u043b\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0432\u043a\u043b\u0430\u0434 \u0432 \u043c\u043e\u0434\u0434\u0438\u043d\u0433-\u0441\u0446\u0435\u043d\u0443 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 Siemens. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u043c\u0435\u043d\u043d\u043e \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0435\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u0437\u0432\u0443\u043a\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0432 S65 \u0438 M65 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 <strong>\u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u0443\u044e <\/strong>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 MP3, \u0447\u0435\u0433\u043e \u043d\u0435 \u0441\u043c\u043e\u0433\u043b\u0430 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u0436\u0435 \u0441\u0430\u043c\u0430 Siemens. \u041a\u043e\u0433\u0434\u0430 \u044f \u0443\u0441\u043b\u044b\u0448\u0430\u043b \u0435\u0433\u043e \u0438\u0441\u0442\u043e\u0440\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u043d \u043d\u0430 \u0441\u043f\u043e\u0440 \u0441 \u043e\u0434\u043d\u043e\u0433\u0440\u0443\u043f\u043f\u043d\u0438\u043a\u043e\u043c \u043e\u0442\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u043b \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u202d\u202d\u00ab\u0437\u043c\u0435\u0439\u043a\u0443\u202d\u202d\u00bb \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e Siemens A60, \u044f \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0438\u043b\u0441\u044f \u0438 \u043f\u043e\u043d\u044f\u043b&#8230; \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u043e\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u0442\u044c \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0443\u0441\u043f\u0435\u0445\u0438 \u0418\u043b\u044c\u0438 \u043d\u0430 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0435\u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435, \u043f\u0440\u0438\u0447\u0451\u043c \u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0432\u0435\u0436\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0432 \u043d\u043e\u0432\u044b\u0445 \u0431\u044e\u0434\u0436\u0435\u0442\u043d\u044b\u0445 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u0438\u043a\u0430\u0445&#8230;<\/p>\n<h2>\u276f \u041f\u0435\u0440\u0432\u044b\u0435 \u0448\u0430\u0433\u0438&#8230;<\/h2>\n<p>\u042f \u043d\u0430\u0447\u0430\u043b \u0441 \u043f\u043e\u0438\u0441\u043a\u0430 \u0432 \u0441\u0432\u043e\u0435\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0446\u0435\u043b\u0438 \u0434\u043b\u044f \u0431\u0443\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430. \u041e\u0434\u043d\u0438\u043c\u0438 \u0438\u0437 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u0432 \u0431\u044b\u043b\u0438: \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0430\u044f \u0444\u043b\u044d\u0448-\u043f\u0430\u043c\u044f\u0442\u044c \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043f\u043e\u0441\u0435\u0434\u0435\u0442\u044c \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0437\u0430\u043b\u0438\u0432\u043a\u0438 \u0441\u043e\u0444\u0442\u0430 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 USB \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e\u043a\u0443\u043f\u043a\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u0430\u0431\u0435\u043b\u0435\u0439 \u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u0447\u043d\u044b\u0445 \u0431\u043e\u043a\u0441\u043e\u0432. \u0423 \u043c\u0435\u043d\u044f \u043d\u0430\u0448\u043b\u0438\u0441\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445: MediaTek, Spreadtrum, \u0430 \u0442\u0430\u043a\u0436\u0435 Coolsand (\u043f\u043e\u0445\u043e\u0436 \u043d\u0430 MTK \u0438 Spreadtrum, \u043d\u043e MIPS, \u0430 \u043d\u0435 ARM). \u042f \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e \u0432\u044b\u0447\u0438\u0442\u044b\u0432\u0430\u043b \u0441 \u043d\u0438\u0445 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0433\u043e \u0441\u043e\u0444\u0442\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u043a\u043e\u0432\u044b\u0440\u044f\u043b \u0438\u0445 \u0432 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435 \u0438 \u043f\u043e\u0434\u0431\u0438\u0440\u0430\u043b \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/807\/461\/afc\/807461afc61808bbca4c48b2a6a967a4.jpg\" width=\"1920\" height=\"982\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/807\/461\/afc\/807461afc61808bbca4c48b2a6a967a4.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/807\/461\/afc\/807461afc61808bbca4c48b2a6a967a4.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041c\u043e\u0451 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u0432\u043b\u0451\u043a \u0442\u0435\u043b\u0435\u0444\u043e\u043d Explay B240, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430 \u043f\u0430\u0440\u0443 \u0434\u043d\u0435\u0439 \u0434\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u043c\u043d\u0435 \u043f\u043e\u0434\u0430\u0440\u0438\u043b \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a \u041f\u0430\u0432\u0435\u043b, \u0437\u0430 \u0447\u0442\u043e \u0435\u043c\u0443 \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u0441\u043f\u0430\u0441\u0438\u0431\u043e.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/468\/6cc\/853\/4686cc853ad1892a831a3ba969d50766.jpg\" width=\"1920\" height=\"1440\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/468\/6cc\/853\/4686cc853ad1892a831a3ba969d50766.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/468\/6cc\/853\/4686cc853ad1892a831a3ba969d50766.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432 IDA Pro, \u044f \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u043f\u043e\u043b\u0435\u0437 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0438 \u0438 \u0438\u0441\u043a\u0430\u0442\u044c \u0441\u0430\u043c\u044b\u0435 \u043f\u0435\u0440\u0432\u044b\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438: printf, \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0444\u0443\u043d\u043a\u0446\u0438\u0438 libc \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 ABI-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e \u0442\u0438\u043f\u0443 \u0434\u0435\u043b\u0435\u043d\u0438\u044f (\u0432 ARM \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u0442). <\/p>\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 libc \u043d\u0430\u0439\u0442\u0438 \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e, \u0435\u0441\u043b\u0438 \u0438\u043c\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u0445 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0430\u0445. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443 \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u2014 \u0432\u0441\u0435\u0433\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0440 \u0432\u044b\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438. \u0421\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434, \u0435\u0441\u043b\u0438 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043e\u0442 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 sizeof \u2014 \u0437\u043d\u0430\u0447\u0438\u0442 \u044d\u0442\u043e \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e. <\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/da5\/33b\/8ea\/da533b8ea46e150e4eca74dcc213fc2e.png\" width=\"940\" height=\"666\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/da5\/33b\/8ea\/da533b8ea46e150e4eca74dcc213fc2e.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/da5\/33b\/8ea\/da533b8ea46e150e4eca74dcc213fc2e.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0418 \u0432\u043e\u0442 \u0442\u0443\u0442 \u044f \u043f\u0440\u0438\u043c\u0435\u0442\u0438\u043b \u043a\u043e\u0435-\u0447\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435, \u0447\u0442\u043e \u043e\u043f\u044b\u0442\u043d\u044b\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u0443\u0436\u0435 \u043c\u043e\u0433 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0435 \u0432\u044b\u0448\u0435: \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u0435\u0431\u0430\u0436\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a, \u0442\u0440\u0435\u0439\u0441\u044b \u043f\u043e\u0447\u0442\u0438 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0447\u0438\u0445, \u0430 \u0432 \u0430\u0441\u0441\u0435\u0440\u0442\u0430\u0445 \u0435\u0441\u0442\u044c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u0441\u0442\u0440\u043e\u043a\u0438, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u043b\u0435\u0433\u043a\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041f\u043e\u0438\u0441\u043a\u0430\u0432 \u0441\u0442\u0440\u043e\u0447\u043a\u0443 DEBUG \u0432 \u0444\u0443\u043b\u043b\u0444\u043b\u044d\u0448\u0435, \u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043f\u0430\u0440\u0438\u043b\u0441\u044f \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u043b\u0438\u0432\u0430\u043b \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u0447\u0442\u043e \u0432 \u043c\u0438\u0440\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0440\u0435\u0434\u043a\u043e&#8230;<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1ea\/f3d\/ea4\/1eaf3dea4e1ff05b7c1c257f9d88774e.png\" alt=\"\u042d\u0442\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0434\u0430\u0440 \u0434\u043b\u044f \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u0430!\" title=\"\u042d\u0442\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0434\u0430\u0440 \u0434\u043b\u044f \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u0430!\" width=\"1522\" height=\"614\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/1ea\/f3d\/ea4\/1eaf3dea4e1ff05b7c1c257f9d88774e.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1ea\/f3d\/ea4\/1eaf3dea4e1ff05b7c1c257f9d88774e.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><em>\u042d\u0442\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0434\u0430\u0440 \u0434\u043b\u044f \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u0430!<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b \u0441\u0442\u0440\u0430\u043d\u043d\u043e: \u0438 \u0442\u0443\u0442 \u0438 \u0442\u0430\u043c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u043d\u0430 \u043d\u0435\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u043f\u043e\u0431\u0438\u0442\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043e\u0447\u0435\u043d\u044c \u043c\u0430\u043b\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u044f\u043c\u044b\u0445 \u0440\u0435\u0444\u0435\u0440\u0435\u043d\u0441\u043e\u0432 \u043d\u0430 ROM. \u0418 \u0442\u0443\u0442 \u0418\u043b\u044c\u044f \u0432\u0437\u044f\u043b \u0444\u0443\u043b\u043b, \u043f\u043e\u043a\u043e\u0432\u044b\u0440\u044f\u043b \u0435\u0433\u043e \u0438 \u0441\u043a\u0430\u0437\u0430\u043b \u202d\u202d\u2014 \u00ab\u0434\u0430 \u044d\u0442\u043e \u0436 Big-Endian, \u044f \u043d\u0443\u0442\u0440\u043e\u043c \u0447\u0443\u044e!\u202d\u202d\u00bb. \u0418 \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u2014 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b BE \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u0430\u0439\u0442.<\/p>\n<details class=\"spoiler\">\n<summary>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 BE \u0438 LE?<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043d\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435 \u2014 \u0432 \u043c\u0438\u0440\u0435 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u0432 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e \u0436\u0435 \u043c\u043d\u043e\u0433\u043e\u0431\u0430\u0439\u0442\u043e\u0432\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 (\u0442\u043e \u0435\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0441\u043b\u043e\u0432\u0430, \u0441\u043b\u043e\u0432\u0430, \u0434\u043b\u0438\u043d\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430): <strong>Big Endian<\/strong> \u0438 <strong>Little Endian<\/strong>. \u0412 Little Endian \u0431\u0430\u0439\u0442\u044b \u0447\u0438\u0441\u043b\u0430 \u0438\u0441\u0447\u0438\u0441\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0442 \u043c\u043b\u0430\u0434\u0448\u0435\u0433\u043e \u043a \u0441\u0442\u0430\u0440\u0448\u0435\u043c\u0443, \u0430 \u0432 Big Endian \u2014 \u043e\u0442 \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u043a \u043c\u043b\u0430\u0434\u0448\u0435\u043c\u0443. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0437\u0430\u0445\u043e\u0447\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c BMP-\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0435\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u0430\u0439\u0442 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c \u0441\u043b\u043e\u0432\u0435 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f.<\/p>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u0430\u0439\u0442 \u2014 \u044d\u0442\u043e Big Endian, \u043e\u043d \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0443\u043d\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u0440\u0430\u0437\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b!<\/p>\n<p>ARM \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u043e\u0431\u0435\u0438\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445, \u043d\u043e \u0434\u043e ARMv6 BE \u0438 LE \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u043c \u044f\u0434\u0440\u0435 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u0438\u043b\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u043f\u0438\u043d\u043e\u043c. \u041a\u0430\u043a \u0440\u0430\u0437 \u0442\u0430\u043a\u0438 \u0438\u0437-\u0437\u0430 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0434 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 ARM-\u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0443\u0437\u043d\u0430\u0442\u044c \u0435\u0451 Endianness: \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u043c\u0435\u0441\u0442\u043e LE-\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 FE B5 \u0432 Thumb \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 B5 FE.<\/p>\n<\/div>\n<\/details>\n<p>\u0414\u043b\u044f \u043c\u0435\u043d\u044f \u044d\u0442\u043e \u0441\u0442\u0430\u043b\u043e \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e\u0441\u0442\u044c\u044e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 BE \u043d\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 \u044f \u0437\u043d\u0430\u043b \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0433\u0435\u043d\u0434\u0430\u0440\u043d\u044b\u0435 Motorola. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u044f \u0432\u044b\u044f\u0441\u043d\u0438\u043b, \u0447\u0442\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0447\u0438\u043f\u0441\u0435\u0442\u0435 Spreadtrum SC6500L 2010 \u0433\u043e\u0434\u0430 \u0432\u044b\u043f\u0443\u0441\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f:<\/p>\n<ul>\n<li>\n<p>\u041e\u0434\u043d\u043e \u044f\u0434\u0440\u043e <strong>ARM9EJ-S<\/strong> \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 208\u041c\u0413\u0446 \u0432 \u043f\u0430\u0440\u0435 \u0441 DSP \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 GSM-\u0440\u0430\u0434\u0438\u043e\u043a\u0430\u043d\u0430\u043b\u0430.<\/p>\n<\/li>\n<li>\n<p>4\u041c\u0411 \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0442\u0438\u043f\u0430 <strong>PSRAM <\/strong>\u0438 4\u041c\u0411 <strong>NOR<\/strong>-\u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<\/li>\n<li>\n<p>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b <strong>LCD-\u0434\u0438\u0441\u043f\u043b\u0435\u0435\u0432<\/strong> \u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0439 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0438, \u0432\u043a\u043b\u044e\u0447\u0430\u044f <strong>SPI<\/strong>, <strong>I2C<\/strong>, <strong>I2S <\/strong>\u0438 <strong>GPIO<\/strong>.<\/p>\n<\/li>\n<li>\n<p><strong>\u0412\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 <\/strong>\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u0447\u0430\u0440\u0434\u0436\u0435\u0440\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u0418 \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u0434\u043e\u0441\u0442\u043e\u0439\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438. \u0422\u0430\u043a\u043e\u0439 \u0447\u0438\u043f\u0441\u0435\u0442 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u044f\u043d\u0443\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u043c\u0435\u0439\u043a\u0443 \u0438\u043b\u0438 Java-\u0438\u0433\u0440\u044b, \u043d\u043e \u0434\u0430\u0436\u0435 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b \u0440\u0435\u0442\u0440\u043e-\u043a\u043e\u043d\u0441\u043e\u043b\u0435\u0439! \u0418 4\u041c\u0431 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0445\u0432\u0430\u0442\u0438\u0442 \u0441 \u0433\u043e\u043b\u043e\u0432\u043e\u0439. \u041f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u044b \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430 \u0443\u0436 \u0442\u043e\u0447\u043d\u043e \u0431\u044b\u043b\u0438!<\/p>\n<p>\u0412 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0432\u0441\u0451: \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 elf&#8217;\u044b \u0441 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u043e\u0439 (axf), \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0438 \u0442\u0435\u043c \u0431\u043e\u043b\u0435\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434. \u0412 \u043f\u043e\u0438\u0441\u043a\u0430\u0445 \u0441\u043b\u0438\u0442\u044b\u0445 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u044f <a href=\"https:\/\/firmware.center\/projects\/EXL\/Spreadtrum\/\">\u043d\u0430\u0442\u043a\u043d\u0443\u043b\u0441\u044f <\/a>\u043d\u0430 \u0430\u0440\u0445\u0438\u0432 \u0434\u043b\u044f \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u0441\u0432\u0435\u0436\u0435\u0433\u043e \u0447\u0438\u043f\u0441\u0435\u0442\u0430 \u2014 SC6531 (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 <strong>90%<\/strong> \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043c\u043e\u0436\u043d\u043e \u043a\u0443\u043f\u0438\u0442\u044c \u0432 \u0443\u0441\u043b\u043e\u0432\u043d\u043e\u043c DNS \u0434\u043e 2.000 \u0440\u0443\u0431\u043b\u0435\u0439), \u0438 \u0434\u043b\u044f \u043e\u0431\u0449\u0435\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043f\u0440\u0438\u043d\u044f\u043b\u0441\u044f \u0435\u0433\u043e \u0438\u0437\u0443\u0447\u0430\u0442\u044c.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8fe\/7ca\/266\/8fe7ca266f0a40ae5a7bde5cfa47332e.png\" width=\"1436\" height=\"727\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/8fe\/7ca\/266\/8fe7ca266f0a40ae5a7bde5cfa47332e.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8fe\/7ca\/266\/8fe7ca266f0a40ae5a7bde5cfa47332e.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043a\u043e\u0434\u043e\u0432\u0430\u044f \u0431\u0430\u0437\u0430 Spreadtrum \u0442\u044f\u043d\u0435\u0442\u0441\u044f \u0438\u0437 \u043d\u0443\u043b\u0435\u0432\u044b\u0445, \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043f\u043e \u202d\u202d\u00ab\u044d\u043c\u0431\u0435\u0434\u0434\u0435\u0440\u0441\u043a\u0438\u202d\u202d\u00bb \u043e\u043b\u0434\u0441\u043a\u0443\u043b\u044c\u043d\u043e: \u0432\u0435\u0441\u044c \u043a\u043e\u0434 \u043d\u0430 Plain-C, \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0435\u0437\u0434\u0435 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 (\u0434\u043b\u044f \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438 RAM, \u0442. \u043a. \u0444\u043b\u044d\u0448\u043a\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 XIP \u0438 \u043c\u0430\u043f\u043f\u0438\u0442\u0441\u044f \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438), UI-\u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d \u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043a\u0430\u043a \u0432 Windows \u2014 \u0442\u043e \u0435\u0441\u0442\u044c, \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0435 \u0441\u0432\u0438\u0447-\u043a\u0435\u0439\u0441\u044b. \u0412\u043a\u0440\u0430\u0442\u0446\u0435, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<ul>\n<li>\n<p>\u0412 \u043e\u0441\u043d\u043e\u0432\u0435 \u043b\u0435\u0436\u0438\u0442 RTOS <strong>ThreadX<\/strong>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <strong>Nucleus<\/strong>. \u0412 \u0437\u0430\u0434\u0430\u0447\u0438 \u041e\u0421\u0420\u0412 \u0432\u0445\u043e\u0434\u0438\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u044b\u0442\u0435\u0441\u043d\u044f\u044e\u0449\u0435\u0439 \u043c\u043d\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u0447\u043d\u043e\u0441\u0442\u0438, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u2014 \u043c\u044c\u044e\u0442\u0435\u043a\u0441\u044b, \u0441\u0435\u043c\u0430\u0444\u043e\u0440\u044b, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440\u0430, \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0445 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c. <\/p>\n<p>Nucleus \u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445 MediaTek, Coolsand\/RDA, Infineon (Siemens, Panasonic), Freescale (Motorola) \u0438 \u043c\u043d\u043e\u0433\u0438\u0445 \u0434\u0440\u0443\u0433\u0438\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0434 RTOS \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0436\u0435\u043b\u0435\u0437\u043e\u043c. \u0414\u0438\u0441\u043f\u043b\u0435\u0439, \u0437\u0432\u0443\u043a, \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u0441 DSP, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u2014 \u0432\u0441\u0451 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0435 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0438\u0434\u0451\u0442 UI-\u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 <strong>MMI <\/strong>\u2014 Man Machine Interface. MMI \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u043e\u043a\u043e\u043d, \u0441\u043b\u0443\u0436\u0431 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u0443\u0437\u044b\u043a\u0438 \u0432 \u0444\u043e\u043d\u0435), GUI-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0438 \u0430\u043f\u043f\u043b\u0435\u0442\u043e\u0432 \u2014 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c MMI \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0436\u0435\u0441\u0442\u043a\u043e-\u043f\u0440\u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435 \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u043e\u043a\u043e\u043d, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044e-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0447\u0442\u043e \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438.<\/p>\n<\/li>\n<\/ul>\n<h2>\u202d\u202d\u276f \u00ab\u0423\u0433\u043e\u043d\u044f\u0435\u043c\u202d\u202d\u00bb \u043e\u043a\u043d\u043e MMI<\/h2>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043e\u0434 \u0441 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044f, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0439\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0438 \u043f\u0440\u043e\u043f\u0430\u0442\u0447\u0438\u0442\u044c \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u0434\u0430\u0431\u044b \u043e\u043d\u0430 \u043c\u043e\u0433\u043b\u0430 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0430\u0448 \u043a\u043e\u0434 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u043a\u0430\u043a\u043e\u0435 \u043b\u0438\u0431\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435. \u0421 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0424\u0421 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u043e. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0442\u0440\u0435\u0439\u0441\u043e\u0432 \u043c\u043d\u043e\u0433\u043e, \u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0440\u0430\u0437\u0443 \u043d\u0430\u0448\u0435\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u2014 <code>SFS_OpenFile<\/code>, <code>SFS_GetFileSize<\/code>, <code>SFS_SetFilePointer\/GetFilePointer<\/code>, <code>SFS_ReadFile\/SFS_WriteFile<\/code> \u0438 <code>SFS_CloseFile<\/code>.<\/p>\n<p>\u041d\u0430 \u0432\u0445\u043e\u0434 <code>SFS_OpenFile<\/code> \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c <code>wchar_t<\/code> \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0444\u0430\u0439\u043b\u0443 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0434\u0438\u0441\u043a\u0430 (C:\/ \u2014 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435, D:\/ \u2014 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043f\u0430\u043c\u044f\u0442\u044c, E:\/ \u2014 MicroSD), \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441 \u0440\u0435\u0436\u0438\u043c\u043e\u043c \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u0438 \u0434\u0432\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0434\u043b\u044f \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432.<\/p>\n<p>\u0418\u043c\u0435\u0439\u0442\u0435 \u0432\u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u041e\u0421 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e <strong>\u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f <\/strong>\u0438 \u043d\u0430 \u043a\u043e\u043b\u043b\u0431\u044d\u043a\u0430\u0445!<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f56\/0d3\/6c4\/f560d36c4f96dc03988d0b20ef0b82f7.png\" alt=\"\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f SFS_OpenFile\" title=\"\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f SFS_OpenFile\" width=\"660\" height=\"591\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/f56\/0d3\/6c4\/f560d36c4f96dc03988d0b20ef0b82f7.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f56\/0d3\/6c4\/f560d36c4f96dc03988d0b20ef0b82f7.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><em>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f SFS_OpenFile<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u0430\u043a \u044f \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b \u0440\u0430\u043d\u0435\u0435, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u043a\u043d\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0435\u0441\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u2014 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f \u0442\u0430\u043a\u0430\u044f \u0436\u0435, \u043a\u0430\u043a \u0438 WndProc \u043d\u0430 Windows. \u0415\u0441\u043b\u0438 \u044d\u0442\u0443 \u0441\u0430\u043c\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043f\u0440\u043e\u043f\u0430\u0442\u0447\u0438\u0442\u044c, \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u202d\u202d\u00ab\u0443\u0433\u043d\u0430\u0442\u044c\u202d\u202d\u00bb \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 MMI \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0432\u043e\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 GUI-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u0430\u0442\u0430\u043a\u0438 \u044f \u0440\u0435\u0448\u0438\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u0430\u043a\u043e\u0435-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0435 \u0441\u0438\u043b\u044c\u043d\u043e \u043d\u0443\u0436\u043d\u043e\u0435 \u0432 \u043f\u043e\u0432\u0441\u0435\u0434\u043d\u0435\u0432\u043d\u043e\u0439 \u0436\u0438\u0437\u043d\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u0443\u044e \u0438\u0433\u0440\u0443 \u202d\u202d\u00ab\u0421\u043e\u043a\u043e\u0431\u0430\u043d\u202d\u202d\u00bb. <\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/afe\/277\/8da\/afe2778daf5c53040458c9feb21cf654.jpg\" alt=\"\u0423\u043b\u0438\u0442\u043a\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0432\u0438\u043d\u0443\u0442\u044c \u044f\u0449\u0438\u043a\u0438 \u043d\u0430 \u043c\u0435\u0441\u0442\u043e \u043a\u0430\u043a\u0430\u0448\u0435\u043a\" title=\"\u0423\u043b\u0438\u0442\u043a\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0432\u0438\u043d\u0443\u0442\u044c \u044f\u0449\u0438\u043a\u0438 \u043d\u0430 \u043c\u0435\u0441\u0442\u043e \u043a\u0430\u043a\u0430\u0448\u0435\u043a\" width=\"1920\" height=\"1440\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/afe\/277\/8da\/afe2778daf5c53040458c9feb21cf654.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/afe\/277\/8da\/afe2778daf5c53040458c9feb21cf654.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0423\u043b\u0438\u0442\u043a\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0432\u0438\u043d\u0443\u0442\u044c \u044f\u0449\u0438\u043a\u0438 \u043d\u0430 \u043c\u0435\u0441\u0442\u043e \u043a\u0430\u043a\u0430\u0448\u0435\u043a<\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438\u0433\u0440\u044b \u043d\u0430 \u043c\u043e\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u043b\u0430\u0441\u044c \u043e\u0442 \u0442\u043e\u0439, \u0447\u0442\u043e \u0435\u0441\u0442\u044c \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c \u043a\u043e\u0434\u0435, \u0442\u043e \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0438\u0441\u043a\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u202d\u202d\u00ab\u043f\u043e \u043d\u0430\u0438\u0442\u0438\u044e\u202d\u202d\u00bb. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0448\u0435\u043b \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u043e\u043c \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0438, \u0437\u0430\u0442\u0435\u043c \u043e\u0442 \u043d\u0435\u0451 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e WndProc \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0432 \u043e\u0434\u043d\u0443 \u0438\u0437 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 (\u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u0442\u043e, \u0447\u0442\u043e \u043e\u043d\u0430 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u0436\u0430, \u0430 \u0432\u0435\u043a\u0442\u043e\u0440 \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 -1 \u0438 1 \u0434\u043b\u044f X \u0438 Y), \u043f\u043e\u043d\u044f\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0442\u043e, \u0447\u0442\u043e \u043c\u043d\u0435 \u043d\u0443\u0436\u043d\u043e.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fc8\/324\/405\/fc83244055294d48e7ffc0acdab5027a.png\" width=\"765\" height=\"661\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/fc8\/324\/405\/fc83244055294d48e7ffc0acdab5027a.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/fc8\/324\/405\/fc83244055294d48e7ffc0acdab5027a.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0414\u0430\u043b\u0435\u0435 \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 Makefile, ld-\u0441\u043a\u0440\u0438\u043f\u0442 \u0438 \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u0442\u0447, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0438 \u043f\u043e \u0442\u0430\u0439\u043c\u0435\u0440\u0443 \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0438\u0433\u0440\u044b&#8230;<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c8f\/011\/811\/c8f01181187af88f6d2800d0b894fe92.png\" width=\"1022\" height=\"688\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/c8f\/011\/811\/c8f01181187af88f6d2800d0b894fe92.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c8f\/011\/811\/c8f01181187af88f6d2800d0b894fe92.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041c\u043e\u043c\u0435\u043d\u0442 \u0437\u0430\u043b\u0438\u0432\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u2014 \u0441\u0430\u043c\u044b\u0439 \u0440\u0438\u0441\u043a\u043e\u0432\u044b\u0439, \u043a\u043e\u0433\u0434\u0430 \u0432\u0441\u0435 280 \u0441\u0435\u043a\u0443\u043d\u0434 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0442\u044b \u043b\u0438\u0445\u043e\u0440\u0430\u0434\u043e\u0447\u043d\u043e \u0438\u0437\u0443\u0447\u0430\u0435\u0448\u044c \u043b\u0438\u0441\u0442\u0438\u043d\u0433 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430 \u043f\u0430\u0442\u0447\u0430 \u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435&#8230; \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0442\u044c, \u0447\u0442\u043e \u0442\u044b \u0433\u0434\u0435-\u0442\u043e \u0443\u043f\u0443\u0441\u0442\u0438\u043b \u043f\u0440\u0438\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0435\u0434\u0438\u043d\u0438\u0446\u044b \u043a \u0430\u0434\u0440\u0435\u0441\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0443 \u0442\u0435\u0431\u044f Thumb (\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f BX\/BLX \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442 \u0440\u0435\u0436\u0438\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0441 ARM \u043d\u0430 Thumb, \u0435\u0441\u043b\u0438 \u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u0431\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u0430, \u0430 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0440\u044b\u0436\u043a\u0430 \u2014 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u0431\u0438\u0442 \u043d\u0430 \u043d\u043e\u043b\u044c \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441), \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0448\u044c \u0440\u0435\u0431\u0443\u0442 \u043d\u0430 \u0440\u043e\u0432\u043d\u043e\u043c \u043c\u0435\u0441\u0442\u0435 \ud83d\ude42<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e53\/e5c\/96e\/e53e5c96e94d1d2ff191b2b2df894a6e.png\" width=\"1280\" height=\"460\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/e53\/e5c\/96e\/e53e5c96e94d1d2ff191b2b2df894a6e.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e53\/e5c\/96e\/e53e5c96e94d1d2ff191b2b2df894a6e.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0418 \u0432\u043e\u0442! \u0421\u043f\u0443\u0441\u0442\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u0432\u0441\u0451 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u043e\u0441\u044c! \u041c\u043e\u0435\u0439 \u0440\u0430\u0434\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u043f\u0440\u0435\u0434\u0435\u043b\u0430! \u0414\u0430\u043b\u0435\u0435 \u044f \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u043b \u043f\u0430\u0442\u0447 \u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u043b \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439, \u0434\u0430\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b \u202d\u202d\u00ab\u0434\u0438\u0441\u043a\u0430\u202d\u202d\u00bb \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f. \u0412\u0441\u0451 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0438 \u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0444\u0430\u0439\u043b &#171;Privet5.txt&#187;!<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/105\/b3c\/065\/105b3c065d8229081c40c782b33ae764.jpg\" alt=\"\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u0442\u0447!\" title=\"\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u0442\u0447!\" width=\"1920\" height=\"1440\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/105\/b3c\/065\/105b3c065d8229081c40c782b33ae764.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/105\/b3c\/065\/105b3c065d8229081c40c782b33ae764.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><em>\u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0430\u0442\u0447!<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432\u0440\u0443\u0447\u043d\u0443\u044e \u043f\u0430\u0442\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e, \u0430 Vi_Klay \u043d\u0435 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442\u0438\u043d\u0433\u0430, \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0441\u0432\u043e\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u043f\u0430\u0442\u0447\u0435\u0439 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u0421#. \u0421\u043a\u0440\u0438\u043f\u0442\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u0443\u044e\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043c\u043d\u043e\u0433\u0438\u0445 \u0440\u0443\u0438\u043d\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447: \u0438\u0449\u0443\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u0430\u043c, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044e\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u0441\u043a\u0440\u0438\u043f\u0442 \u043b\u0438\u043d\u043a\u0435\u0440\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0430\u0442\u0447\u0430\u0442 \u0444\u0443\u043b\u043b\u0444\u043b\u044d\u0448.<\/p>\n<pre><code class=\"cs\"> using System; using System.IO; using MonoPatcher.Scripting;              public static class Script {     public static int FindWindowHandlerFunction(byte[] firmware)     {         int offset = Patcher.PatternSearch(firmware, \"B5 FE 1C 04 20 00 4B C2 25 01 33 A0\", 0);          return offset + 2;     }      \/* Patch description: Replace file association from .txt to .app to make possible hooking EBook with our code *\/     public static void PatchFileAssociation(FileStream strm, byte[] firmware)     {         int offset = Patcher.PatternSearch(firmware, \"01 00 00 00 74 78 74 00\");         byte[] ext = { (byte)'a', (byte)'p', (byte)'p' };          if(offset == -1)         {             Patcher.Log.WriteError(\"Failed to apply file-extension patch\");                          return;         }          Patcher.Patch(strm, offset + 4, ext);     }      \/* Patch description: Hook file manager *\/     public static int FindFileManagerFunction(byte[] firmware)     {         int offset = Patcher.PatternSearch(firmware, \"B5 7F 1c 15 AA 08 1C 0C\", 0);          return offset;     }      public static void Run()     {         string baseDir = \"D:\/windows-arm-none-eabi-master\/bin\/fasolim\/\";          byte[] firmware = File.ReadAllBytes(baseDir + \"firmware.bin\");         Patcher.CopyFile(baseDir + \"firmware.bin\", baseDir + \"patched.bin\");          if(!File.Exists(baseDir + \"bin\/binloader.bin\"))         {             Patcher.Log.WriteLine(\"binloader.bin does not exist\");                          return;         }          byte[] binloader = File.ReadAllBytes(baseDir + \"bin\/binloader.bin\");          using(FileStream strm = File.OpenWrite(baseDir + \"patched.bin\"))         {                          Patcher.Log.WriteLine(\"Patching game window handler function...\");              int handlerOffset = FindWindowHandlerFunction(firmware);             int fmOffset = FindFileManagerFunction(firmware);              if(handlerOffset == -1)             {                 Patcher.Log.WriteError(\"Window handler function not found\");                              return;             }              if(fmOffset == -1)             {                 Patcher.Log.WriteError(\"FileManager function not found\");                     return;             }              \/\/Patcher.Log.WriteLine(string.Format(\"P{0:X}\", handlerOffset));              long firmwareEnd = strm.Length;             \/\/Patcher.Append(strm, binloader);              if(firmwareEnd % 4 != 0)             {                 Patcher.Log.WriteLine(\"Please align fullflash to border of 4\");                              return;             }              \/\/ Apply skip boot animation patch             \/\/byte[] skipAnim = File.ReadAllBytes(baseDir + \"patches\/nopoweronanim.bin\");             Patcher.Patch(strm, 0x252FE8, baseDir + \"bin\/nopoweronanim.bin\");             Patcher.InsertNOP(strm, 0x9DC3C4); \/\/ Alignment             Patcher.Patch(strm, 0x9DC3C4, baseDir + \"bin\/fmpatch.bin\");              PatchFileAssociation(strm, firmware);             Patcher.InsertNOP(strm, handlerOffset - 2); \/\/ Alignment             Patcher.Log.WriteLine(\"Function address: {0:X}\", handlerOffset);             Patcher.Patch(strm, handlerOffset, binloader);              \/\/Patcher.HookFunction(strm, handlerOffset, (int)firmwareEnd | 1, true); \/\/ Remember about THUMB!         }     } }          <\/code><\/pre>\n<h2>\u276f \u0420\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c\u0441\u044f \u0432 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430<\/h2>\n<p>\u041d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u044b \u0443\u0436\u0435 \u0443\u043c\u0435\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u044d\u043b\u044c\u0444\u044b \u0441 \u0444\u043b\u044d\u0448\u043a\u0438 \u0432 \u041e\u0417\u0423 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0438\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435. \u041e\u0434\u043d\u0430\u043a\u043e \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438\u0437 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0438\u043a\u0430 \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442, \u043f\u0440\u0438\u0448\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0445\u0443\u043a\u0430\u0442\u044c \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440!<\/p>\n<p>\u0417\u0430 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 \u0444\u0430\u0439\u043b\u043e\u0432 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>MMIAPIFMM_OpenFile<\/code>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0438\u0437 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u0435\u0433\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0439 \u0442\u0438\u043f. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0434\u0443\u043c\u0430\u043b \u0447\u0442\u043e \u0443 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432 \u0435\u0441\u0442\u044c \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0439 \u0441 MIME-\u0442\u0438\u043f\u0430\u043c\u0438 \u0438 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 \u0441 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0444\u0430\u0439\u043b\u043e\u0432, \u043d\u043e \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c, \u0437\u0434\u0435\u0441\u044c \u0443 \u043d\u0430\u0441 \u0431\u044b\u043b \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0441\u0432\u0438\u0447-\u043a\u0435\u0439\u0441, \u0447\u0442\u043e \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0438 \u043f\u043b\u043e\u0445\u043e \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u043a\u0440\u0430\u0441\u043e\u0442\u044b \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u0434\u0430, \u0438 \u0445\u043e\u0440\u043e\u0448\u043e \u0434\u043b\u044f \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433\u0430 (\u0435\u0441\u0442\u044c \u043f\u0440\u044f\u043c\u044b\u0435 \u0440\u0435\u0444\u0435\u0440\u0435\u043d\u0441\u044b \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0438).<\/p>\n<pre><code class=\"cpp\">PUBLIC void MMIAPIFMM_OpenFile(wchar *full_path_name_ptr) {     uint16              full_path_name_len                        = 0;     uint16              suffix_len                                = MMIFMM_FILENAME_LEN;     wchar              *suffix_wstr_ptr                           = PNULL;     MMIFMM_FILE_TYPE_E  file_type                                 = MMIFMM_FILE_TYPE_NORMAL;     MMIFILE_FILE_INFO_T file_info                                 = {0};      full_path_name_len = MMIAPICOM_Wstrlen(full_path_name_ptr);      \/\/SCI_TRACE_LOW:\"MMIAPIFMM_OpenFile Enter\"     SCI_TRACE_ID(TRACE_TOOL_CONVERT,MMIFMM_WINTAB_13453_112_2_18_2_21_3_559,(uint8*)\"\");      if (0 == full_path_name_len)     {         \/\/SCI_TRACE_LOW:\"MMIAPIFMM_OpenFile, file name is null\"         SCI_TRACE_ID(TRACE_TOOL_CONVERT,MMIFMM_WINTAB_13457_112_2_18_2_21_3_560,(uint8*)\"\");         return;     }      MMIAPICOM_WstrTraceOut(full_path_name_ptr, full_path_name_len * sizeof(wchar));      if (MMIAPIUDISK_UdiskIsRun()) \/\/U\u76d8\u4f7f\u7528\u4e2d     {         MMIPUB_OpenAlertWarningWin(TXT_COMMON_UDISK_USING);         return;     }      if (MMIAPIFMM_GetFileInfoFormFullPath(full_path_name_ptr, full_path_name_len, &amp;file_info))     {         suffix_wstr_ptr = SCI_ALLOCA((MMIFMM_FILENAME_LEN + 1) * sizeof(wchar));         if (PNULL == suffix_wstr_ptr)         {             \/\/SCI_TRACE_LOW:\"MMIAPIFMM_OpenFile Fail, no memory\"             SCI_TRACE_ID(TRACE_TOOL_CONVERT,MMIFMM_WINTAB_13474_112_2_18_2_21_3_561,(uint8*)\"\");             return;         }           SCI_MEMSET(suffix_wstr_ptr, 0x00, (MMIFMM_FILENAME_LEN + 1) * sizeof(wchar));          MMIAPIFMM_SplitFileName(file_info.file_name, file_info.file_name_len, PNULL, PNULL, suffix_wstr_ptr, &amp;suffix_len);          file_type = MMIAPIFMM_ConvertFileType(suffix_wstr_ptr, suffix_len);          #if defined(DRM_SUPPORT)             \/\/  \u5982\u679c\u662fDRM\u6587\u4ef6\uff0c\u8fdb\u4e00\u6b65\u5206\u6790\u662f\u4f55\u79cd\u5a92\u4f53\u6587\u4ef6                {                 DRM_PERMISSION_MODE_E drm_permission = DRM_PERMISSION_NONE;                 DRMFILE_PRE_CHECK_STATUS_E pre_check_drmfile_status = DRMFILE_PRE_CHECK_NORMAL;                                  if (MMIFMM_FILE_TYPE_DRM == file_type)                 { \/\/                  FmmCombineFullFileName(&amp;s_fmm_list_data,&amp;s_fmm_current_path,index,s_full_file_name,MMIFMM_FULL_FILENAME_LEN);                     file_type = MMIAPIDRM_GetMediaFileType(SFS_INVALID_HANDLE, full_path_name_ptr);                      switch(file_type)                     {                     case MMIFMM_FILE_TYPE_PICTURE:                     case  MMIFMM_FILE_TYPE_EBOOK:                         drm_permission = DRM_PERMISSION_DISPLAY;                         break;                                              case MMIFMM_FILE_TYPE_MUSIC:                     case MMIFMM_FILE_TYPE_MOVIE:                         drm_permission = DRM_PERMISSION_PLAY;                         break;                                                                 case MMIFMM_FILE_TYPE_JAVA:                         drm_permission = DRM_PERMISSION_EXECUTE;                         break;                                              default:                         break;                     }                                          if (DRM_PERMISSION_NONE == drm_permission)                     {                         MMIPUB_OpenAlertWarningWin(TXT_COMMON_NO_SUPPORT);                         return;                     }                                      pre_check_drmfile_status = MMIAPIDRM_PreCheckFileStatus(full_path_name_ptr, drm_permission);                     if (DRMFILE_PRE_CHECK_NORMAL != pre_check_drmfile_status)                     {                         if (DRMFILE_PRE_CHECK_NO_RIGHTS == pre_check_drmfile_status)                         {                             \/\/\u5982\u679c\u662f\u65e0\u6548\u7684\uff0c\u5219\u9700\u8981\u63d0\u793aguilist\u53bb\u5237\u65b0\u672c\u884c    \/\/                          MMIPUB_OpenAlertWarningWin(TXT_DRM_COPYRIGHTS_PROTECTION_NOT_OPERATE); \/\/                          MMIAPIFMM_UpdateListIconData(ctrl_id, index, list_data_ptr-&gt;pathname, s_full_file_name);                         }                                                  return;                     }                 }             } #endif          switch(file_type)         {         case MMIFMM_FILE_TYPE_PICTURE:             {                 MMIAPIFMM_PreviewPicture(full_path_name_ptr);             }             break; #ifdef MMI_AUDIO_PLAYER_SUPPORT         case MMIFMM_FILE_TYPE_MUSIC:             {                 MMIAPIMP3_PlayFile(full_path_name_ptr, (const uint32)full_path_name_len);             }             break; #endif  #ifdef VIDEO_PLAYER_SUPPORT         case MMIFMM_FILE_TYPE_MOVIE:             { #ifdef MMI_VIDEOPLAYER_MINI_FUNCTION                 MMIAPIVP_MiniFunction_PlayVideo(full_path_name_ptr,full_path_name_len); #else                 MMIAPIFMM_PreviewVideo(full_path_name_ptr); #endif             }             break; #endif  #ifdef EBOOK_SUPPORT         case MMIFMM_FILE_TYPE_EBOOK:             {                 MMIFMM_ShowTxtContent(full_path_name_ptr);             }             break; #endif #if defined MMI_VCARD_SUPPORT         case MMIFMM_FILE_TYPE_VCARD:             {                 \/\/MMIPB_ReadVCardFile(full_path_name_ptr);                 MMIFMM_ShowTxtContent(full_path_name_ptr);             }             break; #endif         case MMIFMM_FILE_TYPE_JAVA:             { #ifdef JAVA_SUPPORT_IA                 MMIAPIJAVA_InstallFromFilesystem(full_path_name_ptr, full_path_name_len); #elif defined (JAVA_SUPPORT_MYRIAD)                 MMIAPIJAVA_Install(full_path_name_ptr, full_path_name_len);                         #endif             }             break;         default:             {                 MMIPUB_OpenAlertWarningWin(TXT_COMMON_NO_SUPPORT);             }             break;         }          SCI_FREE(suffix_wstr_ptr);     }     else     {         MMIPUB_OpenAlertWarningWin(TXT_COM_FILE_NO_EXIST);     } }<\/code><\/pre>\n<p>\u0412 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0435 \u0435\u0441\u0442\u044c \u0447\u0438\u0442\u0430\u043b\u043a\u0430 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u0445 \u043a\u043d\u0438\u0433, \u043d\u043e \u043f\u043e\u043b\u044c\u0437\u044b \u043e\u0442 \u043d\u0435\u0451 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u2014 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043e\u043a \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043c\u0430\u043b\u043e, \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043d\u0435\u0432\u0437\u0440\u0430\u0447\u043d\u043e. \u0415\u0441\u043b\u0438 \u0437\u0430\u0445\u043e\u0442\u0438\u043c, \u0442\u043e \u0441\u0430\u043c\u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u044d\u043b\u044c\u0444 \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u043a\u043d\u0438\u0433 \u0432 .txt. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043e\u0447\u0435\u043d\u044c \u0443\u0434\u0430\u0447\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>MMIFMM_ShowTxtContent<\/code>, \u043a\u0443\u0434\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u043d\u0430\u0448\u0435\u043c\u0443 \u0444\u0430\u0439\u043b\u0443, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442, \u0438\u043c\u0435\u043d\u043d\u043e \u0435\u0451 \u043c\u044b \u0438 \u0431\u0443\u0434\u0435\u043c \u0441 \u0432\u0430\u043c\u0438 \u0445\u0443\u043a\u0430\u0442\u044c&#8230; \u043d\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u043c\u0435\u043d\u0438\u043c \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0446\u0438\u044e \u0444\u0430\u0439\u043b\u043e\u0432 \u0441 txt \u043d\u0430 app:<\/p>\n<pre><code class=\"cs\">\/* Patch description: Replace file association from .txt to .app to make possible hooking EBook with our code *\/     public static void PatchFileAssociation(FileStream strm, byte[] firmware)     {         int offset = Patcher.PatternSearch(firmware, \"01 00 00 00 74 78 74 00\");         byte[] ext = { (byte)'a', (byte)'p', (byte)'p' };          if(offset == -1)         {             Patcher.Log.WriteError(\"Failed to apply file-extension patch\");                          return;         }          Patcher.Patch(strm, offset + 4, ext);     }<\/code><\/pre>\n<p>\u0421\u0443\u0442\u044c \u0445\u0443\u043a\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u044f: \u043c\u044b \u202d\u202d\u00ab\u0432\u043e\u0440\u0443\u0435\u043c\u202d\u202d\u00bb \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e (\u043c\u0430\u0441\u0441\u0438\u0432 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432) \u0443 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0434\u0440\u0443\u0433\u043e\u0439, \u043d\u0435\u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0432 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0445\u0440\u0430\u043d\u0438\u043c \u0432 \u043d\u0435\u0439 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u043f\u0443\u0442\u0451\u043c \u043a \u043d\u0430\u0448\u0435\u043c\u0443 \u044d\u043b\u044c\u0444\u0443, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043e\u043a\u043d\u043e \u0445\u0443\u043a\u043d\u0443\u0442\u043e\u0439 \u0438\u0433\u0440\u044b. \u042d\u043b\u044c\u0444\u043b\u043e\u0430\u0434\u0435\u0440 \u0441\u0442\u0430\u0440\u0442\u0443\u0435\u0442, \u0431\u0435\u0440\u0451\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0435\u0451, \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u044f \u0432\u0441\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0435\u0439. \u0422\u0430\u043a\u043e\u0439 \u0432\u043e\u0442 \u043d\u0435\u0437\u0430\u043c\u044b\u0441\u043b\u043e\u0432\u0430\u0442\u044b\u0439 \u0445\u0443\u043a:<\/p>\n<pre><code class=\"cs\">#include &lt;api.h&gt;  #define PATH_VARIABLE 0x46F9224 \/\/0x46C37F0  \/\/ TODO: Make this patch more portable. Now it require manual porting for new platforms. #define RUN_BOXMAN_GAME_PTR 0x6EA9E4 #define PATH_MAX 255  #define HEAP_BASE 0x212431C7  #define _Alloc(...) ((void*(*)( unsigned int size, unsigned int heap, char* where, unsigned int lineNumber )) 0x0043E2BC + 1)(__VA_ARGS__)  void MMIAPIEBOOK_ManagerWinMsg_4Fmm(uint8 file_dev, wchar_t* name_ptr, uint32 name_length, uint32 file_size, wchar_t* full_name_ptr, uint32 full_name_length) { wchar_t* filePath = (wchar_t*)PATH_VARIABLE; uint32 written;  int len = wstrlen(full_name_ptr) + 1;  for(int i = 0; i &lt; len; i++) filePath[i] = full_name_ptr[i];  ((void(*)()) RUN_BOXMAN_GAME_PTR + 1)(); \/\/ TODO: Pattern search of this function (it's thunk at this moment).   }<\/code><\/pre>\n<p>\u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0440\u0435\u0432\u0435\u0440\u0441\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0434\u043b\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u043e\u043a\u043e\u043d \u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435 \u044f \u043d\u0430\u0448\u0435\u043b \u0441\u043a\u0440\u044b\u0442\u043e\u0435 \u043c\u0435\u043d\u044e&#8230; \u0441 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0438\u0433\u0440\u043e\u0439, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0435\u0441\u0442\u044c \u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435, \u043d\u043e \u0448\u0442\u0430\u0442\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u0434\u043e \u043d\u0435\u0451 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f!<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2e6\/a74\/f9f\/2e6a74f9f39e55ac7fa2bc8457d30124.png\" width=\"903\" height=\"833\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/2e6\/a74\/f9f\/2e6a74f9f39e55ac7fa2bc8457d30124.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2e6\/a74\/f9f\/2e6a74f9f39e55ac7fa2bc8457d30124.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0414\u0430\u043b\u0435\u0435 \u044f \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0431\u0438\u043d\u043b\u043e\u0430\u0434\u0435\u0440 \u043d\u0430 \u043d\u043e\u0432\u044b\u0439 \u043b\u0430\u0434 \u0438 \u043f\u043e \u0438\u0442\u043e\u0433\u0443 \u0443 \u043c\u0435\u043d\u044f \u0432\u0441\u0451 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e&#8230;<\/p>\n<p>&#8230;\u043d\u043e \u0434\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u043c\u043d\u0435 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0434\u0432\u0430 \u0434\u043d\u044f \u043f\u043e\u0434\u0440\u044f\u0434 \u043d\u0435 \u0441\u043f\u0430\u0442\u044c \u0432\u0441\u044e \u043d\u043e\u0447\u044c \u0438 \u0441\u0438\u0434\u0435\u0442\u044c \u0434\u043e 5 \u0443\u0442\u0440\u0430 \ud83d\ude09<\/p>\n<pre><code class=\"cs\">\/* * *Spreadtrum binloader * *\u00a92025 Bogdan Nikolaev. All rights reserved. * *Special thanks to Ilya_ZX *\/  \/\/ Binloader uses reduced, statically linked with binary function table #include &lt;api.h&gt;  #define DISK_SYSTEM u\"D:\/\" #define DISK_CARD u\"E:\/\"  \/\/ We hijack global variable from web browser. #define LOAD_ADDRESS_VARIABLE 0x46F9224 \/\/ 0x46C37F0 #define STATE_VARIABLE 0x46C37F4  #define STATE_NUMBER 0xCAFEBABE  #define CreateDebugFile(str) FileClose(FileOpen(str, FILE_CREATE, 0, 0));  int HandleBoxmanWinMsgHook(uint32 window, uint32 msgId, uint32 dparam) { uint32 readBytes = 0; uint32 handle;  void** loadAddr = (void**)LOAD_ADDRESS_VARIABLE; \/\/ Also filemanager put absolute path to binary here unsigned int* stateVariable = (unsigned int*)STATE_VARIABLE;  if(msgId == MSG_CLOSE_WINDOW || msgId == MSG_KEYDOWN_CANCEL || msgId == MSG_CTL_CLOSE) { MMKCloseWin(window); *stateVariable = 0; }  \/\/ FIT IN 294 BYTES!!! if(*stateVariable != STATE_NUMBER) { \/\/ Initialization state: Load runtime from E:\/rt.so to memory, store it's address into some global variable. wchar_t* str = (wchar_t*)loadAddr;  handle = FileOpen(str, 0x31, 0, 0);  if(!handle) goto err;  uint32 size = 0; FileGetSize(handle, &amp;size); *loadAddr = Alloc(size, \"m\", 1); if(!(*loadAddr)) goto err;  FileRead(handle, *loadAddr, size, &amp;readBytes);  if(readBytes == 0) goto err;  *stateVariable = STATE_NUMBER; } else { \/\/ Program state: MMI keep sending our hooked function events, we pass them directly to loaded program. \/\/ The program can also pass execution to another program by swapping WindowFunc with pointer to loaded program. LoaderContext ctx = { __api_table, loadAddr }; WindowFunc func = (WindowFunc)(*loadAddr + 1); \/\/ Beware of THUMB  func(&amp;ctx, window, msgId, dparam); }  return 1; err: CreateDebugFile(u\"D:\/E\"); return 1; }<\/code><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u044f \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0438 \u043d\u0430\u0447\u0430\u043b \u0440\u0435\u0432\u0435\u0440\u0441\u0438\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0434\u0438\u0441\u043f\u043b\u0435\u0435\u043c. \u041f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0438 \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0435 \u0437\u0430\u0432\u044f\u0437\u0430\u043d\u0430 \u043d\u0430 ROM \u0438 \u0432\u0448\u0438\u0442\u044b\u0435 \u0441 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u043e\u0439 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u0439\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u0444\u0440\u0435\u0439\u043c\u0431\u0443\u0444\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u0443\u044e \u0433\u0440\u0430\u0444\u0438\u043a\u0443 \u0438 \u0434\u043b\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0430\u043a \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u044b\u0445 \u202d\u202d\u00ab\u0433\u0440\u044f\u0437\u043d\u044b\u0445\u202d\u202d\u00bb \u0437\u043e\u043d (\u0434\u0430\u0431\u044b \u043f\u0435\u0440\u0435\u0440\u0438\u0441\u043e\u0432\u044b\u0432\u0430\u0442\u044c \u043d\u0435 \u0432\u0435\u0441\u044c \u044d\u043a\u0440\u0430\u043d, \u0430 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e, \u0447\u0442\u043e \u043e\u0431\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c). \u0422\u0443\u0442 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043f\u043e\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0438\u0433\u0440\u044b \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0442\u0440\u0435\u0439\u0441\u043e\u0432 \u0432 \u044d\u0442\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 \u043d\u0435 \u0431\u044b\u043b\u043e, \u0430 \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u0445 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043e\u0447\u0435\u043d\u044c \u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0442\u043b\u0438\u0447\u0430\u043b\u0430\u0441\u044c, \u043e\u0434\u043d\u0430\u043a\u043e \u043f\u043e\u043b\u044c\u0437\u0443\u044f\u0441\u044c \u0434\u0435\u0434\u0443\u043a\u0446\u0438\u0435\u0439, \u044f \u0437\u0430 \u043f\u0430\u0440\u0443 \u0447\u0430\u0441\u043e\u0432 \u043d\u0430\u0448\u0451\u043b \u043e\u0431\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438.<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e59\/843\/943\/e598439432b20a2eb78b8c003a9cb944.png\" width=\"1283\" height=\"652\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/e59\/843\/943\/e598439432b20a2eb78b8c003a9cb944.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e59\/843\/943\/e598439432b20a2eb78b8c003a9cb944.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0418 \u0437\u0430\u043b\u0438\u043b \u044d\u043a\u0440\u0430\u043d \u0436\u0435\u043b\u0442\u044b\u043c \u0446\u0432\u0435\u0442\u043e\u043c:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2a7\/ce6\/d39\/2a7ce6d39c89e695448b0a5758d672d9.jpg\" width=\"1920\" height=\"1440\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/2a7\/ce6\/d39\/2a7ce6d39c89e695448b0a5758d672d9.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2a7\/ce6\/d39\/2a7ce6d39c89e695448b0a5758d672d9.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<pre><code class=\"cpp\">#include &lt;api.h&gt;  void LcdClear() { LcdId lcd = { 0, 0 }; Rect rct = { 0, 0, 240, 320 };  uint16* fb = ((uint16*(*)(LcdId* id)) 0x321DEA + 1)(&amp;lcd);  uint16 startEnd[4] = { 0, 0, 240, 320 };  ((void(*)(LcdId* lcdId, uint32 start, uint32 end, uint16 col)) 0x9701C4 + 1)(&amp;lcd, ((uint32*)&amp;startEnd[0])[0], ((uint32*)&amp;startEnd[0])[1], 0xFFFF);  for(int i = 0; i &lt; 240 * 320; i++) fb[i] = 0xFF00;  ((void(*)()) 0x966378 + 1)(); \/\/ Update rect    \/\/((void(*)(LcdId* lcdId, Rect* rct, void* res)) 0x9662F2 + 1)(&amp;lcd, &amp;rct, 0); \/\/ Store update rect }  __attribute__((section(\".main\"))) int WindowProc(LoaderContext* context, int window, int msgId, int dparam) { LcdClear();  \/\/ Send MSG ((void(*)(uint32 window, uint32 msg, uint32 res)) 0x36A3CA + 1)(window, MSG_FULL_PAINT, 0);  return 1; }<\/code><\/pre>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u044b \u043f\u043e \u0440\u0430\u0437\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u0430\u043c, \u0434\u043b\u044f \u0443\u043d\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u043c\u0435\u0436\u0434\u0443 \u043d\u0438\u043c\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0439. \u0421\u0430\u043c\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u043e \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u0430\u043c \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0443\u0436\u0435 \u0438\u0437\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0434\u043e\u043d\u043e\u0440\u0441\u043a\u0438\u0445 \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u043f\u043e\u0438\u0441\u043a \u0441\u0440\u0435\u0434\u0438 \u0440\u0430\u0437\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0435. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044d\u043a\u0441\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u0442 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u0435\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 \u0438 \u043c\u0430\u043a\u0440\u043e\u0441\u0430\u043c\u0438 \u0434\u043b\u044f \u0438\u0445 \u0432\u044b\u0437\u043e\u0432\u0430:<\/p>\n<pre><code class=\"cpp\">public static ImportedFunction[] Functions = new ImportedFunction[]{         \/\/ File IO         new ImportedFunction(\"Alloc\", \"B5 F7 1C 07 25 00 37 19 B0 82\", \"void*\", \"unsigned int size, char* where, unsigned int lineNumber\"),         new ImportedFunction(\"wstrlen\", \"1C 01 D1 00 47 70 88 0A\", \"uint32\", \"wchar_t* str\"),         new ImportedFunction(\"FileOpen\", \"B5 FE 1C 05 09 08\", \"uint32\", \"wchar_t* fileName, uint32 accessMode, uint32 shareMode, uint32 fileAttributes\"),         new ImportedFunction(\"FileRead\", \"B5 FF 1C 06 1C 17 1C 1D B0 85 9C 0E 21 00 A0 86 F7 FF F8 2F 1C 23\", \"uint32\", \"uint32 handle, void* buffer, uint32 bytesToRead, uint32* bytesRead\"), \/\/ FileRead as well as FileWrite are similiar due to identical arguments         new ImportedFunction(\"FileWrite\", \"B5 FF 1C 06 1C 17 1C 1D B0 85 9C 0E 21 00 A0 8D F7 FF F8 09 1C 23\", \"uint32\", \"uint32 handle, void* buffer, uint32 bytesToWrite, uint32* bytesWritten\"),         new ImportedFunction(\"FileClose\", \"B5 10 1C 04 A0 8A 21\", \"uint32\", \"uint32 fileHandle\"),         new ImportedFunction(\"FileGetSize\", \"B5 B0 1C 05 1C 0C 21 00\", \"uint32\", \"uint32 fileHandle, uint32* fileSize\"),         new ImportedFunction(\"MMKCloseWin\", \"B5 70 25 00 F1 A7\", \"uint32\", \"uint32 windowHandle\"),          \/*new ImportedFunction(\"TurnOffBacklight\", \"49 1D B5 10 20 02 60 C8\", \"void\", \"uint32 value\"),         new ImportedFunction(\"AllowTurnOffBacklight\", \"B5 F1 B0 92 24 00 94 11\", \"void\", \"uint32 value\"),         new ImportedFunction(\"SetKeypadBacklight\", \"B5 10 1C 04 1C 01 A0 F4\", \"void\", \"uint32 value\"),         new ImportedFunction(\"AllowBacklight\", \"B5 B0 1C 04 1C 02 48 BF 4D A5\", \"void\", \"uint32 value\")*\/      };<\/code><\/pre>\n<pre><code class=\"cpp\">#ifdef LOADER __attribute__((section(\".text\"))) void* __api_table[] = { (void*)(0x90FEF8 | 1), \/\/ Alloc (void*)(0x92DEAC | 1), \/\/ wstrlen (void*)(0x9D41AE | 1), \/\/ FileOpen (void*)(0x9D4CD2 | 1), \/\/ FileRead (void*)(0x9D4D1E | 1), \/\/ FileWrite (void*)(0x9D4CA4 | 1), \/\/ FileClose (void*)(0x9D509C | 1), \/\/ FileGetSize (void*)(0x981242 | 1), \/\/ MMKCloseWin }; #endif  \/\/ _addr defines needed only for patches to make them portable #define Alloc_addr 0x90FEF8 #define Allocsig unsigned int size, char* where, unsigned int lineNumber #ifndef PATCH #define Alloc(...) ((void*(*)( Allocsig )) __api_table[0])(__VA_ARGS__) #else #define Alloc(...) ((void*(*)( Allocsig )) 0x90FEF8 + 1)(__VA_ARGS__) #endif<\/code><\/pre>\n<p>\u0421\u0430\u043c\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u0432 \u043a\u043e\u043d\u0446\u0435 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0438\u043b\u0438 \u0432 \u0442\u0435\u043b\u0435 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c BMP-\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438&#8230; \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u0430\u043a \u0434\u0435\u043b\u0430\u043b\u0438 \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u043c\u0438 Motorola:<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/93f\/034\/2de\/93f0342de7b35fad626466661d0ad078.png\" width=\"551\" height=\"375\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/93f\/034\/2de\/93f0342de7b35fad626466661d0ad078.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/93f\/034\/2de\/93f0342de7b35fad626466661d0ad078.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<h2>\u276f \u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>\u0412\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u043c\u043e\u0434\u0434\u0438\u043d\u0433 \u0443 \u043d\u0430\u0441 \u0441 \u0432\u0430\u043c\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u0432\u0430\u043c \u0431\u044b\u043b\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e! \u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e \u0432 \u0442\u0430\u043a\u043e\u0439 \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043d\u0435\u0442: \u0443 \u043c\u0435\u043d\u044f \u0431\u044b\u043b\u0438 \u043d\u0430 \u0440\u0443\u043a\u0430\u0445 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435, \u043d\u043e \u0432\u0441\u0451 \u0436\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438, \u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u0431\u044b\u043b\u0430 \u0441\u043e\u0431\u0440\u0430\u043d\u0430 \u0432 \u0434\u0435\u0431\u0430\u0433\u0435 \u0438 \u0432 \u043d\u0435\u0439 \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0442\u0440\u043e\u043a \u0434\u043b\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430. \u0411\u043e\u043b\u0435\u0435 \u043e\u043f\u044b\u0442\u043d\u044b\u0435 \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u044b \u0443\u043c\u0443\u0434\u0440\u044f\u044e\u0442\u0441\u044f \u0440\u0430\u0441\u043a\u0430\u043f\u044b\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0441 \u043a\u0443\u0434\u0430 \u043c\u0435\u043d\u044c\u0448\u0438\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0438 \u0431\u0435\u0437 \u0434\u0435\u0431\u0430\u0433\u0433\u0435\u0440\u0430, \u0430 \u044d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u0435\u0441\u0442\u044c \u043a\u0443\u0434\u0430 \u0440\u0430\u0441\u0442\u0438!<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a8d\/a14\/a9d\/a8da14a9d43c2b1ebe9637dbca2a4d8d.gif\" width=\"480\" height=\"270\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a8d\/a14\/a9d\/a8da14a9d43c2b1ebe9637dbca2a4d8d.gif 780w,&#10;       https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a8d\/a14\/a9d\/a8da14a9d43c2b1ebe9637dbca2a4d8d.gif 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0418 \u0445\u043e\u0442\u044f \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u043d\u0435 \u0443\u0441\u043f\u0435\u043b\u0438 \u0441 \u0432\u0430\u043c\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0435\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443, \u0437\u0430\u0434\u0435\u043b \u0443\u0436\u0435 \u0435\u0441\u0442\u044c \u0438 \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0434\u0435\u043b\u044c\u043a\u0443-\u0434\u0440\u0443\u0433\u0443\u044e \u0432\u044b\u0439\u0434\u0435\u0442 \u0432\u0442\u043e\u0440\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u0438 \u0441\u043e \u0437\u043c\u0435\u0439\u043a\u043e\u0439 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u043e\u043c \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u0440\u0435\u0442\u0440\u043e-\u043a\u043e\u043d\u0441\u043e\u043b\u0438 \ud83d\ude42 <\/p>\n<p>\u0410 \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430 \u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0430 \u0440\u0435\u043c\u043e\u043d\u0442\u0430, \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430 \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u0433\u0430\u0434\u0436\u0435\u0442\u043e\u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0445 \u043b\u0435\u0442 \u2014 \u043f\u043e\u0434\u043f\u0438\u0441\u044b\u0432\u0430\u0439\u0442\u0435\u0441\u044c \u043d\u0430 \u043c\u043e\u0439 Telegram-\u043a\u0430\u043d\u0430\u043b \u202d\u00ab<a href=\"https:\/\/t.me\/monobogdann\">\u041a\u043b\u0443\u0431 \u0444\u0430\u043d\u0430\u0442\u043e\u0432 \u0431\u0430\u043b\u0434\u0435\u0436\u0430<\/a>\u202d\u00bb, \u043a\u0443\u0434\u0430 \u044f \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e \u0431\u044d\u043a\u0441\u0442\u0435\u0439\u0434\u0436\u0438 \u0441\u0442\u0430\u0442\u0435\u0439, \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 \u043d\u043e\u0432\u044b\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u0438 \u0432\u0438\u0434\u0435\u043e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0438\u043d\u043e\u0433\u0434\u0430 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u044e \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u043f\u043e\u0441\u0442\u044b \u0438 \u0449\u0438\u0442\u043f\u043e\u0441\u0442\u044e. \u0410 \u0440\u043e\u043b\u0438\u043a\u0438 (\u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0434\u0443\u0431\u043b\u0438\u0440\u0443\u044e\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u044e) \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u043d\u0430 \u043c\u043e\u0451\u043c<a href=\"https:\/\/www.youtube.com\/@monobogdan\">\u00a0YouTube \u043a\u0430\u043d\u0430\u043b\u0435<\/a>.<\/p>\n<p>\u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u0441\u043f\u0430\u0441\u0438\u0431\u043e: <a class=\"mention\" href=\"\/users\/ilya_zx\">@ILYA_ZX<\/a> \u0438 <a class=\"mention\" href=\"\/users\/andy51\">@Andy51<\/a> \u0437\u0430 \u043c\u043e\u0442\u0438\u0432\u0430\u0446\u0438\u044e, <a class=\"mention\" href=\"\/users\/azq2\">@Azq2<\/a>\u0438 <a class=\"mention\" href=\"\/users\/exl\">@EXL<\/a> \u0437\u0430 \u0441\u043e\u0432\u0435\u0442\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0430\u0432\u0442\u043e\u0440\u0430\u043c IDA Pro \u0438 Ghidra \u0437\u0430 \u043a\u0440\u0443\u0442\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b! \u0411\u0435\u0437 \u0432\u0430\u0441 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u0431\u044b \u043d\u0435 \u0432\u044b\u0448\u043b\u043e.<\/p>\n<p><strong>\u0412\u0430\u0436\u043d\u043e:<\/strong> \u0434\u0440\u0443\u0437\u044c\u044f! \u042f \u0443\u0432\u0435\u0440\u0435\u043d, \u0447\u0442\u043e \u0441\u0442\u0430\u0442\u044c\u044e \u0431\u0443\u0434\u0443\u0442 \u0447\u0438\u0442\u0430\u0442\u044c \u0432\u044b\u0445\u043e\u0434\u0446\u044b \u0441 \u0444\u043e\u0440\u0443\u043c\u043e\u0432 <strong>\u043c\u043e\u0434\u0434\u0435\u0440\u043e\u0432 <\/strong>\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u0430\u0436\u0435 \u0440\u0435\u0431\u044f\u0442\u0430, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 <strong>\u043f\u0440\u043e\u0448\u0438\u0432\u043e\u0447\u043d\u044b\u043c\u0438 \u0431\u043e\u043a\u0441\u0430\u043c\u0438<\/strong>. \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438\u043b\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 Siemens (S-Gold \u0438\u043b\u0438 E-Gold \u2014 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f) \u0438 \u0432\u044b \u0445\u043e\u0442\u0435\u043b\u0438 \u0431\u044b \u043f\u043e\u043c\u043e\u0447\u044c \u043e\u0431\u0449\u0435\u043c\u0443 \u043c\u043e\u0434\u0434\u0435\u0440\u0441\u043a\u043e\u043c\u0443 \u0434\u0435\u043b\u0443 \u2014 \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u043c\u043d\u0435 \u0432 Telegram. \u041d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 \u0443\u0436\u0435 \u0434\u0430\u0432\u043d\u043e \u043d\u0438\u043a\u043e\u043c\u0443 \u043d\u0435 \u043d\u0443\u0436\u0435\u043d \u0438 E-Gold\/S-Gold \u0443\u0436\u0435 \u0431\u043e\u043b\u0435\u0435 15 \u043b\u0435\u0442 \u0441\u043d\u044f\u0442 \u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0441\u0442\u0432\u0430, \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u044e \u043f\u043e\u043b\u043d\u0443\u044e \u0430\u043d\u043e\u043d\u0438\u043c\u043d\u043e\u0441\u0442\u044c \u0438 \u043a\u0440\u0443\u0442\u043e\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442 \ud83d\ude42<\/p>\n<p><strong>\u041e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u043d\u043e! \u0420\u0430\u0437\u044b\u0441\u043a\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0434\u0435\u0432\u0430\u0439\u0441\u044b \u0434\u043b\u044f \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u0435\u0439!<\/strong><\/p>\n<p>\u0414\u0440\u0443\u0437\u044c\u044f! \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u043b\u0430\u0441\u044c \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u044f\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u044d\u043b\u044c\u0444\u043e\u0432, \u0442\u043e \u0441\u043f\u0435\u0448\u0443 \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c: \u0434\u043b\u044f \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u0431\u0443\u0434\u0443\u0449\u0438\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0441 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0441\u0430\u043c\u043e\u043f\u0430\u043b\u044c\u043d\u044b\u0445 \u0438\u0433\u0440\u0443\u0448\u0435\u043a \u043f\u043e\u0434 \u043d\u0435\u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u043e\u0437\u044b\u0441\u043a \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0438 \u043a\u043e\u043d\u0441\u043e\u043b\u0435\u0439! \u0412 2000-\u0445 \u0433\u043e\u0434\u0430\u0445, \u043a\u0438\u0442\u0430\u0439\u0446\u044b \u0447\u0430\u0441\u0442\u043e \u0434\u0435\u043b\u0430\u043b\u0438 \u0434\u0435\u0448\u0435\u0432\u044b\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u044b \u0441 \u0438\u0433\u0440\u043e\u0432\u044b\u043c \u0443\u043a\u043b\u043e\u043d\u043e\u043c \u2014 \u043e\u0431\u044b\u0447\u043d\u043e \u0443 \u043d\u0438\u0445 \u0431\u044b\u043b\u043e \u043f\u043e\u0434\u043e\u0431\u0438\u0435 \u0433\u0435\u0439\u043c\u043f\u0430\u0434\u0430 (\u0434\u0436\u043e\u0439\u0441\u0442\u0438\u043a\u0430) \u0438\u043b\u0438 \u0445\u043e\u0442\u044f \u0431\u044b \u0434\u0432\u0435 \u043a\u043d\u043e\u043f\u043a\u0438 \u0441 \u0432\u0435\u0440\u0445\u043d\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u044e A\/B, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b NES\/Sega. \u0424\u0438\u0448\u043a\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0430 \u0442\u0430\u043a\u0438\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438 \u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043d\u0438\u0445 \u043d\u043e\u0432\u044b\u0435 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b, \u0447\u0435\u043c \u044f \u0441\u0435\u0439\u0447\u0430\u0441 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0441\u044c, \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0431 \u044d\u0442\u043e\u043c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e \u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0438\u0434\u0435\u043e! \u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0435\u0441\u0442\u044c \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \u0438 \u0432\u044b \u0433\u043e\u0442\u043e\u0432\u044b \u0435\u0433\u043e \u0437\u0430\u0434\u043e\u043d\u0430\u0442\u0438\u0442\u044c \u0438\u043b\u0438 \u043f\u0440\u043e\u0434\u0430\u0442\u044c, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430 \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u043c\u043d\u0435 \u0432 Telegram (@<a href=\"https:\/\/t.me\/monobogdan\">monobogdan<\/a>) \u0438\u043b\u0438 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438. \u0422\u0430\u043a\u0436\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0442 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u044b-\u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043d\u0430 Android (\u043d\u0430 \u0440\u044b\u043d\u043a\u0435 \u0420\u0424 \u0442\u043e\u0447\u043d\u043e \u0431\u044b\u043b\u0430 Func Much-01), \u0442\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u043a\u043e\u043d\u0442\u0435\u043d\u0442 \u0447\u0443\u0442\u043e\u0447\u043a\u0443 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0430 \ud83d\ude42<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1a9\/e35\/4bf\/1a9e354bf7c4f56904c44f03f93ae1e5.png\" width=\"1560\" height=\"1147\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/1a9\/e35\/4bf\/1a9e354bf7c4f56904c44f03f93ae1e5.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1a9\/e35\/4bf\/1a9e354bf7c4f56904c44f03f93ae1e5.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0410 \u0442\u0430\u043a\u0436\u0435 \u044f \u0438\u0449\u0443 \u0441\u0442\u0430\u0440\u044b\u0435 (2010-2014) \u043f\u043e\u0434\u0434\u0435\u043b\u043a\u0438 \u043d\u0430 \u0431\u0440\u0435\u043d\u0434\u043e\u0432\u044b\u0435 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u044b Samsung, Apple \u0438 \u0442. \u043f. \u041e\u043d\u0438 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u0432\u0435\u0441\u044c\u043c\u0430 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0445 \u0447\u0438\u043f\u0441\u0435\u0442\u0430\u0445 \u0438 \u043f\u043e\u0434\u0434\u0430\u044e\u0442\u0441\u044f \u0445\u043e\u0440\u043e\u0448\u0435\u043c\u0443 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0443, \u043f\u0430\u0440\u043e\u0447\u043a\u0443 \u0441\u0442\u0430\u0442\u0435\u0439 \u0443\u0436\u0435 \u0432\u044b\u0448\u043b\u043e, \u043d\u043e \u0443 \u043c\u0435\u043d\u044f \u0435\u0449\u0451 \u0435\u0441\u0442\u044c \u0438\u0434\u0435\u0438 \u043f\u043e \u0438\u0445 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0443! \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0443 \u043a\u043e\u0433\u043e-\u0442\u043e \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0441\u0430\u043c\u044b\u0435 \u043f\u0435\u0440\u0432\u044b\u0435 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u044b Xiaomi (\u0441\u0435\u0440\u0438\u0438 Mi), Meizu (\u0435\u0449\u0451 \u043d\u0430 Exynos) \u0438\u043b\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u044b \u043d\u0430 Linux (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 Motorola EM30, RAZR V8, ROKR Z6, ROKR E2, ROKR E6, ZINE ZN5 \u0438 \u0442. \u043f., \u043e \u043d\u0438\u0445 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e \u0438 \u0432\u0438\u0434\u0435\u043e \u0442. \u043a. \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043e\u043d\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043d\u0430 \u043e\u0447\u0435\u043d\u044c \u043c\u043e\u0449\u043d\u044b\u0445 \u0434\u043b\u044f \u0441\u0432\u043e\u0438\u0445 \u043b\u0435\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445, \u043f\u043e\u0434\u0434\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u043e\u043c\u0443 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0443 \u0438 \u0431\u044b\u043b\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0434\u0430\u0436\u0435 Quake!). \u0412\u0441\u0435\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0434\u043e\u043d\u0430\u0442\u044b!<\/p>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b66\/eee\/18b\/b66eee18b9c5e1a53c176d2c3358a47f.png\" width=\"700\" height=\"395\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/b66\/eee\/18b\/b66eee18b9c5e1a53c176d2c3358a47f.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b66\/eee\/18b\/b66eee18b9c5e1a53c176d2c3358a47f.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a14\/f3f\/767\/a14f3f7670252de2229797bf7f836be6.jpg\" width=\"386\" height=\"408\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/a14\/f3f\/767\/a14f3f7670252de2229797bf7f836be6.jpg 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a14\/f3f\/767\/a14f3f7670252de2229797bf7f836be6.jpg 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p><strong>\u0410 \u0435\u0449\u0451 \u044f \u0434\u0435\u0440\u0436\u0443 \u0432\u0441\u0435 \u0441\u0432\u043e\u0438 \u043c\u043e\u0431\u0438\u043b\u044b \u0432 \u043e\u0434\u043d\u043e\u0439 \u043a\u043e\u0440\u0437\u0438\u043d\u0435 \u043f\u0440\u0438 \u0441\u0435\u0431\u0435 (\u0432 \u0441\u043c\u044b\u0441\u043b\u0435, \u0432\u0441\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b \u0443 \u043e\u0434\u043d\u043e\u0433\u043e \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430) \u2014 Timeweb. \u041f\u043e\u0442\u043e\u043c\u0443 \u043d\u0430\u0433\u043b\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u0442\u043e, \u0447\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0441\u044c \u0441\u0430\u043c \u2014\u00a0<\/strong><a href=\"https:\/\/timeweb.cloud\/?utm_source=habr&amp;utm_medium=banner&amp;utm_campaign=promo\"><strong>\u0432\u044d\u043b\u043a\u0430\u043c<\/strong><\/a><strong>:<\/strong><\/p>\n<blockquote>\n<p><a href=\"https:\/\/t.me\/timewebru\"><strong>\u041d\u043e\u0432\u043e\u0441\u0442\u0438, \u043e\u0431\u0437\u043e\u0440\u044b \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0438 \u043a\u043e\u043d\u043a\u0443\u0440\u0441\u044b \u043e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b\u00a0<\/strong><\/a><a href=\"http:\/\/Timeweb.Cloud\"><strong>Timeweb.Cloud<\/strong><\/a><a href=\"https:\/\/t.me\/timewebru\"><strong>\u00a0\u2014 \u0432 \u043d\u0430\u0448\u0435\u043c Telegram-\u043a\u0430\u043d\u0430\u043b\u0435<\/strong><\/a>\u00a0<strong>\u21a9<\/strong><\/p>\n<\/blockquote>\n<figure class=\"full-width\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e94\/5e8\/3a6\/e945e83a6b2d72ceda80b1647f48eb4f.png\" alt=\"\u041e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u21a9\" title=\"\u041e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u21a9\" width=\"1560\" height=\"564\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/e94\/5e8\/3a6\/e945e83a6b2d72ceda80b1647f48eb4f.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e94\/5e8\/3a6\/e945e83a6b2d72ceda80b1647f48eb4f.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption><a href=\"https:\/\/timeweb.cloud\/?utm_source=habr&amp;utm_medium=banner&amp;utm_campaign=promo\"><strong><em>\u041e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c<\/em><\/strong><\/a><strong><em> \u21a9<\/em><\/strong><\/figcaption><\/div>\n<\/figure>\n<p><strong>\u041f\u0435\u0440\u0435\u0434 \u043e\u043f\u043b\u0430\u0442\u043e\u0439 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u00ab\u0411\u043e\u043d\u0443\u0441\u044b \u0438 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434\u044b\u00bb \u0432 \u043f\u0430\u043d\u0435\u043b\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0439\u0442\u0435 \u043f\u0440\u043e\u043c\u043e\u043a\u043e\u0434 \u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u043a\u044d\u0448\u0431\u044d\u043a \u043d\u0430 \u0431\u0430\u043b\u0430\u043d\u0441.<\/strong><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><\/p>\n<div class=\"tm-article-poll-container\"><!--[--><\/p>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/companies\/timeweb\/articles\/910498\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u041a\u0430\u043a \u0432\u0430\u043c \u0442\u0430\u043a\u043e\u0439 \u043c\u043e\u0434\u0434\u0438\u043d\u0433?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">35.9% <\/span><span class=\"tm-article-poll__answer-label\">\u0412\u043e\u0442 \u044d\u0442\u043e \u0431\u0430\u043b\u0434\u0435\u0436! \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0438\u043d\u043b\u043e\u0430\u0434\u0435\u0440 \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u0438\u043a\u0438 \u0437\u0430 \u0442\u044b\u0449\u0443 \u0440\u0443\u0431\u043b\u0435\u0439, \u0437\u0430\u043f\u0438\u043b\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043f\u0430\u0442\u0447\u0438\u043d\u0433 \u043f\u043e \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u0430\u043c \u0438 \u0442\u043e\u0433\u0434\u0430 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u0438\u043a\u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0442 \u0432\u0442\u043e\u0440\u0443\u044e \u0436\u0438\u0437\u043d\u044c\u2026<\/span><span class=\"tm-article-poll__answer-votes\">14<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 35.9%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">30.77% <\/span><span class=\"tm-article-poll__answer-label\">\u041a\u043b\u0430\u0441\u0441\u043d\u043e\u0435 \u0443\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435. \u0411\u0430\u043b\u0434\u0435\u0436\u043d\u043e\u0435.<\/span><span class=\"tm-article-poll__answer-votes\">12<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 30.77%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">10.26% <\/span><span class=\"tm-article-poll__answer-label\">\u042d\u044d\u044d\u044d\u0445, \u0431\u044b\u043b\u043e \u0432\u0440\u0435\u043c\u044f! \u042f \u043b\u0438\u0447\u043d\u043e \u0432 \u0441\u043c\u0435\u043b\u0442\u0435\u0440\u0435 \u043a\u043e\u043b\u0443\u043f\u0430\u043b \u0444\u0443\u043b\u043b\u0444\u043b\u044d\u0448 \u0441\u0432\u043e\u0435\u0433\u043e \u0441\u0438\u043c\u0435\u043d\u0441\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u043b \u0432 IDA\u2026<\/span><span class=\"tm-article-poll__answer-votes\">4<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 10.26%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">2.56% <\/span><span class=\"tm-article-poll__answer-label\">\u041a\u0430\u043a\u0438\u0435 \u0441\u043c\u0435\u043b\u0442\u0435\u0440\u044b?! \u041f\u0430\u0442\u0447\u0435\u043d\u044b\u0439 \u0431\u0443\u0442 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0441 \u043e\u0431\u0445\u043e\u0434\u043e\u043c RSA, \u043c\u043e\u043d\u0441\u0442\u0440\u043f\u0430\u043a \u043d\u0430\u043a\u0430\u0442\u0438\u043b \u0438 \u0441\u0438\u0434\u0438\u0448\u044c \u0441\u0435\u0431\u0435 \u043a\u0430\u0439\u0444\u0443\u0435\u0448\u044c \u0441 EP2 \u043d\u0430 \u043b\u044e\u0431\u0438\u043c\u043e\u043c \u00ab\u043c\u043e\u0442\u043e\u0440\u0435\u00bb!<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 2.56%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">0% <\/span><span class=\"tm-article-poll__answer-label\">\u0410 \u044f \u043f\u043e\u043a\u0443\u043f\u0430\u043b \u043f\u0430\u0442\u0447\u0438 \u043d\u0430 \u0441\u043e\u043d\u0435\u0440\u0438\u043a\u0438. \u042f \u2014 \u044d\u043b\u0438\u0442\u0430!<\/span><span class=\"tm-article-poll__answer-votes\">0<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 0%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">2.56% <\/span><span class=\"tm-article-poll__answer-label\">\u042f \u043d\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043a\u043e\u0432\u044b\u0440\u044f\u043b \u0441\u0432\u043e\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d, \u044f \u043b\u0438\u0447\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0438\u043b \u0443\u0441\u0438\u043b\u0438\u044f \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u044d\u043b\u044c\u0444\u044f\u0442\u043d\u0438\u043a\u043e\u0432 \u043d\u0430 \u043b\u044e\u0431\u0438\u043c\u044b\u0439 \u0433\u0430\u0434\u0436\u0435\u0442!<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 2.56%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">2.56% <\/span><span class=\"tm-article-poll__answer-label\">\u042d\u0442\u043e \u043f\u043e\u043b\u043d\u0430\u044f \u0442\u0443\u0444\u0442\u0430!!! \u0421 \u0442\u0440\u0435\u0439\u0441\u0430\u043c\u0438 \u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0430\u043c\u0438 \u043b\u044e\u0431\u043e\u0439 \u0434\u0443\u0440\u0430\u043a \u043d\u0430\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u0442 \u0438 \u0437\u0430\u043f\u0430\u0442\u0447\u0438\u0442!!! \u0410 \u0442\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0439 \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0447\u0438\u0441\u043b\u043e\u043c \u0441\u0442\u0440\u043e\u043a \u0431\u0435\u0437 XREF&#8217;\u043e\u0432?<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 2.56%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">15.38% <\/span><span class=\"tm-article-poll__answer-label\">\u041f\u0443\u0441\u0442\u0430\u044f \u0442\u0440\u0430\u0442\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438!!! \u041b\u0443\u0447\u0448\u0435 \u0431\u044b \u043f\u0438\u0432\u043e \u043f\u0438\u043b \u0441 \u0434\u0435\u0432\u043e\u0447\u043a\u0430\u043c\u0438 \u043d\u0430 \u043b\u0430\u0432\u043e\u0447\u043a\u0435!!!<\/span><span class=\"tm-article-poll__answer-votes\">6<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 15.38%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 39 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.   \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u0441\u044f 1 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c. <\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll tm-article-poll_variant-bordered\">\n<div class=\"tm-notice tm-notice_positive tm-article-poll__notice\"><!----><\/p>\n<div class=\"tm-notice__inner\"><!----><\/p>\n<div class=\"tm-notice__content\" data-test-id=\"notice-content\"><!--[--><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/companies\/timeweb\/articles\/910498\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><!--]--><\/div>\n<\/div>\n<\/div>\n<p><!--[--><\/p>\n<div class=\"tm-article-poll__header\">\u041a\u0430\u043a \u0432\u0430\u043c \u0441\u0442\u0430\u0442\u044c\u044f?<\/div>\n<div class=\"tm-article-poll__answers\"><!--[--><\/p>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">93.18% <\/span><span class=\"tm-article-poll__answer-label\">\u0422\u043e\u0440\u0442! \u0422\u0430\u043a\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u043d\u0443\u0436\u043d\u044b \u0425\u0430\u0431\u0440\u0443.<\/span><span class=\"tm-article-poll__answer-votes\">41<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width: 93.18%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">2.27% <\/span><span class=\"tm-article-poll__answer-label\">\u042d\u0442\u043e \u043d\u0435 \u0442\u043e\u0440\u0442!!! \u0422\u0430\u043a\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 \u043d\u0435 \u043d\u0443\u0436\u043d\u044b \u0425\u0430\u0431\u0440\u0443!!!<\/span><span class=\"tm-article-poll__answer-votes\">1<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 2.27%\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">4.55% <\/span><span class=\"tm-article-poll__answer-label\">\u0413\u0434\u0435 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u0440\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433 LADA \u0434\u0435\u0441\u044f\u0442\u043a\u0438?!<\/span><span class=\"tm-article-poll__answer-votes\">2<\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width: 4.55%\"><\/div>\n<\/div>\n<\/div>\n<p><!--]--><\/div>\n<div class=\"tm-article-poll__stats\"> \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b\u0438 44 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f.    \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u043b\u0438\u0441\u044c 2 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. <\/div>\n<p><!--]--><\/div>\n<p><!--]--><\/div>\n<p> \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\/910498\/\"> https:\/\/habr.com\/ru\/articles\/910498\/<\/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-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><strong>\u041e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u043e<\/strong>: \u043f\u043e\u043c\u043d\u0438\u0442\u0435 \u043b\u0438 \u0432\u044b, \u043a\u0430\u043a \u0432 \u0432\u0430\u0448\u0435\u043c \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0435 Siemens, Motorola \u0438 Sony \u043f\u043e\u0441\u0435\u043b\u0438\u043b\u0438\u0441\u044c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b &#8212; \u202d\u202d\u00ab\u044d\u043b\u044c\u0444\u044b\u00bb? \u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u044b \u0432\u043e \u0432\u0441\u0435\u0445 \u0434\u0435\u0442\u0430\u043b\u044f\u0445 \u0438\u0441\u0441\u043b\u0435\u0434\u0443\u0435\u043c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u0431\u044e\u0434\u0436\u0435\u0442\u043d\u043e\u0433\u043e \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u0438\u043a\u0430, \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u043c\u0441\u044f \u0432 \u0435\u0451 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435, \u0445\u0430\u043a\u043d\u0435\u043c \u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0442\u0435\u0445 \u0441\u0430\u043c\u044b\u0445 \u044d\u043b\u044c\u0444\u043e\u0432 \u0441 MicroSD-\u0444\u043b\u044d\u0448\u043a\u0438. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u044f \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u0432\u0441\u0451 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u044b\u043c \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c \u044f\u0437\u044b\u043a\u043e\u043c!<\/p>\n<p>\u041d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0441\u044f \u0441 \u043b\u0435\u0433\u0435\u043d\u0434\u043e\u0439 \u0444\u043e\u0440\u0443\u043c\u0430 allsiemens.ru \u2014 <strong>Ilya_ZX<\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d \u0441\u0432\u043e\u0438\u043c \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u043c \u0432\u043a\u043b\u0430\u0434\u043e\u043c \u0432 \u0442\u0435\u043c\u0443 \u0440\u0435\u0432\u0435\u0440\u0441\u0430 \u0438 \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 E-Gold \u0438 S-Gold. \u0418\u043b\u044c\u044f \u043f\u043e\u0432\u0435\u0434\u0430\u043b \u043c\u043d\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0443\u044e \u0438\u0441\u0442\u043e\u0440\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u043d\u0443\u043b\u0435\u0432\u044b\u0445, \u0431\u0443\u0434\u0443\u0447\u0438 \u0441\u0442\u0443\u0434\u0435\u043d\u0442\u043e\u043c, \u043f\u043e\u0441\u043f\u043e\u0440\u0438\u043b \u0441 \u043e\u0434\u043d\u043e\u0433\u0440\u0443\u043f\u043f\u043d\u0438\u043a\u043e\u043c, \u0441\u043c\u043e\u0436\u0435\u0442 \u043b\u0438 \u043e\u043d \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u202d\u202d\u00ab\u0437\u043c\u0435\u0439\u043a\u0443\u202d\u202d\u00bb \u0432 \u0441\u0432\u043e\u0439 Siemens A60. \u0418 \u0441\u043f\u043e\u0440 \u043e\u043d \u044d\u0442\u043e\u0442 \u0432\u044b\u0438\u0433\u0440\u0430\u043b, \u043f\u0443\u0442\u0435\u043c \u0431\u0435\u0441\u0441\u043e\u043d\u043d\u044b\u0445 \u043d\u043e\u0447\u0435\u0439 \u043a\u043e\u0432\u044b\u0440\u044f\u043d\u0438\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432 IDA Pro! \u042f \u043f\u043e\u0434\u0443\u043c\u0430\u043b \u202d\u202d\u2014 \u00ab\u0430 \u0447\u0435\u043c \u044f \u0445\u0443\u0436\u0435?\u202d\u202d\u00bb. \u0412\u0437\u044f\u043b \u0432 \u0440\u0443\u043a\u0438 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 Spreadtrum, \u0441\u0434\u0430\u043c\u043f\u0438\u043b \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b \u0432 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440&#8230;<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0435\u043d \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0435\u0432\u0435\u0440\u0441\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u043a\u0430\u043a \u043e\u043d\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0442 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439, \u043a\u0430\u043a \u044f \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0443 \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u043a \u0444\u0443\u043b\u043b\u0444\u043b\u044d\u0448\u0443 \u0438, \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0431\u0438\u043d\u043b\u043e\u0430\u0434\u0435\u0440 \u0441 \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u2014 \u0436\u0434\u0443 \u0432\u0430\u0441 \u043f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c!<\/p>\n<h2>\u276f \u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h2>\n<p>\u0412 <a href=\"https:\/\/habr.com\/ru\/companies\/timeweb\/articles\/906158\/\">\u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435<\/a> \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043a\u0440\u0430\u0442\u043a\u0443\u044e \u043f\u0440\u0435\u0434\u044b\u0441\u0442\u043e\u0440\u0438\u044e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u044d\u043d\u0442\u0443\u0437\u0438\u0430\u0441\u0442\u044b \u0438\u0437 \u043d\u0443\u043b\u0435\u0432\u044b\u0445 \u0433\u043e\u0434\u043e\u0432 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u044b\u0435 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u044b \u0432 \u043f\u043e\u0447\u0442\u0438 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0435 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u044b \u0441 \u0432\u044b\u0442\u0435\u0441\u043d\u044f\u044e\u0449\u0435\u0439 \u043c\u043d\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u0447\u043d\u043e\u0441\u0442\u044c\u044e \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c. \u041a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0431\u044b, \u043d\u0430 \u043f\u0443\u0442\u0438 \u0431\u044b\u043b\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0435\u0433\u0440\u0430\u0434: \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u0438 \u043a\u0430\u043a\u043e\u0439 \u043b\u0438\u0431\u043e \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0438 \u0431\u0435\u0437 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u0438 \u043e\u0431\u0449\u0430\u044f \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u043a\u0430\u043a <strong>\u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433<\/strong>.<\/p>\n<figure class=\"full-width\">\n<div><figcaption><em>\u041f\u043e\u0438\u0441\u043a SKey \u0438 HASH \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u043c \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0447\u0435\u0440\u0435\u0437 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u044c \u0432 Java-\u043c\u0430\u0448\u0438\u043d\u0435<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041d\u043e \u043e\u0431\u0449\u0438\u043c\u0438 \u0443\u0441\u0438\u043b\u0438\u044f\u043c\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u043c\u043e\u0434\u0434\u0435\u0440\u043e\u0432 \u0434\u0435\u043b\u0430\u043b\u043e \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0435. \u041b\u044e\u0434\u0438 \u0438\u0441\u043a\u0430\u043b\u0438 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u043f\u0430\u0442\u0447\u0438\u043b\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0438 \u043d\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 Motorola \u0434\u043b\u044f \u043e\u0431\u0445\u043e\u0434\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 RSA, \u0440\u0435\u0437\u0430\u043b\u0438 \u0442\u0435\u0441\u0442-\u043f\u043e\u0438\u043d\u0442\u044b \u0438 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043b\u0438\u0441\u044c \u0432 BootROM&#8217;\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 S-Gold \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 Siemens, \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 BootKEY \u0434\u043b\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043a\u0430\u0441\u0442\u043e\u043c\u043e\u0432 \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u0432\u044b\u0440\u044f\u043b\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u044b Samsung, \u0433\u0434\u0435 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0441\u0435\u043a\u044c\u044e\u0440\u0431\u0443\u0442\u0430, \u043d\u043e \u0435\u0449\u0451 \u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0443\u0442\u0435\u043a\u0430\u043b\u0438 \u0441\u043e \u0432\u0441\u0435\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0430\u0445 (\u0444\u0430\u0439\u043b\u044b .lst).<\/p>\n<figure class=\"full-width\">\n<div><figcaption><em>Razr V3i<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041d\u043e \u0447\u0442\u043e \u0441\u0430\u043c\u043e\u0435 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435 \u2014 \u044d\u043b\u044c\u0444-\u0441\u0446\u0435\u043d\u0430 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0436\u0438\u0432\u0430\u044f \u0438 \u0432 \u043f\u0440\u043e\u0444\u0438\u043b\u044c\u043d\u044b\u0445 \u0447\u0430\u0442\u0430\u0445 \u0443\u0436\u0435 \u043f\u043e\u0432\u0437\u0440\u043e\u0441\u043b\u0435\u0432\u0448\u0438\u0435 \u0440\u0435\u0431\u044f\u0442\u0430 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442 \u0442\u043e, \u043a\u0430\u043a \u0438\u043c \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u043f\u043e\u0440\u0442 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 NES \u043f\u0443\u0442\u0435\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u0432 IRAM, \u0440\u0430\u0437\u043e\u0433\u043d\u0430\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 Freescale Argon LV \u0438&#8230; \u043a\u0442\u043e \u0431\u044b \u043c\u043e\u0433 \u043f\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u2014 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0438 S-Gold \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 Benq-Siemens E71 \u0432 QEMU. \u0418 \u0445\u043e\u0442\u044f \u0444\u043e\u0440\u0443\u043c\u044b \u043f\u043e Siemens&#8217;\u0430\u043c \u0443\u0436\u0435 \u0434\u0430\u0432\u043d\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442, MotoFan \u0432\u0441\u0451 \u0435\u0449\u0451 \u0436\u0438\u0432 \u0438 \u0445\u0440\u0430\u043d\u0438\u0442 \u043a\u043b\u0430\u0434\u0435\u0437\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043c\u043e\u0434\u0434\u0435\u0440\u043e\u0432 \u0438 \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u043e\u0432!<\/p>\n<figure class=\"\"><\/figure>\n<p>\u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u0442\u0430\u043a\u0438\u0445 \u043f\u0430\u0440\u043d\u0435\u0439 \u0431\u044b\u043b \u0438 <a class=\"mention\" href=\"\/users\/ilya_zx\">@ILYA_ZX<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0434\u0435\u043b\u0430\u043b \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0432\u043a\u043b\u0430\u0434 \u0432 \u043c\u043e\u0434\u0434\u0438\u043d\u0433-\u0441\u0446\u0435\u043d\u0443 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 Siemens. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u043c\u0435\u043d\u043d\u043e \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044f \u0435\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u0437\u0432\u0443\u043a\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u0432 S65 \u0438 M65 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 <strong>\u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u0443\u044e <\/strong>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 MP3, \u0447\u0435\u0433\u043e \u043d\u0435 \u0441\u043c\u043e\u0433\u043b\u0430 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u0436\u0435 \u0441\u0430\u043c\u0430 Siemens. \u041a\u043e\u0433\u0434\u0430 \u044f \u0443\u0441\u043b\u044b\u0448\u0430\u043b \u0435\u0433\u043e \u0438\u0441\u0442\u043e\u0440\u0438\u044e \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043e\u043d \u043d\u0430 \u0441\u043f\u043e\u0440 \u0441 \u043e\u0434\u043d\u043e\u0433\u0440\u0443\u043f\u043f\u043d\u0438\u043a\u043e\u043c \u043e\u0442\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u043b \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u202d\u202d\u00ab\u0437\u043c\u0435\u0439\u043a\u0443\u202d\u202d\u00bb \u0434\u043b\u044f \u0441\u0432\u043e\u0435\u0433\u043e Siemens A60, \u044f \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u0432\u0434\u043e\u0445\u043d\u043e\u0432\u0438\u043b\u0441\u044f \u0438 \u043f\u043e\u043d\u044f\u043b&#8230; \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u043e\u0440\u0435\u0432\u0435\u0440\u0441\u0438\u0442\u044c \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0443\u0441\u043f\u0435\u0445\u0438 \u0418\u043b\u044c\u0438 \u043d\u0430 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0435\u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435, \u043f\u0440\u0438\u0447\u0451\u043c \u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0432\u0435\u0436\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0432 \u043d\u043e\u0432\u044b\u0445 \u0431\u044e\u0434\u0436\u0435\u0442\u043d\u044b\u0445 \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u0438\u043a\u0430\u0445&#8230;<\/p>\n<h2>\u276f \u041f\u0435\u0440\u0432\u044b\u0435 \u0448\u0430\u0433\u0438&#8230;<\/h2>\n<p>\u042f \u043d\u0430\u0447\u0430\u043b \u0441 \u043f\u043e\u0438\u0441\u043a\u0430 \u0432 \u0441\u0432\u043e\u0435\u0439 \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u0446\u0435\u043b\u0438 \u0434\u043b\u044f \u0431\u0443\u0434\u0443\u0449\u0435\u0433\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430. \u041e\u0434\u043d\u0438\u043c\u0438 \u0438\u0437 \u0433\u043b\u0430\u0432\u043d\u044b\u0445 \u043a\u0440\u0438\u0442\u0435\u0440\u0438\u0435\u0432 \u0431\u044b\u043b\u0438: \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0430\u044f \u0444\u043b\u044d\u0448-\u043f\u0430\u043c\u044f\u0442\u044c \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043f\u043e\u0441\u0435\u0434\u0435\u0442\u044c \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0437\u0430\u043b\u0438\u0432\u043a\u0438 \u0441\u043e\u0444\u0442\u0430 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 USB \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e\u043a\u0443\u043f\u043a\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u0430\u0431\u0435\u043b\u0435\u0439 \u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u0447\u043d\u044b\u0445 \u0431\u043e\u043a\u0441\u043e\u0432. \u0423 \u043c\u0435\u043d\u044f \u043d\u0430\u0448\u043b\u0438\u0441\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445: MediaTek, Spreadtrum, \u0430 \u0442\u0430\u043a\u0436\u0435 Coolsand (\u043f\u043e\u0445\u043e\u0436 \u043d\u0430 MTK \u0438 Spreadtrum, \u043d\u043e MIPS, \u0430 \u043d\u0435 ARM). \u042f \u043f\u043e\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e \u0432\u044b\u0447\u0438\u0442\u044b\u0432\u0430\u043b \u0441 \u043d\u0438\u0445 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0433\u043e \u0441\u043e\u0444\u0442\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u043a\u043e\u0432\u044b\u0440\u044f\u043b \u0438\u0445 \u0432 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435 \u0438 \u043f\u043e\u0434\u0431\u0438\u0440\u0430\u043b \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0443\u044e \u043c\u043e\u0434\u0435\u043b\u044c.<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041c\u043e\u0451 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u0432\u043b\u0451\u043a \u0442\u0435\u043b\u0435\u0444\u043e\u043d Explay B240, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430 \u043f\u0430\u0440\u0443 \u0434\u043d\u0435\u0439 \u0434\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u043c\u043d\u0435 \u043f\u043e\u0434\u0430\u0440\u0438\u043b \u043f\u043e\u0434\u043f\u0438\u0441\u0447\u0438\u043a \u041f\u0430\u0432\u0435\u043b, \u0437\u0430 \u0447\u0442\u043e \u0435\u043c\u0443 \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u0441\u043f\u0430\u0441\u0438\u0431\u043e.<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0432 IDA Pro, \u044f \u0441\u0440\u0430\u0437\u0443 \u0436\u0435 \u043f\u043e\u043b\u0435\u0437 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0438 \u0438 \u0438\u0441\u043a\u0430\u0442\u044c \u0441\u0430\u043c\u044b\u0435 \u043f\u0435\u0440\u0432\u044b\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438: printf, \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0444\u0443\u043d\u043a\u0446\u0438\u0438 libc \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441\u043e \u0441\u0442\u0440\u043e\u043a\u0430\u043c\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 ABI-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e \u0442\u0438\u043f\u0443 \u0434\u0435\u043b\u0435\u043d\u0438\u044f (\u0432 ARM \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u0442). <\/p>\n<p>\u0411\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 libc \u043d\u0430\u0439\u0442\u0438 \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e, \u0435\u0441\u043b\u0438 \u0438\u043c\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0431 \u0438\u0445 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u0430\u0445. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443 \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u2014 \u0432\u0441\u0435\u0433\u0434\u0430 \u0440\u0430\u0437\u043c\u0435\u0440 \u0432\u044b\u0434\u0435\u043b\u044f\u0435\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438. \u0421\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u043c\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434, \u0435\u0441\u043b\u0438 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043e\u0442 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430 sizeof \u2014 \u0437\u043d\u0430\u0447\u0438\u0442 \u044d\u0442\u043e \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e. <\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u0418 \u0432\u043e\u0442 \u0442\u0443\u0442 \u044f \u043f\u0440\u0438\u043c\u0435\u0442\u0438\u043b \u043a\u043e\u0435-\u0447\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0435, \u0447\u0442\u043e \u043e\u043f\u044b\u0442\u043d\u044b\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u0443\u0436\u0435 \u043c\u043e\u0433 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c \u043d\u0430 \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0435 \u0432\u044b\u0448\u0435: \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u0435\u0431\u0430\u0436\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a, \u0442\u0440\u0435\u0439\u0441\u044b \u043f\u043e\u0447\u0442\u0438 \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0447\u0438\u0445, \u0430 \u0432 \u0430\u0441\u0441\u0435\u0440\u0442\u0430\u0445 \u0435\u0441\u0442\u044c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u0441\u0442\u0440\u043e\u043a\u0438, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u043b\u0435\u0433\u043a\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041f\u043e\u0438\u0441\u043a\u0430\u0432 \u0441\u0442\u0440\u043e\u0447\u043a\u0443 DEBUG \u0432 \u0444\u0443\u043b\u043b\u0444\u043b\u044d\u0448\u0435, \u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u043b, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043f\u0430\u0440\u0438\u043b\u0441\u044f \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u043b\u0438\u0432\u0430\u043b \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u0447\u0442\u043e \u0432 \u043c\u0438\u0440\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0440\u0435\u0434\u043a\u043e&#8230;<\/p>\n<figure class=\"full-width\">\n<div><figcaption><em>\u042d\u0442\u043e \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0434\u0430\u0440 \u0434\u043b\u044f \u0440\u0435\u0432\u0435\u0440\u0441\u0435\u0440\u0430!<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440 \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b \u0441\u0442\u0440\u0430\u043d\u043d\u043e: \u0438 \u0442\u0443\u0442 \u0438 \u0442\u0430\u043c \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u043d\u0430 \u043d\u0435\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u043f\u043e\u0431\u0438\u0442\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043e\u0447\u0435\u043d\u044c \u043c\u0430\u043b\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u044f\u043c\u044b\u0445 \u0440\u0435\u0444\u0435\u0440\u0435\u043d\u0441\u043e\u0432 \u043d\u0430 ROM. \u0418 \u0442\u0443\u0442 \u0418\u043b\u044c\u044f \u0432\u0437\u044f\u043b \u0444\u0443\u043b\u043b, \u043f\u043e\u043a\u043e\u0432\u044b\u0440\u044f\u043b \u0435\u0433\u043e \u0438 \u0441\u043a\u0430\u0437\u0430\u043b \u202d\u202d\u2014 \u00ab\u0434\u0430 \u044d\u0442\u043e \u0436 Big-Endian, \u044f \u043d\u0443\u0442\u0440\u043e\u043c \u0447\u0443\u044e!\u202d\u202d\u00bb. \u0418 \u043a\u0430\u043a \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u2014 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b BE \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u0430\u0439\u0442.<\/p>\n<details class=\"spoiler\">\n<summary>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 BE \u0438 LE?<\/summary>\n<div class=\"spoiler__content\">\n<p>\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043d\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435 \u2014 \u0432 \u043c\u0438\u0440\u0435 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u0432 \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438 \u0442\u043e\u0433\u043e \u0436\u0435 \u043c\u043d\u043e\u0433\u043e\u0431\u0430\u0439\u0442\u043e\u0432\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 (\u0442\u043e \u0435\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0441\u043b\u043e\u0432\u0430, \u0441\u043b\u043e\u0432\u0430, \u0434\u043b\u0438\u043d\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0432\u0430): <strong>Big Endian<\/strong> \u0438 <strong>Little Endian<\/strong>. \u0412 Little Endian \u0431\u0430\u0439\u0442\u044b \u0447\u0438\u0441\u043b\u0430 \u0438\u0441\u0447\u0438\u0441\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0442 \u043c\u043b\u0430\u0434\u0448\u0435\u0433\u043e \u043a \u0441\u0442\u0430\u0440\u0448\u0435\u043c\u0443, \u0430 \u0432 Big Endian \u2014 \u043e\u0442 \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u043a \u043c\u043b\u0430\u0434\u0448\u0435\u043c\u0443. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0437\u0430\u0445\u043e\u0447\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c BMP-\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0443, \u0435\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u0430\u0439\u0442 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c \u0441\u043b\u043e\u0432\u0435 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f.<\/p>\n<p>\u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0431\u0430\u0439\u0442 \u2014 \u044d\u0442\u043e Big Endian, \u043e\u043d \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0443\u043d\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430\u043c\u0438 \u0440\u0430\u0437\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b!<\/p>\n<p>ARM \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u043e\u0431\u0435\u0438\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445, \u043d\u043e \u0434\u043e ARMv6 BE \u0438 LE \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u043c \u044f\u0434\u0440\u0435 \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0441\u0438\u043d\u0442\u0435\u0437\u0430 \u0438\u043b\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u043f\u0438\u043d\u043e\u043c. \u041a\u0430\u043a \u0440\u0430\u0437 \u0442\u0430\u043a\u0438 \u0438\u0437-\u0437\u0430 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0434 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 ARM-\u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0443\u0437\u043d\u0430\u0442\u044c \u0435\u0451 Endianness: \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u043c\u0435\u0441\u0442\u043e LE-\u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 FE B5 \u0432 Thumb \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 B5 FE.<\/p>\n<\/div>\n<\/details>\n<p>\u0414\u043b\u044f \u043c\u0435\u043d\u044f \u044d\u0442\u043e \u0441\u0442\u0430\u043b\u043e \u043d\u0435\u043e\u0436\u0438\u0434\u0430\u043d\u043d\u043e\u0441\u0442\u044c\u044e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 BE \u043d\u0430 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 \u044f \u0437\u043d\u0430\u043b \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0433\u0435\u043d\u0434\u0430\u0440\u043d\u044b\u0435 Motorola. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u044f \u0432\u044b\u044f\u0441\u043d\u0438\u043b, \u0447\u0442\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u0447\u0438\u043f\u0441\u0435\u0442\u0435 Spreadtrum SC6500L 2010 \u0433\u043e\u0434\u0430 \u0432\u044b\u043f\u0443\u0441\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f:<\/p>\n<ul>\n<li>\n<p>\u041e\u0434\u043d\u043e \u044f\u0434\u0440\u043e <strong>ARM9EJ-S<\/strong> \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 208\u041c\u0413\u0446 \u0432 \u043f\u0430\u0440\u0435 \u0441 DSP \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 GSM-\u0440\u0430\u0434\u0438\u043e\u043a\u0430\u043d\u0430\u043b\u0430.<\/p>\n<\/li>\n<li>\n<p>4\u041c\u0411 \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0442\u0438\u043f\u0430 <strong>PSRAM <\/strong>\u0438 4\u041c\u0411 <strong>NOR<\/strong>-\u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<\/li>\n<li>\n<p>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b <strong>LCD-\u0434\u0438\u0441\u043f\u043b\u0435\u0435\u0432<\/strong> \u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u043e\u0439 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0438, \u0432\u043a\u043b\u044e\u0447\u0430\u044f <strong>SPI<\/strong>, <strong>I2C<\/strong>, <strong>I2S <\/strong>\u0438 <strong>GPIO<\/strong>.<\/p>\n<\/li>\n<li>\n<p><strong>\u0412\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 <\/strong>\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u0447\u0430\u0440\u0434\u0436\u0435\u0440\u0430.<\/p>\n<\/li>\n<\/ul>\n<p>\u0418 \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u0434\u043e\u0441\u0442\u043e\u0439\u043d\u044b\u0435 \u0434\u043b\u044f \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438. \u0422\u0430\u043a\u043e\u0439 \u0447\u0438\u043f\u0441\u0435\u0442 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u044f\u043d\u0443\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u043c\u0435\u0439\u043a\u0443 \u0438\u043b\u0438 Java-\u0438\u0433\u0440\u044b, \u043d\u043e \u0434\u0430\u0436\u0435 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b \u0440\u0435\u0442\u0440\u043e-\u043a\u043e\u043d\u0441\u043e\u043b\u0435\u0439! \u0418 4\u041c\u0431 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0445\u0432\u0430\u0442\u0438\u0442 \u0441 \u0433\u043e\u043b\u043e\u0432\u043e\u0439. \u041f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u044b \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0434\u0438\u043d\u0433\u0430 \u0443\u0436 \u0442\u043e\u0447\u043d\u043e \u0431\u044b\u043b\u0438!<\/p>\n<p>\u0412 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0432\u0441\u0451: \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 elf&#8217;\u044b \u0441 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u043e\u0439 (axf), \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \u0438 \u0442\u0435\u043c \u0431\u043e\u043b\u0435\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434. \u0412 \u043f\u043e\u0438\u0441\u043a\u0430\u0445 \u0441\u043b\u0438\u0442\u044b\u0445 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u044f <a href=\"https:\/\/firmware.center\/projects\/EXL\/Spreadtrum\/\">\u043d\u0430\u0442\u043a\u043d\u0443\u043b\u0441\u044f <\/a>\u043d\u0430 \u0430\u0440\u0445\u0438\u0432 \u0434\u043b\u044f \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u0441\u0432\u0435\u0436\u0435\u0433\u043e \u0447\u0438\u043f\u0441\u0435\u0442\u0430 \u2014 SC6531 (\u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 <strong>90%<\/strong> \u043a\u043d\u043e\u043f\u043e\u0447\u043d\u044b\u0445 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0435\u0439\u0447\u0430\u0441 \u043c\u043e\u0436\u043d\u043e \u043a\u0443\u043f\u0438\u0442\u044c \u0432 \u0443\u0441\u043b\u043e\u0432\u043d\u043e\u043c DNS \u0434\u043e 2.000 \u0440\u0443\u0431\u043b\u0435\u0439), \u0438 \u0434\u043b\u044f \u043e\u0431\u0449\u0435\u0433\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043f\u0440\u0438\u043d\u044f\u043b\u0441\u044f \u0435\u0433\u043e \u0438\u0437\u0443\u0447\u0430\u0442\u044c.<\/p>\n<figure class=\"full-width\"><\/figure>\n<p>\u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043a\u043e\u0434\u043e\u0432\u0430\u044f \u0431\u0430\u0437\u0430 Spreadtrum \u0442\u044f\u043d\u0435\u0442\u0441\u044f \u0438\u0437 \u043d\u0443\u043b\u0435\u0432\u044b\u0445, \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043f\u043e \u202d\u202d\u00ab\u044d\u043c\u0431\u0435\u0434\u0434\u0435\u0440\u0441\u043a\u0438\u202d\u202d\u00bb \u043e\u043b\u0434\u0441\u043a\u0443\u043b\u044c\u043d\u043e: \u0432\u0435\u0441\u044c \u043a\u043e\u0434 \u043d\u0430 Plain-C, \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0435\u0437\u0434\u0435 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 (\u0434\u043b\u044f \u044d\u043a\u043e\u043d\u043e\u043c\u0438\u0438 RAM, \u0442. \u043a. \u0444\u043b\u044d\u0448\u043a\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 XIP \u0438 \u043c\u0430\u043f\u043f\u0438\u0442\u0441\u044f \u0432 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u043e \u0438\u0437\u0431\u0435\u0436\u0430\u043d\u0438\u0435 \u0444\u0440\u0430\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438), UI-\u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d \u043d\u0430 \u043c\u043e\u0434\u0435\u043b\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043a\u0430\u043a \u0432 Windows \u2014 \u0442\u043e \u0435\u0441\u0442\u044c, \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0435 \u0441\u0432\u0438\u0447-\u043a\u0435\u0439\u0441\u044b. \u0412\u043a\u0440\u0430\u0442\u0446\u0435, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0443 \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0430\u043a:<\/p>\n<ul>\n<li>\n<p>\u0412 \u043e\u0441\u043d\u043e\u0432\u0435 \u043b\u0435\u0436\u0438\u0442 RTOS <strong>ThreadX<\/strong>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f <strong>Nucleus<\/strong>. \u0412 \u0437\u0430\u0434\u0430\u0447\u0438 \u041e\u0421\u0420\u0412 \u0432\u0445\u043e\u0434\u0438\u0442 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u044b\u0442\u0435\u0441\u043d\u044f\u044e\u0449\u0435\u0439 \u043c\u043d\u043e\u0433\u043e\u0437\u0430\u0434\u0430\u0447\u043d\u043e\u0441\u0442\u0438, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u044b \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u2014 \u043c\u044c\u044e\u0442\u0435\u043a\u0441\u044b, \u0441\u0435\u043c\u0430\u0444\u043e\u0440\u044b, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440\u0430, \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0440\u0443\u0433\u0438\u0445 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0445 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c. <\/p>\n<p>Nucleus \u0442\u0430\u043a\u0436\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430\u0445 \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445 MediaTek, Coolsand\/RDA, Infineon (Siemens, Panasonic), Freescale (Motorola) \u0438 \u043c\u043d\u043e\u0433\u0438\u0445 \u0434\u0440\u0443\u0433\u0438\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0434 RTOS \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0436\u0435\u043b\u0435\u0437\u043e\u043c. \u0414\u0438\u0441\u043f\u043b\u0435\u0439, \u0437\u0432\u0443\u043a, \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u044f \u0441 DSP, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u2014 \u0432\u0441\u0451 \u044d\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0435 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b.<\/p>\n<\/li>\n<li>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0438\u0434\u0451\u0442 UI-\u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 <strong>MMI <\/strong>\u2014 Man Machine Interface. MMI \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u043e\u043a\u043e\u043d, \u0441\u043b\u0443\u0436\u0431 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u0443\u0437\u044b\u043a\u0438 \u0432 \u0444\u043e\u043d\u0435), GUI-\u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0438 \u0430\u043f\u043f\u043b\u0435\u0442\u043e\u0432 \u2014 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u0432 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c MMI \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0436\u0435\u0441\u0442\u043a\u043e-\u043f\u0440\u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435 \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u043e\u043a\u043e\u043d, \u0433\u0434\u0435 \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0441\u0442\u0440\u043e\u043a\u043e\u0432\u043e\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044e-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0447\u0442\u043e \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0443\u043f\u0440\u043e\u0449\u0430\u0435\u0442 \u0440\u0435\u0432\u0435\u0440\u0441-\u0438\u043d\u0436\u0438\u043d\u0438\u0440\u0438\u043d\u0433 \u044d\u0442\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438.<\/p>\n<\/li>\n<\/ul>\n<h2>\u202d\u202d\u276f \u00ab\u0423\u0433\u043e\u043d\u044f\u0435\u043c\u202d\u202d\u00bb \u043e\u043a\u043d\u043e MMI<\/h2>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043e\u0434 \u0441 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044f, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u0439\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439 \u0438 \u043f\u0440\u043e\u043f\u0430\u0442\u0447\u0438\u0442\u044c \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438, \u0434\u0430\u0431\u044b \u043e\u043d\u0430 \u043c\u043e\u0433\u043b\u0430 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u043d\u0430\u0448 \u043a\u043e\u0434 \u0432 \u043e\u0442\u0432\u0435\u0442 \u043d\u0430 \u043a\u0430\u043a\u043e\u0435 \u043b\u0438\u0431\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435. \u0421 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0424\u0421 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u043e. \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0442\u0440\u0435\u0439\u0441\u043e\u0432 \u043c\u043d\u043e\u0433\u043e, \u044f \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0440\u0430\u0437\u0443 \u043d\u0430\u0448\u0435\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u043c\u0438\u043d\u0438\u043c\u0443\u043c \u2014 <code>SFS_OpenFile<\/code>, <code>SFS_GetFileSize<\/code>, <code>SFS_SetFilePointer\/GetFilePointer<\/code>, <code>SFS_ReadFile\/SFS_WriteFile<\/code> \u0438 <code>SFS_CloseFile<\/code>.<\/p>\n<p>\u041d\u0430 \u0432\u0445\u043e\u0434 <code>SFS_OpenFile<\/code> \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c <code>wchar_t<\/code> \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u043f\u0443\u0442\u0435\u043c \u043a \u0444\u0430\u0439\u043b\u0443 \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u0434\u0438\u0441\u043a\u0430 (C:\/ \u2014 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435, D:\/ \u2014 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044f\u044f \u043f\u0430\u043c\u044f\u0442\u044c, E:\/ \u2014 MicroSD), \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441 \u0440\u0435\u0436\u0438\u043c\u043e\u043c \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u0438 \u0434\u0432\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0434\u043b\u044f \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u043e\u0432.<\/p>\n<p>\u0418\u043c\u0435\u0439\u0442\u0435 \u0432\u0432\u0438\u0434\u0443, \u0447\u0442\u043e \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u041e\u0421 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0444\u0430\u0439\u043b\u0430\u043c\u0438 \u0442\u043e\u043b\u044c\u043a\u043e <strong>\u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f <\/strong>\u0438 \u043d\u0430 \u043a\u043e\u043b\u043b\u0431\u044d\u043a\u0430\u0445!<\/p>\n<figure class=\"full-width\">\n<div><figcaption><em>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f SFS_OpenFile<\/em><\/figcaption><\/div>\n<\/figure>\n<p>\u041a\u0430\u043a \u044f \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b \u0440\u0430\u043d\u0435\u0435, \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u043a\u043d\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0435\u0441\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\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-460900","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/460900","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=460900"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/460900\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=460900"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=460900"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=460900"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}