{"id":103565,"date":"2022-03-18T21:36:53","date_gmt":"2022-03-18T19:36:53","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust"},"modified":"2022-03-18T21:36:53","modified_gmt":"2022-03-18T19:36:53","slug":"novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","title":{"rendered":"Nov\u00e1 verze patch\u016f pro j\u00e1dro Linux s podporou jazyka Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Miguel Ojeda, autor projektu Rust-for-Linux, navrhl pro v\u00fdvoj\u00e1\u0159e j\u00e1dra Linux vyd\u00e1n\u00ed verze v5 komponent pro v\u00fdvoj ovlada\u010d\u016f za\u0159\u00edzen\u00ed v jazyce Rust. Toto je \u0161est\u00e1 edice patch\u016f, kter\u00e1 bere v \u00favahu prvn\u00ed verzi, publikovanou bez \u010d\u00edsla verze. Podpora Rustu je pova\u017eov\u00e1na za experiment\u00e1ln\u00ed, ale ji\u017e byla zahrnuta do v\u011btve linux-next a je dostate\u010dn\u011b rozvinut\u00e1 pro za\u010d\u00e1tek pr\u00e1ce na vytv\u00e1\u0159en\u00ed vrstev abstrakce nad subsystemy j\u00e1dra, stejn\u011b jako pro psan\u00ed ovlada\u010d\u016f a modul\u016f. V\u00fdvoj je financov\u00e1n spole\u010dnost\u00ed Google a organizac\u00ed ISRG (Internet Security Research Group), kter\u00e1 je zakladatelem projektu Let's Encrypt a podporuje propagaci HTTPS a rozvoj technologi\u00ed pro zv\u00fd\u0161en\u00ed bezpe\u010dnosti internetu.            <\/p>\n<p>P\u0159ipom\u00edn\u00e1me, \u017ee navr\u017een\u00e9 zm\u011bny umo\u017e\u0148uj\u00ed pou\u017e\u00edvat Rust jako druh\u00fd jazyk pro v\u00fdvoj ovlada\u010d\u016f a modul\u016f j\u00e1dra. Podpora Rustu je zva\u017eov\u00e1na jako volba, kter\u00e1 nen\u00ed aktivn\u00ed ve v\u00fdchoz\u00edm nastaven\u00ed a nevede k zahrnut\u00ed Rustu mezi povinn\u00e9 z\u00e1vislosti p\u0159i sestaven\u00ed j\u00e1dra. Pou\u017eit\u00ed Rustu pro v\u00fdvoj ovlada\u010d\u016f umo\u017en\u00ed s minim\u00e1ln\u00edmi n\u00e1mahou vytv\u00e1\u0159et bezpe\u010dn\u00e9 a kvalitn\u011bj\u0161\u00ed ovlada\u010de, zbaven\u00e9 probl\u00e9m\u016f, jako je p\u0159\u00edstup k oblasti pam\u011bti po jej\u00edm uvoln\u011bn\u00ed, dereference nulov\u00fdch ukazatel\u016f a p\u0159ekro\u010den\u00ed hranic bufferu.    <\/p>\n<p>Bezpe\u010dn\u00e1 pr\u00e1ce s pam\u011bt\u00ed je zaji\u0161t\u011bna v Rustu b\u011bhem kompilace prost\u0159ednictv\u00edm kontroly odkaz\u016f, sledov\u00e1n\u00ed vlastnictv\u00ed objekt\u016f a zohledn\u011bn\u00ed doby \u017eivota objekt\u016f (oblast\u00ed viditelnosti), stejn\u011b jako hodnocen\u00edm spr\u00e1vnosti p\u0159\u00edstupu k pam\u011bti b\u011bhem vykon\u00e1v\u00e1n\u00ed k\u00f3du. Rust tak\u00e9 poskytuje prost\u0159edky k ochran\u011b p\u0159ed p\u0159ete\u010den\u00edm celo\u010d\u00edseln\u00fdch hodnot, vy\u017eaduje povinnou inicializaci hodnot prom\u011bnn\u00fdch p\u0159ed pou\u017eit\u00edm, l\u00e9pe zpracov\u00e1v\u00e1 chyby ve standardn\u00ed knihovn\u011b, aplikuje koncept nem\u011bnnosti (immutable) odkaz\u016f a prom\u011bnn\u00fdch ve v\u00fdchoz\u00edm nastaven\u00ed, a nab\u00edz\u00ed silnou statickou typizaci pro minimalizaci logick\u00fdch chyb.    <\/p>\n<p>V nov\u00e9 variant\u011b patch\u016f pokra\u010duje odstran\u011bn\u00ed pozn\u00e1mek, kter\u00e9 byly vyj\u00e1d\u0159eny b\u011bhem diskuse prvn\u00ed, druh\u00e9, t\u0159et\u00ed, \u010dtvrt\u00e9 a p\u00e1t\u00e9 verze patch\u016f. V nov\u00e9 verzi:  <\/p>\n<ul>\n<li class=\"l\"> N\u00e1stroje byly aktualizov\u00e1ny na verzi Rust 1.59.0. Nov\u00e1 verze Rustu tak\u00e9 synchronizovala verzi knihovny alloc, kter\u00e1 se zbavila mo\u017en\u00fdch generac\u00ed stavu \"panic\" p\u0159i v\u00fdskytu chyb, jako je nedostatek pam\u011bti. Stabilizov\u00e1na byla mo\u017enost pou\u017eit\u00ed assemblerov\u00fdch vlo\u017eek (\"feature(global_asm)\").\n<li class=\"l\"> Byla p\u0159id\u00e1na podpora pro vytv\u00e1\u0159en\u00ed hostitelsk\u00fdch program\u016f v jazyce Rust, kter\u00e9 se pou\u017e\u00edvaj\u00ed b\u011bhem kompilace j\u00e1dra.\n<li class=\"l\"> M\u00edsto dod\u00e1v\u00e1n\u00ed p\u0159edem vytvo\u0159en\u00fdch soubor\u016f se specifikac\u00ed c\u00edlov\u00fdch platforem byla zaji\u0161t\u011bna jejich dynamick\u00e1 generace na z\u00e1klad\u011b konfigurace j\u00e1dra.\n<li class=\"l\"> P\u0159id\u00e1n parametr j\u00e1dra HAVE_RUST, kter\u00fd je aktivov\u00e1n pro architektury, kde je Rust podporov\u00e1n.\n<li class=\"l\"> Byly navrhnuty abstrakce pro pou\u017eit\u00ed v k\u00f3du v jazyce Rust pro hardwarov\u00fd gener\u00e1tor pseudon\u00e1hodn\u00fdch \u010d\u00edsel.\n<li class=\"l\"> Bylo povoleno pou\u017e\u00edv\u00e1n\u00ed chybov\u00fdch k\u00f3d\u016f bez p\u0159edpony \"Error::\" (nap\u0159\u00edklad \"return Err(EINVAL)\") pro p\u0159ibl\u00ed\u017een\u00ed se k zpracov\u00e1n\u00ed chybov\u00fdch k\u00f3d\u016f v C.\n<li class=\"l\"> Byl p\u0159id\u00e1n typ \"CString\" pro vlastn\u00ed C-\u0159et\u011bzce. Byly slou\u010deny typy Formatter a Buffer.\n<li class=\"l\"> Byly p\u0159id\u00e1ny typy Bool a LockInfo.\n<li class=\"l\"> Byla zjednodu\u0161ena implementace spin-z\u00e1mk\u016f.        <\/ul>\n<\/ul>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56877\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0432\u044b\u043f\u0443\u0441\u043a v5 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u042d\u0442\u043e \u0448\u0435\u0441\u0442\u0430\u044f \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0431\u0435\u0437 \u043d\u043e\u043c\u0435\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u0438. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Rust \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f, \u043d\u043e \u0443\u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0432 \u0432\u0435\u0442\u043a\u0443 linux-next \u0438 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0442\u0430 \u0434\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0441\u043b\u043e\u0451\u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-103565","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0432\u044b\u043f\u0443\u0441\u043a v5 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u0434\u043b\u044f \u044f\u0434\u0440\u0430 Linux \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u0430 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0432\u044b\u043f\u0443\u0441\u043a v5 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-03-18T19:36:53+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-03-18T19:36:53+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Nov\u00e1 verze patch\u016f pro j\u00e1dro Linux s podporou jazyka Rust | ProHoster","description":"Miguel Ojeda, autor projektu Rust-for-Linux, navrhl pro v\u00fdvoj\u00e1\u0159e j\u00e1dra Linux vyd\u00e1n\u00ed v5 komponent pro v\u00fdvoj ovlada\u010d\u016f za\u0159\u00edzen\u00ed v jazyce Rust.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u0434\u043b\u044f \u044f\u0434\u0440\u0430 Linux \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u0430 Rust | ProHoster","og:description":"\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0432\u044b\u043f\u0443\u0441\u043a v5 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/novaya-versiya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-03-18T19:36:53+00:00","article:modified_time":"2022-03-18T19:36:53+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"103565","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2022-03-18 19:37:21","updated":"2022-10-03 11:39:03","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/103565","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=103565"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/103565\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=103565"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=103565"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=103565"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}