{"id":37146,"date":"2019-10-31T22:15:59","date_gmt":"2019-10-31T19:15:59","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf\/"},"modified":"2019-10-31T22:15:59","modified_gmt":"2019-10-31T19:15:59","slug":"kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf","title":{"rendered":"Oracle planl\u00e6gger at redesigne DTrace til Linux ved hj\u00e6lp af eBPF","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Oracle Corporation <noindex><a rel=\"nofollow\" href=\"https:\/\/blogs.oracle.com\/linux\/dtrace-on-fedora\">i sin officielle blog og deler relevante diagrammer.<\/a><\/noindex> om arbejdet med at overf\u00f8re relaterede \u00e6ndringer til DTrace til upstream og planerne for implementering af teknologien til dynamisk fejlfinding af DTrace oven p\u00e5 den eksisterende infrastruktur i Linux-kernen, specifikt ved brug af subsystemer som eBPF. Oprindeligt var det st\u00f8rste problem ved brugen af DTrace i Linux inkompatibilitet p\u00e5 licensniveau, men i 2018 relicensierede Oracle <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=48078\">koden til DTrace<\/a><\/noindex> under GPLv2. <\/p>\n<p>DTrace har allerede <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=35586\">l\u00e6nge v\u00e6ret<\/a><\/noindex> tilg\u00e6ngelig som en del af det udvidede kernel for Oracle Linux-distributionen, men det kr\u00e6ver yderligere patches til kernen for at blive brugt i andre distributioner, hvilket begr\u00e6nser anvendelsen af den n\u00e6vnte teknologi. Som eksempel har Oracle <noindex><a rel=\"nofollow\" href=\"https:\/\/blogs.oracle.com\/linux\/dtrace-on-fedora\">has prepared<\/a><\/noindex> en detaljeret vejledning til installation og brug af DTrace i Fedora Linux. For installation kr\u00e6ves en bygning <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/dtrace-utils\">v\u00e6rkt\u00f8jer<\/a><\/noindex> og anvendelse af en Linux-kerne, der er genopbygget med <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/dtrace-linux-kernel.git\">patcher<\/a><\/noindex>. For at automatisere byggingen af kernen med Oracle- og Fedora-patches foresl\u00e5s der <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/oracle\/dtrace-linux-kernel\/blob\/5.2.7\/samples\/dtrace\/DTrace-on-Fedora.sh\">script<\/a><\/noindex>.<\/p>\n<p>eBPF er en indbygget bytecode-tolker i Linux-kernen, der g\u00f8r det muligt at oprette h\u00e5ndteringsfunktioner til netv\u00e6rksoperationer, overv\u00e5ge systemets drift, opfange systemopkald, kontrollere adgang, behandle h\u00e6ndelser med tidsm\u00e5ling (perf_event_open), t\u00e6lle frekvenser og udf\u00f8re operationer i henhold til tidsforbruget, udf\u00f8re sporing ved hj\u00e6lp af kprobes\/uprobes\/tracepoints. Takket v\u00e6re brugen af JIT-kompilering bliver bytekoden oversat til maskininstruktioner on-the-fly og udf\u00f8rt med ydeevne som native kode. DTrace kan implementeres oven p\u00e5 eBPF, ligesom de eksisterende sporingsv\u00e6rkt\u00f8jer. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=45391\">arbejder<\/a><\/noindex> DTrace-teknologien blev udviklet til operativsystemet Solaris for at l\u00f8se opgaver til dynamisk sporing af systemkernen og slutprogrammer, og giver brugeren mulighed for at spore systemets adf\u00e6rd detaljeret og udf\u00f8re realtidsdiagnostik af problemer. Under fejlfinding p\u00e5virker DTrace ikke driften af de unders\u00f8gende applikationer og har ingen indflydelse p\u00e5 deres ydeevne, hvilket muligg\u00f8r analyse af k\u00f8rende systemer i realtid. DTrace's styrker inkluderer et h\u00f8jniveau D-sprog, der ligner AWK, hvilket g\u00f8r det betydeligt lettere at skabe sporingsskemaer sammenlignet med de foresl\u00e5ede v\u00e6rkt\u00f8jer til eBPF til at skrive h\u00e5ndteringsprogrammer i sprog som C, Python og Lua med eksterne biblioteker.<\/p>\n<p>DTrace-teknologien blev udviklet til operativsystemet Solaris for at l\u00f8se opgaver inden for dynamisk sporingskonstruktion af systemkernen og afsluttende applikationer, hvilket giver brugeren mulighed for detaljeret at overv\u00e5ge systemadf\u00e6rden og foretage fejlfinding i realtid. Under debugprocessen p\u00e5virker DTrace ikke driften af de unders\u00f8gte applikationer og har ingen indvirkning p\u00e5 deres ydeevne, hvilket muligg\u00f8r analyse af k\u00f8rende systemer on-the-fly. Blandt DTrace's styrker er det h\u00f8jniveau D-sprog, som ligner AWK, og som g\u00f8r det betydeligt nemmere at oprette sporingsscenarier sammenlignet med det, der tilbydes for eBPF, hvor der skrives h\u00e5ndteringsprogrammer p\u00e5 sprog som C, Python og Lua med eksterne biblioteker. <\/p>\n<p>Ingeni\u00f8rer fra Oracle arbejder ogs\u00e5 p\u00e5 at skabe eBPF-backend til GCC og har allerede offentliggjort <noindex><a rel=\"nofollow\" href=\"https:\/\/gcc.gnu.org\/ml\/gcc-patches\/2019-08\/msg01028.html\">et s\u00e6t patches<\/a><\/noindex> til integration af eBPF-support i GCC og <noindex><a rel=\"nofollow\" href=\"https:\/\/sourceware.org\/ml\/binutils\/2019-05\/msg00306.html\">har opn\u00e5et<\/a><\/noindex> inkluderingen af kode til underst\u00f8ttelse af eBPF i GNU binutils. Oprindeligt er backend til underst\u00f8ttelse af eBPF baseret p\u00e5 LLVM-teknologier, men Oracle er interesseret i at bringe en integreret mulighed for at generere programmer til eBPF i GCC, hvilket vil muligg\u00f8re brugen af et enkelt v\u00e6rkt\u00f8j til b\u00e5de at kompilere Linux-kernen og programmer til eBPF. <\/p>\n<p>Ud over backend til generation af bytekode inkluderer de foresl\u00e5ede patches til GCC ogs\u00e5 en port af libgcc til eBPF og v\u00e6rkt\u00f8jer til at danne ELF-filer, som giver mulighed for at k\u00f8re koden i eBPF's virtuelle maskine ved hj\u00e6lp af de loader, der leveres af kernen. Indtil videre kan kode i C (ikke alle funktioner i sproget er tilg\u00e6ngelige) blive oversat til bytekode, men i fremtiden forventes det, at mulighederne for C-sproget vil blive udvidet, yderligere sprog vil blive underst\u00f8ttet, der vil blive oprettet en simulator, og GCC vil f\u00e5 support til at debugge eBPF-programmer uden at skulle indl\u00e6se dem i kernen.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Kilde: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51287\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 DTrace \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 upstream \u0438 \u043f\u043b\u0430\u043d\u0430\u0445 \u043f\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043e\u0442\u043b\u0430\u0434\u043a\u0438 DTrace \u043f\u043e\u0432\u0435\u0440\u0445 \u0448\u0442\u0430\u0442\u043d\u043e\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0443\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u044f\u0434\u0440\u0430 Linux, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0430\u043a\u0438\u0445 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c, \u043a\u0430\u043a eBPF. \u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c DTrace \u0432 Linux \u0431\u044b\u043b\u0430 \u043d\u0435\u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0439, \u043d\u043e \u0432 2018 \u0433\u043e\u0434\u0443 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043f\u0435\u0440\u0435\u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u0430 \u043a\u043e\u0434 [&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-37146","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=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 DTrace \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 upstream \u0438 \u043f\u043b\u0430\u043d\u0430\u0445 \u043f\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438.\" \/>\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\/da\/blog\/news\/kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0430 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c DTrace \u0434\u043b\u044f Linux \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c eBPF | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 DTrace \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 upstream \u0438 \u043f\u043b\u0430\u043d\u0430\u0445 \u043f\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf\" \/>\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=\"2019-10-31T19:15:59+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:15:59+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\udd47Oracle planl\u00e6gger at redesign DTrace til Linux ved hj\u00e6lp af eBPF | ProHoster","description":"Oracle har meddelt, at de arbejder p\u00e5 at overf\u00f8re de relaterede \u00e6ndringer omkring DTrace til upstream og planl\u00e6gger en implementering af teknologien.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0430 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c DTrace \u0434\u043b\u044f Linux \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c eBPF | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0441 DTrace \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0432 upstream \u0438 \u043f\u043b\u0430\u043d\u0430\u0445 \u043f\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/kompaniya-oracle-namerena-pererabotat-dtrace-dlya-linux-s-ispolzovaniem-ebpf","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":"2019-10-31T19:15:59+00:00","article:modified_time":"2019-10-31T19:15:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"37146","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":null,"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":"2026-01-22 06:17:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:02:42","updated":"2026-01-22 06:17:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/37146","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=37146"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/37146\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=37146"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=37146"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=37146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}