{"id":194760,"date":"2017-10-03T00:39:00","date_gmt":"2017-10-02T22:39:00","guid":{"rendered":"http:\/\/www.borncity.com\/blog\/?p=194760"},"modified":"2022-07-05T16:06:12","modified_gmt":"2022-07-05T14:06:12","slug":"windows-10-update-fehler-0xc0000017-ramdisk","status":"publish","type":"post","link":"https:\/\/borncity.com\/blog\/2017\/10\/03\/windows-10-update-fehler-0xc0000017-ramdisk\/","title":{"rendered":"Windows 10 Update-Fehler 0xc0000017 (RAMdisk Speicherplatzmangel)"},"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\" \/>[<a href=\"https:\/\/borncity.com\/win\/2017\/10\/06\/windows-10-update-error-0xc0000017-no-ramdisk-memory\/\" target=\"_blank\" rel=\"noopener\">English<\/a>]Manche Nutzer von Windows 10 (aber auch von Windows 8.1) laufen in einen unsch\u00f6nen Fehler. Nach Installation eines Updates bootet Windows nicht mehr und wirft den Fehlercode 0xc0000017. Zeit, einen Blick auf die Sachlage zu werfen und eine Erkl\u00e4rung der Hintergr\u00fcnde zu liefern.<\/p>\n<p><!--more--><\/p>\n<h2>Details des Fehlercodes 0xc0000017<\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ssl-vg03.met.vgwort.de\/na\/a77e59e27525411eb620e33977587b1e\" alt=\"\" width=\"1\" height=\"1\" \/>Der Fehler tritt auf, wenn Windows 10 (oder Windows 8.1) nach der Installation eines Updates wieder booten soll. Es erscheint ein blauer Bildschirm mit der folgenden Meldung:<\/p>\n<blockquote><p>F\u00fcr die Erstellung eines RAMDISK-Ger\u00e4tes nicht gen\u00fcgend Speicherplatz verf\u00fcgbar<br \/>\nFehlercode: 0xc0000017<\/p><\/blockquote>\n<p>Ich selbst war vor einiger Zeit bei der Installation einer Insider-Preview in der misslichen Lage, dass mir der folgende blaue Bildschirm angezeigt wurde. Hier die Meldung in Deutsch.<\/p>\n<p><img decoding=\"async\" title=\"Recovery-Fehler 0xc0000017\" src=\"https:\/\/i.imgur.com\/bkP6mz4.jpg\" alt=\"Recovery-Fehler 0xc0000017\" \/><\/p>\n<p>Je nach System kann auch die nachfolgende, englischsprachige Seite angezeigt werden.<\/p>\n<p><img decoding=\"async\" title=\"Recovery-Fehler 0xc0000017\" src=\"https:\/\/web.archive.org\/web\/20180222205057\/https:\/\/u14.imgup.net\/Errr1500221c7.jpg\" alt=\"Recovery-Fehler 0xc0000017\" \/><\/p>\n<p>Mein Versuch, zum Fehlertext noch etwas mehr mit Hilfe eines Error-Lockup-Tools herauszufinden, f\u00fchrte nicht wirklich weiter. Der Fehlercode 0xc0000017 steht f\u00fcr STATUS_NO_MEMORY &#8211; F\u00fcr den angegebenen Vorgang sind nicht gen\u00fcgend Quoten f\u00fcr virtuellen Speicher oder die Auslagerungsdatei vorhanden.<\/p>\n<h2>Die Fehlerursache erkl\u00e4rt<\/h2>\n<p>Statt jetzt mal schnell ein paar Befehle einzutippen, m\u00f6chte ich einige Hintergr\u00fcnde erl\u00e4utern. Das hilft m\u00f6glicherweise dem einen oder anderen Nutzer zu verstehen, was passiert ist.<\/p>\n<h3>Windows PE, Update-Installationen und RAM-Disks<\/h3>\n<p>Update-Installationen erfordern einen Neustart, da nur dann die w\u00e4hrend eines laufenden Windows blockierten Dateien ersetzt werden k\u00f6nnen. Dazu bootet ein sogenanntes Windows PE (PE steht f\u00fcr Preinstall Environment), in dessen Umgebung die ben\u00f6tigten Dateioperationen durchgef\u00fchrt werden. Ist diese Transaktion abgeschlossen, bootet die Maschine neu und das eigentliche Windows wird dann wieder hochgefahren.<\/p>\n<p>Windows PE wird aber in einer RAM-Disk geladen und ist dabei darauf angewiesen, dass eine bestimmte Anzahl an Speicherseiten zusammenh\u00e4ngend belegt werden k\u00f6nnen. Der Fehler 0xc0000017 tritt wohl bei dem Versuch auf, w\u00e4hrend des Bootvorgangs f\u00fcr die Windows PE-Umgebung eine RAM-Disk anzulegen. Das Problem dabei: Eigentlich m\u00fcsste noch gen\u00fcgend RAM vorhanden sein. Aber da scheint etwas zu scheitern. Auf <a href=\"https:\/\/www.easeus.de\/partitionieren-tipps\/den-windows-update-fehler-0xc0000017-beheben.html\" target=\"_blank\" rel=\"noopener\">dieser Webseite<\/a> gibt es eine 'geschredderte' Erkl\u00e4rung, die wohl durch einen automatischen \u00dcbersetzer entstanden ist. Es sind nicht mehr gen\u00fcgend zusammenh\u00e4ngende Speicherbl\u00f6cke vorhanden, um die RAM-Disk entsprechender Gr\u00f6\u00dfe einzurichten.<\/p>\n<p>Aber warum ist das eigentlich so? Zum Verst\u00e4ndnis hole ich mal ein wenig aus.<\/p>\n<h3>Predictive Failure Analysis (PFA) in Windows<\/h3>\n<p>In Windows gibt es einen Mechanismus, der ECC-Fehler im Speicher analysiert und das Betriebssystem vor der Verwendung fehlerhafter Speicherbl\u00f6cke im RAM sch\u00fctzen soll. Dazu hat Microsoft in der Windows Hardware Error Architecture (WHEA) eine Predictive Failure Analysis (PFA) Unterst\u00fctzung zur Erkennung von ECC (<a href=\"https:\/\/de.wikipedia.org\/wiki\/Speichermodul#Fehlererkennung_.28ECC.29\" target=\"_blank\" rel=\"noopener\">Error Correction Code<\/a>) Speicherfehlern implementiert.<\/p>\n<p>Dazu \u00fcberwacht WHEA die ECC-Werte von Speicherseiten, auf denen bereits ECC-Fehler entdeckt wurden. \u00dcbersteigt die Zahl der ECC-Speicherfehler einen Schwellwert w\u00e4hrend eines konfigurierbaren Zeitintervall, versucht WHEA die betreffende Speicherseite offline zu nehmen. Dazu wird die betreffende Speicherseite in der BCD-Datenbank (<a href=\"https:\/\/technet.microsoft.com\/en-us\/library\/85cd5efe-c349-427c-b035-c2719d4af778\" target=\"_blank\" rel=\"noopener\">BCD-Store<\/a>, <b>B<\/b>oot <b>C<\/b>onfiguration <b>D<\/b>ata Store) von Windows als fehlerhaft eingetragen.<\/p>\n<p>Das bedeutet also, dass im ung\u00fcnstigsten Fall im laufenden Betrieb oder durch fehlerhafte BCD-Eintr\u00e4ge (z.B. w\u00e4hrend des Updates) ziemlich viele fehlerhafte Speicherbl\u00f6cke markiert werden k\u00f6nnen. Beim Start kann Windows dann erkennen, dass die Speicherbank viele Fehler aufwies und vermeidet deren Verwendung f\u00fcr kritische Operationen, die im RAM-Speicher ausgef\u00fchrt werden m\u00fcssen. Das Ganze ist im Microsoft-Dokument <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows-hardware\/drivers\/whea\/predictive-failure-analysis--pfa-\" target=\"_blank\" rel=\"noopener\">Predictive Failure Analysis (PFA)<\/a> beschrieben.<\/p>\n<blockquote><p>An dieser Stelle ist nicht ganz klar, ob sich der ECC Wert auf das RAM oder die virtuelle Auslagerungsdatei bezieht. In folgendem Text nehme ich an, dass ECC-Fehler sich auf das RAM beziehen.<\/p><\/blockquote>\n<h3>Das BCD-Problem mit dem Bad Memory<\/h3>\n<p>Fakt ist, dass Windows keinen Mechanismus bereitstellt, um die einmal wegen zu vieler ECC-Fehler offline genommenen Speicherbl\u00f6cke wieder zu bereinigen.<\/p>\n<blockquote><p>Windows does not provide an automated mechanism for clearing this list from the BCD system store. When the failing system memory is replaced, a system administrator must clear this list manually by using the BCDEdit command-line tool. If the list is not cleared, Windows will continue to exclude the memory pages in the list from being used by the system, even if the failing memory modules have been replaced.<\/p><\/blockquote>\n<p>Das obige Zitat l\u00e4sst sich in <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows-hardware\/drivers\/whea\/persistence-of-pfa-results\" target=\"_blank\" rel=\"noopener\">diesem Microsoft-Dokument<\/a> nachlesen. Das hei\u00dft: Es kann durchaus sein, dass der RAM-Speicher fehlerfrei arbeitet, aber wegen aufgetretener ECC-Fehler offline genommen wurde. Es gilt also, den BCD-Store von diesen Eintr\u00e4gen zu bereinigen.<\/p>\n<h3>Bad Memory-Eintr\u00e4ge im BCD-Store bereinigen<\/h3>\n<p>Microsoft ist auch noch so freundlich, einen Verweis auf <a href=\"https:\/\/docs.microsoft.com\/en-us\/windows-hardware\/drivers\/whea\/how-to-manage-the-pfa-memory-list\" target=\"_blank\" rel=\"noopener\">dieses Dokument<\/a> mitzuliefern. Dort findet man den Hinweis, dass man eine administrative Eingabeaufforderung (<em>Als administrator ausf\u00fchren<\/em>) \u00f6ffnen und dann das Programm <em>bcdedit <\/em>verwenden kann. Mit der Anweisung:<\/p>\n<p><em>bcdedit \/enum {badmemory}<\/em><\/p>\n<p>lassen sich die Eintr\u00e4ge der fehlerhaften Speicherbl\u00f6cke anzeigen. Auf meinen Systemen habe ich nachgesehen, es sind keine fehlerhaften Speicherbl\u00f6cke notiert.<\/p>\n<p><img decoding=\"async\" title=\"RAM-Defekte auslesen\" src=\"https:\/\/i.imgur.com\/BjCH6aC.jpg\" alt=\"RAM-Defekte auslesen\" \/><\/p>\n<blockquote><p>Im EaseUS-Beitrag <a href=\"https:\/\/www.easeus.de\/partitionieren-tipps\/den-windows-update-fehler-0xc0000017-beheben.html\" target=\"_blank\" rel=\"noopener\">hier<\/a> wird <em>bcdedit \/enum all <\/em>als Befehl angegeben. Kann man gerne tun, bekommt dann einen ganzen Wust an Daten geliefert und muss sich den Abschnitt RAM-Defekte rausw\u00fchlen. Zeigt wieder einmal, dass man wissen sollte, was man tut.<\/p><\/blockquote>\n<p>Werden auf beim System RAM-Defekte aufgelistet, gilt es, den Fehlerspeicher zur\u00fcckzusetzen. Dies ist mit dem nachfolgenden Befehl m\u00f6glich.<\/p>\n<p><em>bcdedit \/deletevalue {badmemory} badmemorylist<\/em><\/p>\n<p>Beachtet, dass <em>badmemorylist<\/em> kein Platzhalter ist, der Befehl ist genau so wie angegeben einzutippen. Bei mir l\u00f6st der Befehl aber den nachfolgend gezeigten Fehler aus, weil keine Speicherfehler in der BCD-Datenbank eingetragen sind.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/i.imgur.com\/mo69LAy.jpg\" \/><\/p>\n<p>Ich habe dann als Gegenprobe in einem Testsystem einige Speicherbl\u00f6cke mit dem Befehl:<\/p>\n<p><em>bcdedit \/set\u00a0 {badmemory} badmemorylist 0xB7 0xB8<\/em><\/p>\n<p>als fehlerhaft markiert und dann die Abfrage sowie den Befehl zum L\u00f6schen eingegeben.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/i.imgur.com\/KvxYtAx.jpg\" \/><\/p>\n<p>Die Befehlssequenz ist in obigem Bild zu sehen. Der Befehl zum L\u00f6schen der Eintr\u00e4ge wird nun erfolgreich ausgef\u00fchrt.<\/p>\n<blockquote><p>Anmerkung: Mit dem Befehl <em>bcdedit \/set\u00a0 {badmemory} badmemorylist <\/em>lassen sich Speicherseiten sperren (<a href=\"https:\/\/superuser.com\/questions\/420051\/running-windows-with-defective-ram\" target=\"_blank\" rel=\"noopener\">siehe<\/a> und hier (gel\u00f6scht)). Die Bl\u00f6cke besitzen eine Gr\u00f6\u00dfe von 4 K, so dass man also ein System mit einem defekten Speicherriegel versuchsweise durch Blockieren der Speicherseiten 'reparieren' k\u00f6nnte. Das kann helfen, wenn sich Windows nicht installieren l\u00e4sst. Abh\u00e4ngig vom BIOS der Maschine kann es auch sein, dass die Option 'Memory Hole Remapping' deaktiviert werden muss (<a href=\"https:\/\/www.knuddelesel.de\/forum\/windows-10\/2457-win-10-upgrade-fehler-0xc0000017.html\" target=\"_blank\" rel=\"noopener\">siehe<\/a>).\u00a0 Aber das Feld ist nicht Gegenstand des Artikel.<\/p><\/blockquote>\n<p>Nach dem Zur\u00fccksetzen des BCD-Store sollte Windows wieder booten bzw. das Update installiert werden k\u00f6nnen.<\/p>\n<h2>Wie fixe ich das bei einem kaputten Windows?<\/h2>\n<p>Nun bleibt nach den Erl\u00e4uterungen der obigen Abschnitte die Frage: Wie kann ich das Problem mit Windows l\u00f6sen.<\/p>\n<h3>Windows kann noch booten<\/h3>\n<p>Der idealere Fall besteht darin, dass Windows zwar mit dem Fehler 0xc0000017 scheitert. Aber die Startreparatur bringt das System wieder dazu, zu booten. Dann meldet man sich an einem Benutzerkonto an, ruft eine administrative Eingabeaufforderung auf und gibt den Befehl:<\/p>\n<p><em>bcdedit \/deletevalue {badmemory} badmemorylist<\/em><\/p>\n<p>gem\u00e4\u00df meinen obigen Ausf\u00fchrungen zur Bereinigung der Fehlerliste im BCD-Store ein.<\/p>\n<h3>Windows bootet nicht mehr<\/h3>\n<p>Kommt man nicht mehr \u00fcber die nachfolgend angezeigte blaue Startseite hinaus und Windows beharrt darauf, dass man ein Recovery-Tool zur Reparatur ben\u00f6tigt?<\/p>\n<p><img decoding=\"async\" title=\"Recovery-Fehler 0xc0000017\" src=\"https:\/\/web.archive.org\/web\/20180222205057\/https:\/\/u14.imgup.net\/Errr1500221c7.jpg\" alt=\"Recovery-Fehler 0xc0000017\" \/><\/p>\n<p>Sie k\u00f6nnen dann versuchen, ob Sie \u00fcber die Funktionstaste F8 auf die Starteinstellungen zugreifen und dann \u00fcber die Reparaturoptionen auf die Eingabeaufforderung unter Windows PE zugreifen kann. Meist wird das aber nichts bringen, das Windows PE ja streikt. Dann bleibt eigentlich nur die Offline-Reparatur des BCD-Store.<\/p>\n<ol>\n<li>Booten Sie das Windows-System mit einem USB-Stick oder einer DVD, auf der ein Notfall-Windows oder ein Installationsabbild vorliegt, um \u00fcber die Computerreparaturoptionen in Windows PE zu gelangen.<\/li>\n<\/ol>\n<p>2. Dann f\u00fchren Sie die <em>bcdedit<\/em>-Befehle zur Reparatur im Offline-Modus in der Eingabeaufforderung aus.<\/p>\n<blockquote><p>Hinweise, wie man das System mit einem Installationsdatentr\u00e4ger \u00fcber die Computerreparaturoptionen in Windows PE bootet, finden sich in den nachfolgend verlinkten Beitr\u00e4gen und im Artikel <a href=\"https:\/\/borncity.com\/blog\/2017\/01\/07\/windows-10-defender-offline-scan-verursacht-bootschleife\/\">Windows 10: Defender Offline Scan verursacht Bootschleife<\/a>.<\/p><\/blockquote>\n<p>Die Syntax f\u00fcr <em>bcdedit<\/em> zum Zugriff auf den Offline-BCD-Store lautet dabei (<a href=\"https:\/\/technet.microsoft.com\/en-us\/library\/9343a08b-fd24-4bc2-82cb-085c170b8a2c?f=255&amp;MSPPError=-2147217396\" target=\"_blank\" rel=\"noopener\">siehe<\/a>):<\/p>\n<p><em>bcdedit \/enum all \/store &lt;full path and file name of store&gt;<\/em><\/p>\n<p>Bleibt noch die Frage, wo sich der BCD-Store findet. Windows erwartet die versteckte Systemdatei auf der aktiven Partition im Ordner <em>Boot<\/em>. Der Befehl k\u00f6nnte konkret unter einem Windows PE-Notfallsystem folgenderma\u00dfen lauten:<\/p>\n<p><em>bcdedit.exe \/deletevalue {badmemory} badmemorylist c:\\boot\\bcd<\/em><\/p>\n<p>Hier w\u00e4re das logische Laufwerk <em>c: <\/em>das Bootmedium. Zu beachten ist, dass Windows PE meist auf dem logischen Laufwerk X: l\u00e4uft. Das logische Laufwerk <em>c: <\/em>muss daher nicht unbedingt die Partition mit dem kaputten Windows BCD-Store sein. Man kann in der Eingabeaufforderung den Befehl <em>notepad.exe<\/em> eintippen.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/web.archive.org\/web\/20180222211602\/http:\/\/c64.imgup.net\/WinPE-Eing8aa3.jpg\" \/><\/p>\n<p>Im Fenster des Windows-Editors w\u00e4hlt man <em>Datei \/ \u00d6ffnen <\/em>gehen und stellt im Dialogfeld das Feld <em>Dateityp <\/em>auf \"Alle Dateien\" um. Dann hat man mit dem Dialogfeld <em>\u00d6ffnen <\/em>quasi einen Mini-Dateimanager, \u00fcber den man die Laufwerkwerke inspizieren kann. Dort l\u00e4sst sich pr\u00fcfen, wo das das logischen Laufwerk <em>System reserviert <\/em>und wo das Windows-Laufwerk zu finden ist.<\/p>\n<p>Der hier im Blog-Beitrag skizzierte Ansatz l\u00e4sst sich \u00fcbrigens nicht nur unter Windows 10, sondern von Windows 7 bis Windows 10 und auch unter Windows Server einsetzen.<\/p>\n<p>Erg\u00e4nzung: Es gibt immer wieder R\u00fcckmeldungen, dass der obige Hinweis nicht geholfen hat, weil es keine Fehler gab. Eine weitere M\u00f6glichkeit, die man probieren sollte: Einfach die BIOS-Einstellungen auf Werkseinstellungen (Default) zur\u00fccksetzen lassen.<\/p>\n<p><strong>\u00c4hnliche Artikel<br \/>\n<\/strong><a href=\"https:\/\/borncity.com\/blog\/2014\/12\/23\/tipp-windows-pe-booten-wenn-die-dvd-nicht-starten-will\/\">Tipp: In Windows PE booten, wenn die DVD nicht starten will<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2014\/08\/19\/rettungsanker-falls-windows-nicht-mehr-bootet\/\">Rettungsanker, falls Windows nicht mehr bootet<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2010\/12\/23\/first-aid-datenrettung-wenn-windows-7-versagt\/\">First Aid: Datenrettung, wenn Windows 7 versagt<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2013\/08\/29\/windows-pe-im-uefi-oder-bios-mode-booten\/\">Windows PE im UEFI- oder BIOS-Mode booten<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2013\/02\/20\/notfallhilfe-mit-windows-pe-falls-windows-8-nicht-startet\/\">Notfallhilfe mit Windows PE, falls Windows 8 nicht startet<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2012\/12\/08\/windows-pe-4-0-diese-programme-laufen\/\">Windows PE 4.0: Diese Programme laufen<\/a><br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2012\/12\/07\/i-windows-pe-reparaturdatentrger-erstellen\/\">Windows PE: Reparaturdatentr\u00e4ger erstellen<\/a> Teil 1<br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2012\/12\/08\/windows-pe-4-0-diese-programme-laufen\/\">Windows PE: Diese Programme sind verf\u00fcgbar<\/a> Teil 2<br \/>\n<a href=\"https:\/\/borncity.com\/blog\/2012\/12\/09\/iii-wiederherstellungslaufwerk-mit-win-re-erstellen\/\">Wiederherstellungslaufwerk mit Win RE erstellen<\/a> Teil 3<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[English]Manche Nutzer von Windows 10 (aber auch von Windows 8.1) laufen in einen unsch\u00f6nen Fehler. Nach Installation eines Updates bootet Windows nicht mehr und wirft den Fehlercode 0xc0000017. Zeit, einen Blick auf die Sachlage zu werfen und eine Erkl\u00e4rung der &hellip; <a href=\"https:\/\/borncity.com\/blog\/2017\/10\/03\/windows-10-update-fehler-0xc0000017-ramdisk\/\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3694],"tags":[6547,4315,4378,4366],"class_list":["post-194760","post","type-post","status-publish","format-standard","hentry","category-windows-10","tag-fehler-0xc0000017","tag-update","tag-windows-10","tag-windows-8-1"],"_links":{"self":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/194760","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=194760"}],"version-history":[{"count":0,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/posts\/194760\/revisions"}],"wp:attachment":[{"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/media?parent=194760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/categories?post=194760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/borncity.com\/blog\/wp-json\/wp\/v2\/tags?post=194760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}