{"id":176845,"date":"2016-04-25T04:29:11","date_gmt":"2016-04-25T02:29:11","guid":{"rendered":"http:\/\/www.borncity.com\/blog\/?p=176845"},"modified":"2024-08-12T01:04:08","modified_gmt":"2024-08-11T23:04:08","slug":"windows-10-infos-zum-linux-subsystem","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2016\/04\/25\/windows-10-infos-zum-linux-subsystem\/","title":{"rendered":"Windows 10: Infos zum Linux-Subsystem"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" style=\"float: left; margin: 0px 10px 0px 0px; display: inline;\" src=\"https:\/\/borncity.com\/blog\/wp-content\/uploads\/2015\/01\/win102.jpg\" width=\"58\" height=\"58\" align=\"left\" \/>Microsoft f\u00fchrt ja in dem im Sommer 2016 erwarteten Windows 10 Anniversary ein Linux-Subsystem ein. Jetzt gibt es einige Details zu dessen Architektur.<\/p>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ssl-vg03.met.vgwort.de\/na\/72798644cc9d4857b8cbcce0e1a9a0e7\" alt=\"\" width=\"1\" height=\"1\" \/>Zur BUILD 2016 wartete Microsoft ja mit der Info auf, dass im Windows 10 Anniversary Update ein Linux-Subsystem integriert wird, mit dem eine BASH-Shell ausgef\u00fchrt werden kann. Jetzt hat das Entwicklerteam <a href=\"https:\/\/blogs.msdn.microsoft.com\/wsl\/2016\/04\/22\/windows-subsystem-for-linux-overview\/\" target=\"_blank\" rel=\"noopener\">einige Details publiziert<\/a>. Zitat:<\/p>\n<blockquote><p><em>We recently announced Bash on Ubuntu on Windows which enables native Linux ELF64 binaries to run on Windows via the Windows Subsystem for Linux (WSL). This subsystem was created by the Microsoft Windows Kernel team and has generated a lot of excitement. One of the most frequent question we get asked is how is this approach different from a traditional virtual machine. In this first of a series of blog posts, we will provide an overview of WSL that will answer that and other common questions. In future posts we will dive deep into the component areas introduced. <\/em><\/p><\/blockquote>\n<p>Das Windows Subsystem f\u00fcr Linux (WSL) besteht aus User-Mode- und Kernel-Mode-Komponenten und kann Linux ELF64 Binaries unter Windows 10 ausf\u00fchren.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/web.archive.org\/web\/20210420201425\/https:\/\/msdnshared.blob.core.windows.net\/media\/2016\/04\/LXSS-diagram-1024x472.jpg\" width=\"599\" height=\"276\" \/>(Quelle: Microsoft)<\/p>\n<p>F\u00fcr mich war es eine faustdicke \u00dcberraschung, die folgende Erkl\u00e4rung zu lesen:<\/p>\n<ol>\n<li>User mode session manager service that handles the Linux instance life cycle<\/li>\n<li>Pico provider drivers (lxss.sys, lxcore.sys) that emulate a Linux kernel by translating Linux syscalls<\/li>\n<li>Pico processes that host the unmodified user mode Linux (e.g. \/bin\/bash)<\/li>\n<\/ol>\n<p>Die Linux-Binaries werden in Pico-Prozessen im Windows-Kernel ausgef\u00fchrt, die die Linux-Systemaufrufe erm\u00f6glichen und an den Windows-Kernel weiterreichen. Hierzu werden die Treiber <em>lxss.sys <\/em>und <em>lxcore.sys <\/em>eingesetzt. Diese \u00fcbernehmen die \u00dcbersetzung der Linux-Systemaufrufe in NT APIs-Aufrufe und emulieren damit einen Linux-Kernel.<\/p>\n<p>Mit anderen Worten: Es wird kein Linux-Basissystem in Windows integriert, sondern es kommen Pico-Prozesse mit einer API-\u00dcbersetzung zum Einsatz. Und hier klingelt bei mir war, ist das doch die Quintessenz, die Microsoft-Forscher aus dem DrawBridge-Projekt gezogen haben (siehe Linkliste). Dort wurde der gleiche Ansatz verwendet, um API-Aufrufe \u00e4lterer Windows-Versionen an einen neuen Windows-Kernel weiterzureichen. Das Ganze lief unter dem Begriff MinWin.<\/p>\n<blockquote><p>Ich hatte daher eigentlich erwartet, dass Microsoft vor dem Auslaufen des Supports f\u00fcr Windows XP eine L\u00f6sung der Art \u201eMiniWin XP-VM\" bringt \u2013 also ein auf rudiment\u00e4re Funktionen abgespecktes Windows XP, welches als virtuelle Maschine in Form von Pico-Prozessen daherkommt. Das ist jetzt keine wilde Idee, denn bei Microsoft arbeitet man in den Entwicklungslabors genau an so etwas. \u00dcber das Projekt XaX bzw. Drawbridge hatte ich im Blog, unter anderem im Beitrag <a href=\"https:\/\/borncity.com\/blog\/2011\/10\/18\/microsofts-drawbridge-projekt-vorgestellt\/\">Microsofts \"Drawbridge\"-Projekt vorgestellt<\/a>, mehrfach berichtet. Es gibt also diese Technologie, sogar in extrem innovativer Variante. Aber das sollte wohl nicht sein.<\/p>\n<p>Was mich im Kontext dieses Linux-Subsystem zum Schluss bringt, dass Microsoft nicht wollte. Man ist, in meinen Augen, mehr auf Effekthascherei aus. Mir war bisher nicht klar, dass ich ein Linux-Subsystem unter Windows 10 br\u00e4uchte &#8211; und ich sehe auch zuk\u00fcnftig da wenig Bedarf. Ein MinWin mit XP-Schnittstellen, unter dem ich Anwendungen im Kompatibilit\u00e4tsmodus von Windows XP als Pico-Prozesse laufen lassen k\u00f6nnte, h\u00e4tte vielen Nutzern Kompatibilit\u00e4tsprobleme mit Treibern und Software l\u00f6sen k\u00f6nnen.<\/p><\/blockquote>\n<p>Weiterhin unterst\u00fctzen die Treiber ein WSL-Dateisystem (VolFS und DriveFS), um Dateizugriffe aus Linux zu erm\u00f6glichen.<\/p>\n<ul>\n<li>VolFs: Stellt das komplette Filesystem (einschlie\u00dflich Verwaltung der Zugriffsrechte samt chmod und chroot, Case-Sensitivit\u00e4t f\u00fcr Dateinamen sowie Symbolic-Links) f\u00fcr die Linux-Binaries bereit.<\/li>\n<li>DriveFS: Dieses Modul implementiert die \u00dcbersetzung der Linux-Dateisystemzugriffe auf Windows-Laufwerke.<\/li>\n<\/ul>\n<p>Linux-Binaries k\u00f6nnen also auf das Windows-Dateisystem zugreifen. Windows-Apps bleiben diese Zugriffe aber verwehrt. Details sind im <a href=\"https:\/\/blogs.msdn.microsoft.com\/wsl\/2016\/04\/22\/windows-subsystem-for-linux-overview\/\" target=\"_blank\" rel=\"noopener\">Microsoft-Beitrag<\/a>\u00a0zu entnehmen.<\/p>\n<p><strong>\u00c4hnliche Artikel:<\/strong><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2011\/10\/18\/microsofts-drawbridge-projekt-vorgestellt\/\">Microsofts \"Drawbridge\"-Projekt vorgestellt<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2014\/06\/12\/anwendungsvirtualisierung-docker-und-drawbridge\/\">Anwendungsvirtualisierung, Docker und Drawbridge<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2014\/09\/20\/phnix-aus-der-asche-bekommt-xax-ein-revival\/\">Ph\u00f6nix aus der Asche: Bekommt XaX in Win 9 ein Revival?<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2014\/03\/04\/windows-xp-exit-strategie-windows-xp-anpassen-teil-3\/\">Windows XP-Exit-Strategie \u2013 Windows XP anpassen \u2013 Teil 3<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2016\/03\/29\/windows-10-kommt-die-bash-shell-in-redstone\/\">Windows 10: Kommt die Bash-Shell in Redstone?<\/a><br \/>\n<a href=\"https:\/\/web.archive.org\/web\/20200926083745\/https:\/\/borncity.com\/blog\/2014\/10\/28\/bekommt-windows-10-einen-paketmanager-wie-linux\/\">Bekommt Windows 10 einen Paketmanager wie Linux?<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2016\/04\/22\/windows-10-sicherheitsrisiken-durch-linux-kernel\/\">Windows 10: Sicherheitsrisiken durch Linux-Kernel<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Microsoft f\u00fchrt ja in dem im Sommer 2016 erwarteten Windows 10 Anniversary ein Linux-Subsystem ein. Jetzt gibt es einige Details zu dessen Architektur.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[95,3694],"tags":[4305,4965,4378],"class_list":["post-176845","post","type-post","status-publish","format-standard","hentry","category-linux","category-windows-10","tag-linux","tag-subsystem","tag-windows-10"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/176845","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/comments?post=176845"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/176845\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=176845"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=176845"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=176845"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}