{"id":229231,"date":"2014-07-28T22:45:03","date_gmt":"2014-07-28T18:45:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=229231"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=229231","title":{"rendered":"<span class=\"post_title\">\u041f\u0438\u0448\u0435\u043c \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\/C++ \u0432 Windows \u043f\u043e\u0434 KolibriOS<\/span>"},"content":{"rendered":"<div class=\"content html_format\">     \t<img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/75f\/ed4\/4f9\/75fed44f93a20fff0e6db06381cd1717.jpg\" alt=\"image\" align=\"left\"\/><br \/>  KolibriOS \u2013 \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u044f\u0434\u0440\u043e \u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440. \u042d\u0442\u043e, \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435, \u043d\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0434\u0440\u0443\u0433\u0438\u043c \u044f\u0437\u044b\u043a\u0430\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0443\u0442\u044c \u0432 KolibriOS \u0437\u0430\u043a\u0440\u044b\u0442. \u041a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0437\u0430 \u0432\u0440\u0435\u043c\u044f \u044d\u0432\u043e\u043b\u044e\u0446\u0438\u0438 \u044d\u0442\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0431\u044b\u043b\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u0438\u043b\u0438 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 C\/C++. \u0412 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 KolibriOS \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0435\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0435 \u0440\u0430\u043d\u043d\u0438\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 C\/C++ \u043a\u043e\u0434\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 (root)\/programs\/games\/kosilka \u0438\u043b\u0438 (root)\/programs\/system\/shell, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0435 \u0440\u0430\u0437\u043d\u044b\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044b \u0438 \u043e\u0431\u0435\u0440\u0442\u043a\u0438 C\/Asm.<\/p>\n<p>  \u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0441\u0430\u043c\u043e\u0439 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0438\u0437 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f newlib. \u041e\u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 libc, C-\u043e\u0431\u0435\u0440\u043a\u043e\u0439 \u043d\u0430\u0434 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 coreAPI \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u0438 toolchain\u2019\u0430 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438.<\/p>\n<p>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0432 KolibriOS \u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 C\/C++ \u0435\u0449\u0435 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0442\u0435\u043a\u0443\u0449\u0438\u0439 toolchain \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0432 \u041e\u0421 Windows \u0438\u043b\u0438 Linux. <\/p>\n<p>  \u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0435\u0439 \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 newlib \u0434\u043b\u044f \u041e\u0421 Windows.<\/p>\n<p>  <a name=\"habracut\"><\/a><br \/>  <b>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 toolchain<\/b><\/p>\n<p>  \u2022 \u0410\u0440\u0445\u0438\u0432 \u0441 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c toolchain \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443<br \/>   <a href=\"http:\/\/ftp.KolibriOS.org\/users\/Serge\/new\/Toolchain\">ftp.KolibriOS.org\/users\/Serge\/new\/Toolchain<\/a><br \/>   Windows-\u0432\u0435\u0440\u0441\u0438\u044f \u0430\u0440\u0445\u0438\u0432\u0430, msys-kos32-x.x.x.7z<br \/>  \u2022 \u0414\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 toolchain \u043d\u0443\u0436\u043d\u0430 mingw\/msys, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 <a href=\"http:\/\/www.mingw.org\">www.mingw.org<\/a> \u043f\u043e \u0441\u0441\u044b\u043b\u043a\u0435 downloads \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0444\u0430\u0439\u043b mingw-get-setup.exe<br \/>   \u0412 \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u043f\u043e\u0441\u043b\u0435 \u043d\u0430\u0436\u0430\u0442\u0438\u044f \u043a\u043d\u043e\u043f\u043a\u0438 \u00abinstall\u00bb \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0443\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0433\u0430\u043b\u043e\u0447\u043a\u0438 \u043d\u0430\u043f\u0440\u043e\u0442\u0438\u0432 &quot;..support for graphics user interface&quot; \u0438 \u043d\u0430\u0436\u0430\u0442\u044c \u00abContinue\u00bb.<br \/>   \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 mingw \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0430 \u0432 c:\\MinGW<br \/>   \u0412 \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c mingw32-base \u0438 msys-base \u0438 \u043d\u0430\u0447\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443. <br \/>  \u2022 \u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u043f\u0430\u043f\u043a\u0443 c:\\MinGW\\msys\\1.0 \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043d\u0435\u0439 \u0434\u0435\u0440\u0435\u0432\u043e \u043f\u0430\u043f\u043e\u043a home\\autobuild\\tools<br \/>  \u2022 \u0420\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c msys-kos32-x.x.x.7z \u0432 c:\\MinGW\\msys\\1.0\\home\\autobuild\\tools<br \/>   (\u0435\u0441\u043b\u0438 \u0432\u0441\u0435 \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u0444\u0430\u0439\u043b kos32-gcc.exe \u0434\u043e\u043b\u0436\u0435\u043d \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 c:\\MinGW\\msys\\1.0\\home\\autobuild\\tools\\win32\\bin\\kos32-gcc.exe)<br \/>  \u2022 \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c toolchain \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0432 c:\\MinGW\\msys\\1.0\\msys.bat<br \/>   \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043d\u0430\u0431\u0440\u0430\u0442\u044c   <\/p>\n<pre><code class=\"bash\">    export PATH=$PATH:\/home\/autobuild\/tools\/win32\/bin     kos32-gcc \u2013v <\/code><\/pre>\n<p>   \u041d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438 \u0432\u0435\u0440\u0441\u0438\u0438 kos32-gcc<\/p>\n<p>  <b>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 libc<\/b><\/p>\n<p>  \u2022 \u0410\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b libc \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 svn \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 KolibriOS, \u043f\u0443\u0442\u044c (root)\/contrib\/sdk\/sources\/newlib<br \/>   \u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u0435\u0431 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c KolibriOS.org \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 <a href=\"http:\/\/websvn.kolibrios.org\/listing.php?repname=Kolibri+OS\">SVN<\/a> \u0438 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0430\u0440\u0445\u0438\u0432.<br \/>   \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 newlib \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0430 \u0432 d:\\kolibri\\contrib\\sdk\\sources\\newlib<br \/>  \u2022 \u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u0432 \u043f\u0430\u043f\u043a\u0443 d:\\kolibri\\contrib\\sdk \u0438 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0432 \u043d\u0435\u0439 \u043f\u0430\u043f\u043a\u0438 bin \u0438 lib<br \/>  \u2022 \u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c c:\\MinGW\\msys\\1.0\\msys.bat<br \/>  \u2022 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043d\u0430\u0431\u0440\u0430\u0442\u044c  <\/p>\n<pre><code class=\"bash\">\tcd d:\/kolibri\/contrib\/sdk\/sources\/newlib\/libc \texport PATH=$PATH:\/home\/autobuild\/tools\/win32\/bin \tmake shared \tmake install <\/code><\/pre>\n<p>  \u2022 \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432 \u043f\u0430\u043f\u043a\u0435 d:\\kolibri\\contrib\\sdk\\bin \u0434\u043e\u043b\u0436\u0435\u043d \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u0444\u0430\u0439\u043b libc.dll<br \/>   \u0432 \u043f\u0430\u043f\u043a\u0435 d:\\kolibri\\contrib\\sdk\\lib \u2014 libapp.a, libc.dll.a, libdll.a<\/p>\n<p>  <b>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Qemu<\/b><\/p>\n<p>  Qemu \u2013 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u044d\u043c\u0443\u043b\u044f\u0446\u0438\u0438 (\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438) \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0430, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b. \u0424\u0430\u0439\u043b\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 Qemu \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 <a href=\"http:\/\/qemu.weilnetz.de\">qemu.weilnetz.de<\/a><\/p>\n<p>  \u2022 \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Qemu \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u00ab\u0417\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u0430\u043a\u0442-\u0434\u0438\u0441\u043a LiveCD\u00bb \u043e\u0431\u0440\u0430\u0437 KolibriOS \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 <a href=\"http:\/\/KolibriOS.org\/ru\/download\">KolibriOS.org\/ru\/download<\/a><br \/>   \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0432 \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043e\u0431\u0440\u0430\u0437 KolibriOS \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043e \u043f\u0443\u0442\u0438 d:\/kolibri\/dist\/kolibri.iso<br \/>  \u2022 \u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u0439 \u043f\u0430\u043f\u043a\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, d:\\work) \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0444\u0430\u0439\u043b qemu.bat<\/p>\n<p>  \u0424\u0430\u0439\u043b d:\/work\/qemu.bat  <\/p>\n<pre><code class=\"dos\">\tset QEMU_PATH=&quot;c:\/Program Files\/qemu\/&quot; \tset PATH=%PATH%;%QEMU_PATH% \tqemu-system-i386.exe -L . -m 128 -cdrom d:\/kolibri\/dist\/kolibri.iso -boot d -localtime -vga vmware -net nic,model=rtl8139 -net user -soundhw ac97 -usb -usbdevice tablet  <\/code><\/pre>\n<p>  \u2022 \u041f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043e \u043a\u043b\u044e\u0447\u0430\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 KolibriOS \u043d\u0430 Qemu \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 <a href=\"http:\/\/wiki.KolibriOS.org\/wiki\/Setting_up_QEMU\">wiki.KolibriOS.org\/wiki\/Setting_up_QEMU<\/a><\/p>\n<p>  <b>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/b><\/p>\n<p>  \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c newlib \u043c\u043e\u0436\u043d\u043e, \u0441\u043e\u0431\u0440\u0430\u0432 \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0432\u044b\u0432\u043e\u0434\u044f\u0449\u0435\u0435 \u00abhello, world!\u00bb \u0432 \u043e\u043a\u043d\u043e \u0438 \u00abhello, board!\u00bb \u0432 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c.<\/p>\n<p>  \u0424\u0430\u0439\u043b d:\/work\/simple.c  <\/p>\n<pre><code class=\"cpp\">#include &quot;stdlib.h&quot;  #include &quot;stdio.h&quot; #include &quot;string.h&quot; #include &quot;kos32sys.h&quot;  \/\/---------------------------------------------------------------  static const char *WND_HEADER_STR = &quot;window header&quot;; static const char *HELLO_WORLD_STR = &quot;hello, world!&quot;; static const char *HELLO_BOARD_STR = &quot;hello, board!\\n&quot;; static const uint32_t CUSTOM_BUTTON_ID = 100;  \/\/---------------------------------------------------------------  static void RenderWindow(void); static void BoardPuts(const char *c); static void SetMaskForEvents(unsigned int mask);  \/\/---------------------------------------------------------------  void RenderWindow() { \tconst uint32_t WND_STYLE = 3; \/\/ (window type III, skinned window) \tconst int WND_X = 100; \tconst int WND_Y = 100;\t \tconst int WND_W = 320; \tconst int WND_H = 320; \tconst color_t WND_COLOR = 0xffffff;  \tconst int BUTTON_W = 24; \tconst int BUTTON_H = 24; \tconst int BUTTON_X = WND_W \/ 2 - BUTTON_W - 8; \tconst int BUTTON_Y = (WND_H - BUTTON_H) \/ 2; \tconst color_t BUTTON_COLOR = 0x9e9e9e;\t  \tconst color_t TEXT_COLOR = 0xff0000; \t \tBeginDraw(); \tDrawWindow(WND_X, WND_Y, WND_W, WND_H, WND_HEADER_STR, WND_COLOR, WND_STYLE); \tdraw_text_sys(HELLO_WORLD_STR, WND_W \/ 2, WND_H \/ 2, strlen(HELLO_WORLD_STR), TEXT_COLOR); \tDefineButton(65536 * BUTTON_X + BUTTON_W, 65536 * BUTTON_Y + BUTTON_H, CUSTOM_BUTTON_ID, BUTTON_COLOR); \tEndDraw(); } \/\/---------------------------------------------------------------  \/\/ coreAPI #63 asm function call example void BoardPuts(const char *s) { \tunsigned int i = 0; \twhile(*(s + i)) \t{ \t\tasm volatile (&quot;int $0x40&quot;::&quot;a&quot;(63), &quot;b&quot;(1), &quot;c&quot;(*(s + i))); \t\ti++; \t} } \/\/---------------------------------------------------------------  \/\/ coreAPI #40 set event mask void SetMaskForEvents(unsigned int mask) { \tasm volatile (&quot;int $0x40&quot;::&quot;a&quot;(40), &quot;b&quot;(mask)); } \/\/---------------------------------------------------------------  int main() { \tenum SysEventTypes \t{ \t\tREDRAW_EVENT = 1, \t\tGUI_BUTTON_EVENT = 3 \t}; \t \t\/\/ enabling only REDRAW_EVENT and GUI_BUTTON_EVENT, 0000000000000101b \tSetMaskForEvents(0x5);  \t\/\/ open BOARD application and check for a text message \tBoardPuts(HELLO_BOARD_STR); \t \tRenderWindow();\t \tfor(;;) \t{ \t\tconst uint32_t e = get_os_event(); \t\tswitch(e) \t\t{ \t\t\tcase REDRAW_EVENT: \t\t\t{ \t\t\t\tRenderWindow(); \t\t\t} \t\t\tbreak; \t\t\t \t\t\tcase GUI_BUTTON_EVENT: \t\t\t{ \t\t\t\tconst uint32_t bt = get_os_button(); \t\t\t\tif(bt == CUSTOM_BUTTON_ID || bt == 1) \/\/ 1 -- [x] window button id \t\t\t\t{ \t\t\t\t\treturn 0; \t\t\t\t} \t\t\t} \t\t\tbreak; \t\t} \t} \treturn 0; } \/\/---------------------------------------------------------------  <\/code><\/pre>\n<p>  \u0424\u0430\u0439\u043b d:\/work\/Makefile  <\/p>\n<pre><code class=\"bash\"> EXEC = simple      CC = kos32-gcc LD = kos32-ld OBJCOPY = kos32-objcopy  SDK_DIR:= \/d\/kolibri\/contrib\/sdk LDFLAGS = -static -S -nostdlib -T$(SDK_DIR)\/sources\/newlib\/app.lds -Map $(EXEC).map --image-base 0 CFLAGS = -c -O2 -fomit-frame-pointer -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32  INCLUDES= -I$(SDK_DIR)\/sources\/newlib\/libc\/include LIBPATH:= -L$(SDK_DIR)\/lib -L\/home\/autobuild\/tools\/win32\/mingw32\/lib  export PATH=$PATH:\/home\/autobuild\/tools\/win32\/bin:\/MinGW\/bin  default: $(EXEC)  $(EXEC):$(EXEC).o makefile     $(LD) $(LDFLAGS) $(LIBPATH) -o $(EXEC) *.o -lgcc -lapp -lc.dll     $(OBJCOPY) $(EXEC) -O binary  %.o : %.c makefile     $(CC) $(CFLAGS) $(INCLUDES) -o $@ $&lt;   <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c c:\\MinGW\\msys\\1.0\\msys.bat<br \/>  \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u043d\u0430\u0431\u0440\u0430\u0442\u044c  <\/p>\n<pre><code class=\"bash\">cd d:\/work make <\/code><\/pre>\n<p>  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0432 KolibriOS \u0444\u0430\u0439\u043b \u00absimple\u00bb<\/p>\n<p>  <b>\u041f\u0435\u0440\u0435\u043d\u043e\u0441 \u0444\u0430\u0439\u043b\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 Windows \u0438 KolibriOS<\/b><\/p>\n<p>  \u0421\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u043c\u0435\u0436\u0434\u0443 Windows \u0438 KolibriOS \u2013 \u044d\u0442\u043e flash-usb \u043d\u0430\u043a\u043e\u043f\u0438\u0442\u0435\u043b\u044c.<br \/>  \u0415\u0449\u0435 \u043e\u0434\u0438\u043d \u0441\u043f\u043e\u0441\u043e\u0431, \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 Qemu \u2014 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437 \u0434\u0438\u0441\u043a\u0430 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u043a\u0430\u043a hdd. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 qemu.bat \u0434\u043e\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0435\u0449\u0435 \u043e\u0434\u043d\u0438\u043c \u043a\u043b\u044e\u0447\u043e\u043c, -hda d:\\work\\c100.img, \u0433\u0434\u0435 c100.img \u2013 \u0438\u043c\u044f \u043e\u0431\u0440\u0430\u0437\u0430. \u041e\u0431\u0440\u0430\u0437 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u0436\u0435 \u043e\u0442\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0435\u0433\u043e \u043b\u0443\u0447\u0448\u0435 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c, \u0430 \u0441\u043d\u044f\u0442\u044c \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u043f\u043e \u043e\u0431\u044a\u0435\u043c\u0443 flash-usb \u043d\u0430\u043a\u043e\u043f\u0438\u0442\u0435\u043b\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0443\u0442\u0438\u043b\u0438\u0442\u044b <a href=\"http:\/\/sourceforge.net\/projects\/win32diskimager\">Win32DiskImager.exe<\/a><br \/>  \u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0437 \u043c\u043e\u0436\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <a href=\"http:\/\/www.winimage.com\/winimage.htm\">WinImage<\/a>.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043f\u0440\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 KolibriOS \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \/hd0\/1 \u0434\u0438\u0441\u043a\u0430 \u043f\u0443\u0441\u0442\u043e\u0435, \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0438 \u0432 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u043c \u043c\u0435\u043d\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0443\u043d\u043a\u0442 &quot;[b] \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0438\u0441\u043a\u0438, \u0432\u0438\u0434\u0438\u043c\u044b\u0435 \u0447\u0435\u0440\u0435\u0437 BIOS&quot;, \u0438 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u044d\u0442\u0443 \u043e\u043f\u0446\u0438\u044e (1)<\/p>\n<p>  <b>\u0418\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b<\/b><\/p>\n<p>  \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u0441 newlib \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \/KolibriOS\/lib\/libc.dll \u0432 KolibriOS.<br \/>  \u041f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 Qemu \u0438\u0437-\u0437\u0430 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0433\u0443\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u00ab\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439\u00bb \u0432\u0435\u0440\u0441\u0438\u0435\u0439 kolibri.img.<br \/>  \u0420\u0435\u0448\u0435\u043d\u0438\u0439 \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0434\u0432\u0435:<\/p>\n<p>  \u2022 \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c iso-\u0432\u0435\u0440\u0441\u0438\u044e (\u0417\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u0430\u043a\u0442-\u0434\u0438\u0441\u043a LiveCD)<br \/>  \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u00absimple\u00bb \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0432\u044b\u0434\u0430\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0443, \u0441\u043a\u043e\u0440\u0435\u0439 \u0432\u0441\u0435\u0433\u043e \u043d\u0430 \u043e\u0431\u0440\u0430\u0437\u0435 \u0441\u0442\u0430\u0440\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f libc.dll. \u041e\u0431\u044b\u0447\u043d\u043e \u043d\u0430 \u0443\u0436\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c \u0432\u044b\u0448\u0435 ftp.KolibriOS.org\/users\/Serge\/new\/Toolchain \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0441\u0430\u043c\u044b\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 \u0430\u0440\u0445\u0438\u0432\u0435 sdk.zip. \u041f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043d\u0430 \u043e\u0431\u0440\u0430\u0437\u0435 \u2014 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439 <a href=\"http:\/\/www.magiciso.com\">MagicISO<\/a>.<\/p>\n<p>  \u2022 \u0412\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043e\u043c KolibriOS \u00absearchapp\u00bb:<br \/>   \u2014 \u0432 \u043a\u043e\u0440\u0435\u043d\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 (flash-usb \u043d\u0430\u043a\u043e\u043f\u0438\u0442\u0435\u043b\u044c, \u043e\u0431\u0440\u0430\u0437 \u0434\u0438\u0441\u043a\u0430 *.img) \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c kolibri.lbl \u0438\u0437 d:\\kolibri\\dist\\kolibri.iso<br \/>   (kolibri.iso \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0432\u0430\u0442\u043e\u0440\u043e\u043c 7z \u0438\u043b\u0438 winrar, kolibri.lbl \u043b\u0435\u0436\u0438\u0442 \u0432 \u043a\u043e\u0440\u043d\u0435)<br \/>   \u2014 \u0432 \u043a\u043e\u0440\u043d\u0435 \u0442\u043e\u0433\u043e \u0436\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u0435\u0440\u0435\u0432\u043e \u043f\u0430\u043f\u043e\u043a kolibrios\/lib<br \/>   \u2014 \u0432 \u043f\u0430\u043f\u043a\u0443 \/kolibrios \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0439 \u0444\u0430\u0439\u043b (\u00absimple\u00bb)<br \/>   \u2014 \u0432 \u043f\u0430\u043f\u043a\u0443 \/kolibrios\/lib \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c libc.dll \u0438\u0437 d:\\kolibri\\contrib\\sdk\\bin<\/p>\n<p>  <b>\u041f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0441\u0441\u044b\u043b\u043a\u0438<\/b><\/p>\n<p>  \u0412\u0441\u0435 header-\u0444\u0430\u0439\u043b\u044b \u043e\u0431\u0435\u0440\u0442\u043e\u043a \u0438 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 (kolibri)\\contrib\\sdk\\sources\\newlib\\libc\\include<\/p>\n<p>  <a href=\"http:\/\/wiki.KolibriOS.org\/wiki\/Ru\/api\/kernel\">\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439<\/a><br \/>  (\u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 coreAPI \u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 simple.c, \u0444\u0443\u043d\u043a\u0446\u0438\u044f board_puts)<\/p>\n<p>  <a href=\"http:\/\/board.kolibrios.org\/viewtopic.php?f=24&amp;t=1587\">\u0412\u0435\u0442\u043a\u0430 \u0444\u043e\u0440\u0443\u043c\u0430, \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u043d\u0430\u044f newlib<\/a><\/p>\n<p>  <a href=\"https:\/\/bitbucket.org\/pascualle\/tengine\/downloads\/kolibrios_c_simple_example.zip\">\u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u0430\u0440\u0445\u0438\u0432 \u043f\u043e \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435<\/a><br \/>  \u2022 \u0432 \u043f\u0430\u043f\u043a\u0435 _kos \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432 KolibriOS<br \/>  \u2022 \u0432 \u043f\u0430\u043f\u043a\u0435 _win32 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f image\/c100.img (\u043e\u0431\u0440\u0430\u0437 \u0434\u0438\u0441\u043a\u0430 \u0434\u043b\u044f Qemu \u0441 \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u043c \u00absimple\u00bb), makefile, qemu.bat, simple.c<\/p>\n<p>  P.S.<br \/>  \u0412\u044b\u0440\u0430\u0436\u0430\u044e \u043e\u0433\u0440\u043e\u043c\u043d\u0443\u044e \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u0442\u0430\u0432\u043d\u0438\u043a\u0443 <a href=\"http:\/\/habrahabr.ru\/users\/sourcerer\">Sourcerer<\/a> \u0437\u0430 \u0442\u0435\u0440\u043f\u0435\u043d\u0438\u0435, \u043f\u043e\u043c\u043e\u0449\u044c \u0438 \u0441\u043e\u0432\u0435\u0442\u044b!<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/lh3.googleusercontent.com\/-jowqA5ufY_0\/U82B6Qi8FlI\/AAAAAAAAE_k\/cpBQcWzuRsg\/w728-h581-no\/result.png\" alt=\"image\"\/>      \t<\/p>\n<div class=\"clear\"><\/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=\"http:\/\/habrahabr.ru\/company\/kolibrios\/blog\/229231\/\"> http:\/\/habrahabr.ru\/company\/kolibrios\/blog\/229231\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">     \t<img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/75f\/ed4\/4f9\/75fed44f93a20fff0e6db06381cd1717.jpg\" alt=\"image\" align=\"left\"\/><br \/>  KolibriOS \u2013 \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430, \u044f\u0434\u0440\u043e \u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440. \u042d\u0442\u043e, \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435, \u043d\u0435 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0434\u0440\u0443\u0433\u0438\u043c \u044f\u0437\u044b\u043a\u0430\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0443\u0442\u044c \u0432 KolibriOS \u0437\u0430\u043a\u0440\u044b\u0442. \u041a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0437\u0430 \u0432\u0440\u0435\u043c\u044f \u044d\u0432\u043e\u043b\u044e\u0446\u0438\u0438 \u044d\u0442\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0431\u044b\u043b\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u0438\u043b\u0438 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 C\/C++. \u0412 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 KolibriOS \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0435\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0435 \u0440\u0430\u043d\u043d\u0438\u0435 \u043d\u0430\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 C\/C++ \u043a\u043e\u0434\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 (root)\/programs\/games\/kosilka \u0438\u043b\u0438 (root)\/programs\/system\/shell, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0435 \u0440\u0430\u0437\u043d\u044b\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044b \u0438 \u043e\u0431\u0435\u0440\u0442\u043a\u0438 C\/Asm.<\/p>\n<p>  \u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0441\u0430\u043c\u043e\u0439 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u0438\u0437 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a, \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f newlib. \u041e\u043d\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 libc, C-\u043e\u0431\u0435\u0440\u043a\u043e\u0439 \u043d\u0430\u0434 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c\u0438 coreAPI \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u0438 toolchain\u2019\u0430 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438.<\/p>\n<p>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0432 KolibriOS \u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 C\/C++ \u0435\u0449\u0435 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442, \u0442\u0435\u043a\u0443\u0449\u0438\u0439 toolchain \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u0441\u0431\u043e\u0440\u043a\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0432 \u041e\u0421 Windows \u0438\u043b\u0438 Linux. <\/p>\n<p>  \u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0435\u0439 \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 newlib \u0434\u043b\u044f \u041e\u0421 Windows.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-229231","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/229231","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=229231"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/229231\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=229231"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=229231"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=229231"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}