{"id":152471,"date":"2025-12-23T23:12:03","date_gmt":"2025-12-23T21:12:03","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs"},"modified":"2025-12-23T23:12:03","modified_gmt":"2025-12-23T21:12:03","slug":"osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs","title":{"rendered":"QEMU- og FFmpeg-stifteren har offentliggjort JavaScript-motoren Micro QuickJS","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Den franske matematiker Fabrice Bellard, som tidligere har grundlagt projekterne QEMU, FFmpeg, BPG, QuickJS, TinyGL og TinyCC, har offentliggjort en ny JavaScript-motor til indlejrede systemer \u2014 Micro QuickJS, der kan kompilere og k\u00f8re JavaScript-programmer og kun bruger 10 KB RAM. Sammen med C-biblioteket fylder motoren cirka 100 KB fast hukommelse. Det er muligt at kompilere JavaScript til bytekode og k\u00f8re bytekoden separat. Projektkoden er skrevet i C og distribueres under MIT-licensen.    <\/p>\n<p>Motoren underst\u00f8tter et delm\u00e6ngde af JavaScript-sproget, der er t\u00e6t p\u00e5 specifikationen ECMAScript 5 (ES2019), men som stiller strengere krav til koden og ikke tillader brugen af nogle ineffektive eller fejlbeh\u00e6ftede JavaScript-konstruktioner. For eksempel skal globale variabler n\u00f8dvendigvis deklareres med n\u00f8gleordet 'var', brugen af 'with' er forbudt, arrays m\u00e5 ikke have hulrum, initialization som 'new Number(1)' er ikke muligt, og der kan ikke opn\u00e5s adgang til lokale variabler inden for eval.            <\/p>\n<p>Ydelsen af Micro QuickJS er t\u00e6t p\u00e5 motoren QuickJS, som Fabrice har udviklet siden 2019. Micro QuickJS bruger en del af koden fra QuickJS, men arkitekturen adskiller sig i h\u00f8j grad og er designet til minimalt hukommelsesforbrug. For eksempel bruger Micro QuickJS en tracing garbage collector, mens QuickJS anvender reference counting. Omkostningerne ved garbage collectoren udg\u00f8r kun et par bits pr. tildelt hukommelsesblok. Der bruges en egen allocator til hukommelsestildeling, der ikke afh\u00e6nger af biblioteksfunktionen malloc().    <\/p>\n<p>Andre forskelle fra QuickJS: bruger ikke en stak; anderledes intern repr\u00e6sentation af objekter; opbevaring af strenge i UTF-8-kodning; generering af standardbiblioteket under kompilering og dets opbevaring i konstant hukommelse med kun et par objekter i RAM; en parser, der ligner QuickJS, men ikke bruger rekursion; kombination af bytekodegenerering og optimering i \u00e9n omgang (QuickJS har flere gange til optimering). <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/vps\/abuzoustojchivye-vps\/\"   title=\"virtual machine\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"4209\">virtual machine<\/a>Den franske matematiker Fabrice Bellard, som engang grundlagde projekterne QEMU, FFmpeg, BPG, QuickJS, TinyGL og TinyCC, har offentliggjort en ny JavaScript-motor til indlejrede systemer - Micro QuickJS.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64483\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0424\u0440\u0430\u043d\u0446\u0443\u0437\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0424\u0430\u0431\u0440\u0438\u0441 \u0411\u0435\u043b\u043b\u0430\u0440 (Fabrice Bellard), \u043e\u0441\u043d\u043e\u0432\u0430\u0432\u0448\u0438\u0439 \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u044b QEMU, FFmpeg, BPG, QuickJS, TinyGL \u0438 TinyCC, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 JavaScript-\u0434\u0432\u0438\u0436\u043e\u043a \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c &#8212; Micro QuickJS, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c JavaScript-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u044f \u0432\u0441\u0435\u0433\u043e 10 \u041a\u0411 \u041e\u0417\u0423. \u0412\u043c\u0435\u0441\u0442\u0435 \u0441 \u0421\u0438-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u043e\u0439 \u0434\u0432\u0438\u0436\u043e\u043a \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 100 \u041a\u0411 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u0430 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f JavaScript \u0432 \u0431\u0430\u0439\u0442\u043a\u043e\u0434 \u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a [&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-152471","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=\"\u0424\u0440\u0430\u043d\u0446\u0443\u0437\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0424\u0430\u0431\u0440\u0438\u0441 \u0411\u0435\u043b\u043b\u0430\u0440 (Fabrice Bellard), \u043e\u0441\u043d\u043e\u0432\u0430\u0432\u0448\u0438\u0439 \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u044b QEMU, FFmpeg, BPG, QuickJS, TinyGL \u0438 TinyCC, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 JavaScript-\u0434\u0432\u0438\u0436\u043e\u043a \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c - Micro QuickJS.\" \/>\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\/osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs\" \/>\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\u041e\u0441\u043d\u043e\u0432\u0430\u0442\u0435\u043b\u044c QEMU \u0438 FFmpeg \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b JavaScript-\u0434\u0432\u0438\u0436\u043e\u043a Micro QuickJS | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0424\u0440\u0430\u043d\u0446\u0443\u0437\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0424\u0430\u0431\u0440\u0438\u0441 \u0411\u0435\u043b\u043b\u0430\u0440 (Fabrice Bellard), \u043e\u0441\u043d\u043e\u0432\u0430\u0432\u0448\u0438\u0439 \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u044b QEMU, FFmpeg, BPG, QuickJS, TinyGL \u0438 TinyCC, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 JavaScript-\u0434\u0432\u0438\u0436\u043e\u043a \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c - Micro QuickJS.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs\" \/>\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=\"2025-12-23T21:12:03+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-12-23T21:12:03+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\udd47Grundl\u00e6ggeren af QEMU og FFmpeg har offentliggjort JavaScript-motoren Micro QuickJS | ProHoster","description":"\ud83e\udd47Grundl\u00e6ggeren af QEMU og FFmpeg har offentliggjort JavaScript-motoren Micro QuickJS | ProHoster","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs","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\u041e\u0441\u043d\u043e\u0432\u0430\u0442\u0435\u043b\u044c QEMU \u0438 FFmpeg \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b JavaScript-\u0434\u0432\u0438\u0436\u043e\u043a Micro QuickJS | ProHoster","og:description":"\u0424\u0440\u0430\u043d\u0446\u0443\u0437\u0441\u043a\u0438\u0439 \u043c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u043a \u0424\u0430\u0431\u0440\u0438\u0441 \u0411\u0435\u043b\u043b\u0430\u0440 (Fabrice Bellard), \u043e\u0441\u043d\u043e\u0432\u0430\u0432\u0448\u0438\u0439 \u0432 \u0441\u0432\u043e\u0451 \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u044b QEMU, FFmpeg, BPG, QuickJS, TinyGL \u0438 TinyCC, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b \u043d\u043e\u0432\u044b\u0439 JavaScript-\u0434\u0432\u0438\u0436\u043e\u043a \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c - Micro QuickJS.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/osnovatel-qemu-i-ffmpeg-opublikoval-javascript-dvizhok-micro-quickjs","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":"2025-12-23T21:12:03+00:00","article:modified_time":"2025-12-23T21:12:03+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"152471","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":"2026-01-20 13:46:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-20 13:46:19","updated":"2026-01-20 13:46: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\/152471","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=152471"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/152471\/revisions"}],"predecessor-version":[{"id":164084,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/152471\/revisions\/164084"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=152471"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=152471"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=152471"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}