Controllo bug 0x7B: INACCESSIBLE_BOOT_DEVICE
Il controllo dei bug INACCESSIBLE_BOOT_DEVICE ha un valore pari a 0x0000007B. Questo controllo di bug indica che il sistema operativo Microsoft Windows ha perso l'accesso alla partizione di sistema durante l'avvio.
Importante
Questo articolo è destinato ai programmatori. Se si è un cliente che ha ricevuto un codice di errore della schermata blu durante l'uso del computer, vedere Risolvere gli errori della schermata blu.
Parametri
Parametro | Descrizione |
---|---|
1 | Indirizzo di una struttura di UNICODE_STRING o dell'indirizzo dell'oggetto dispositivo che non è stato possibile montare |
2 | 0 |
3 | 0 |
4 | 0 |
Per determinare il significato del parametro 1, esaminare i dati a cui punta. Se la prima parola (USHORT) in questo indirizzo è pari, il parametro 1 è l'inizio di una stringa Unicode. Se la prima parola (USHORT) in questo indirizzo è 0x3, il parametro 1 è il primo campo (Tipo) di un oggetto dispositivo.
Se questo parametro punta a un oggetto dispositivo, il file system che doveva leggere il dispositivo di avvio non è riuscito a inizializzare o non ha riconosciuto i dati nel dispositivo di avvio come struttura del file system. In questo caso, l'oggetto dispositivo specificato è l'oggetto che non è stato possibile montare.
Se questo parametro punta a una stringa Unicode, è necessario leggere i primi 8 byte in questo indirizzo. Questi byte formano la struttura UNICODE_STRING. Nell'esempio seguente viene illustrato come viene definita la struttura:
USHORT Length; USHORT MaximumLength; PWSTR Buffer;
Il campo Lunghezza restituisce la lunghezza effettiva della stringa. Il campo Buffer punta all'inizio della stringa. Il buffer è sempre almeno 0x80000000.
La stringa contiene il nome della specifica ADVANCED RISC Computing (ARC) del dispositivo da cui è stato tentato l'avvio. I nomi ARC sono un modo generico per identificare i dispositivi nell'ambiente ARC.
Causa
Il controllo dei bug INACCESSIBLE_BOOT_DEVICE si verifica spesso a causa di un errore del dispositivo di avvio. Durante l'inizializzazione del sistema di I/O, il driver del dispositivo di avvio potrebbe non essere riuscito a inizializzare il dispositivo di avvio, in genere un disco rigido.
L'inizializzazione del file system potrebbe non essere riuscita perché non riconosce i dati nel dispositivo di avvio. Anche la partizione di sistema, la modifica della configurazione del BIOS o l'installazione di un controller del disco possono causare questo errore.
Questo errore può verificarsi a causa dell'hardware del disco non compatibile. Se si è verificato l'errore durante l'installazione iniziale del sistema, il sistema potrebbe essere stato installato in un controller disco non supportato. Alcuni controller del disco richiedono che altri driver siano presenti all'avvio di Windows.
Questo errore può verificarsi quando l'hardware di archiviazione non è riuscito e non è in grado di rispondere alla richiesta da Windows.
Risoluzione
Questo errore si verifica sempre durante l'avvio del sistema. Questo errore si verifica spesso prima che venga stabilita la connessione al debugger, pertanto il debug può essere difficile. Il sistema operativo potrebbe non essere accessibile e i log degli errori potrebbero essere vuoti, perché il sistema operativo non è stato avviato abbastanza per avviare tali sottosistemi. Le sezioni seguenti illustrano le risoluzioni per entrambe le situazioni, se non è possibile avviare Windows e se è possibile avviare Windows.
Se non è possibile avviare Windows
Se si riceve questo codice di arresto e Windows non viene avviato in avanti nel sistema operativo, provare le risoluzioni seguenti:
Ripristinare eventuali modifiche hardware recenti.
Rimuovere qualsiasi hardware aggiunto di recente, in particolare unità disco rigido o controller, per verificare se l'errore è stato risolto. Se l'hardware problematico è un'unità disco rigido, la versione del firmware del disco potrebbe non essere compatibile con la versione del sistema operativo Windows. Contattare il produttore per gli aggiornamenti. Se è stata rimossa un'altra parte di hardware e l'errore viene risolto, potrebbero esistere conflitti di porta IRQ o I/O. Riconfigurare il nuovo dispositivo in base alle istruzioni del produttore.
Se di recente sono state apportate modifiche alle impostazioni UEFI (BIOS), ad esempio la modifica della modalità controller da legacy a AHCI in UEFI, ripristinare tali modifiche. Per altre informazioni, vedere Interfaccia avanzata del controller host.
Verificare la compatibilità dei dispositivi di archiviazione.
Verificare che tutti i driver del disco rigido, i controller disco rigido e qualsiasi altra scheda di archiviazione siano compatibili con la versione installata di Windows. Ad esempio, è possibile ottenere informazioni sulla compatibilità in Windows 10 specifiche.
Aggiornare UEFI (BIOS) e firmware.
Controllare la disponibilità degli aggiornamenti per il sistema UEFI (BIOS) e il firmware del controller di archiviazione.
Usa lo strumento di creazione di Windows Media per creare un'unità usb o un DVD avviabile.
Usare lo strumento di creazione di supporti in un altro computer per creare un'unità usb o un DVD di avvio. Usare questo strumento per eseguire un'installazione pulita selezionando il file di installazione o l'avvio da USB.
Per altre informazioni, vedere Aggiornamento a Windows 10.
Potrebbe essere necessario disabilitare le funzionalità o modificare la priorità della sequenza di avvio nel menu UEFI (BIOS) per l'avvio da USB, FDD (FlashDiskDrive) o DVD invece di HDD.
Tasti di menu di avvio comuni
I tasti del menu di avvio variano in base al produttore. Queste chiavi vengono comunemente usate. Controllare la documentazione del PC per determinare quale chiave di avvio viene usata.
I tasti di menu di avvio usati di frequente sono:
F12
ESC
F9
F10
F8Chiavi di configurazione UEFI (BIOS) comuni
Le chiavi di installazione UEFI (BIOS) variano in base al produttore. Queste chiavi vengono comunemente usate. Controllare la documentazione del PC per determinare quale chiave di configurazione viene usata.
Le chiavi di installazione UEFI (BIOS) usate di frequente sono:
ESC
DEL
F2
Se si è in grado di avviare Windows
Se ricevi questo codice di arresto e Windows esegue l'avvio, prova le soluzioni seguenti:
Avviare la modalità provvisoria e quindi avviarsi normalmente.
L'avvio in modalità provvisoria carica un set di core di driver di archiviazione che consente di accedere nuovamente al sistema di archiviazione. Completare i passaggi seguenti per eseguire l'avvio in modalità provvisoria:
- In Impostazioni selezionare Aggiorna e sicurezza.
- Selezionare Ripristino > avvio avanzato per avviare la modalità di manutenzione.
- Nel menu risultante scegliere Risolvere i problemi > delle impostazioni di avvio delle > opzioni > avanzate Riavvia.
- Dopo il riavvio di Windows nella schermata Impostazioni di avvio , selezionare l'opzione 4, 5 o 6 per l'avvio in modalità provvisoria.
Dopo il caricamento di Windows in modalità provvisoria, riavviare il PC per verificare se i driver di archiviazione appropriati vengono caricati e che il dispositivo di archiviazione viene riconosciuto.
La modalità provvisoria potrebbe essere disponibile anche premendo un tasto funzione all'avvio, ad esempio F8. Fare riferimento alle informazioni del produttore del sistema per opzioni di avvio specifiche.
Usare l'utilità di analisi del disco per verificare che non siano presenti errori del file system. Selezionare e tenere premuto (o fare clic con il pulsante destro del mouse) sull'unità da analizzare e selezionare Strumenti > proprietà > Controlla ora.
Eseguire un programma di rilevamento virus. I virus possono infettare tutti i tipi di dischi rigidi formattati per Windows e il danneggiamento del disco risultante può generare codici di controllo dei bug di sistema. Assicurarsi che il programma di rilevamento virus controlli il record di avvio master per le infezioni.
Per i dispositivi IDE, definire la porta IDE di onboarding solo come primaria. Controllare anche ogni dispositivo IDE per l'impostazione master/subordinata/autonoma appropriata. Provare a rimuovere tutti i dispositivi IDE, ad eccezione dei dischi rigidi. Infine, controllare l'accesso al sistema Visualizzatore eventi per altri messaggi di errore che potrebbero aiutare a identificare il dispositivo o il driver che causa l'errore.
Verificare che sul disco rigido sia disponibile spazio sufficiente. Il sistema operativo e alcune applicazioni richiedono spazio libero sufficiente per creare file di scambio ed eseguire altre funzioni. In base alla configurazione del sistema, il requisito esatto varia, ma è consigliabile avere il 10% al 15% dello spazio disponibile.
Cercare in Gestione dispositivi per verificare se i dispositivi sono contrassegnati con il punto esclamativo (!). Esaminare il log eventi visualizzato nelle proprietà del driver per un driver di errore. Provare ad aggiornare il driver correlato.
Controllare l'Visualizzatore eventi Di accesso di sistema per altri messaggi di errore che potrebbero aiutare a individuare il dispositivo o il driver che causa l'errore. Per altre informazioni, vedere Aprire Visualizzatore eventi. Cercare errori critici nel log di sistema che si è verificato nello stesso intervallo di tempo dello schermo blu.
È possibile provare a eseguire la diagnostica hardware fornita dal produttore del sistema.
Usare lo strumento Controllo file di sistema per ripristinare i file di sistema mancanti o danneggiati. Il controllo file di sistema è un'utilità in Windows che consente agli utenti di analizzare i danneggiamenti nei file di sistema di Windows e ripristinare i file danneggiati. Usare il comando seguente per eseguire lo strumento Controllo file di sistema (SFC.exe).
SFC /scannow
Per altre informazioni, vedere Usare lo strumento Controllo file di sistema per ripristinare i file di sistema mancanti o danneggiati.
Dopo il ripristino automatico, nella schermata Scegli un'opzione selezionare Risolvere i problemi > di Ripristino di sistema opzioni > avanzate. Questa opzione restituisce il PC a un momento precedente, denominato punto di ripristino del sistema. I punti di ripristino vengono generati quando si installa una nuova app, un driver, un aggiornamento o quando si crea un punto di ripristino manualmente. Scegliere un punto di ripristino prima di aver riscontrato l'errore.
Usare il debugger del kernel per collegare il sistema e analizzare ulteriormente l'errore come descritto nelle osservazioni.
Commenti
Esaminare la configurazione del sistema di archiviazione.
Per restringere una causa, è utile conoscere il più possibile sul dispositivo di avvio installato in Windows. Ad esempio, è possibile analizzare gli elementi seguenti:
Scopri il tipo di controller a cui è connesso il dispositivo di avvio, ad esempio SATA o IDE. Se è possibile avviare il sistema, è possibile usare gestione dispositivi per esaminare le proprietà del driver del controller e del disco. È possibile visualizzare gli eventi di errore e file di driver associati.
Indica se altri dispositivi sono collegati allo stesso controller in cui è attivo il dispositivo di avvio, ad esempio SSD o DVD.
Si noti che il file system usato nell'unità, in genere NTFS.
Debugger Windows
Per analizzare questo errore usando il debugger del kernel, eseguire un comando lm (Elenchi moduli caricati) nel debugger per vedere quali moduli vengono caricati per tentare di isolare il driver specifico. Verificare che i driver seguenti siano stati caricati.
Disco
0: kd> lm m disk
Browse full module list
start end module name
fffff806`bd0b0000 fffff806`bd0cd000 disk (deferred)
partmgr
0: kd> lm m partmgr
Browse full module list
start end module name
fffff806`bc5a0000 fffff806`bc5c1000 partmgr (deferred)
NTFS
0: kd> lm m ntfs
Browse full module list
start end module name
fffff806`bd3f0000 fffff806`bd607000 NTFS (deferred)
classpnp
0: kd> lm m classpnp
Browse full module list
start end module name
fffff806`bd0d0000 fffff806`bd131000 CLASSPNP (deferred)
Pci
0: kd> lm m pci
Browse full module list
start end module name
fffff806`bc440000 fffff806`bc494000 pci (deferred)
Assicurarsi che i driver del controller vengano caricati. Ad esempio, per un controller RAID SATA, il driver potrebbe essere il driver iaStorA.Sys oppure potrebbe essere il driver EhStorClass .
0: kd> lm m EhStorClass
Browse full module list
start end module name
fffff806`bcbb0000 fffff806`bcbcb000 EhStorClass (deferred)
I driver che contengono "stor", ad esempio storahci, potrebbero essere presenti.
0: kd> lm m stor*
Browse full module list
start end module name
fffff806`bcb00000 fffff806`bcb23000 storahci (deferred)
fffff806`bcb30000 fffff806`bcbaa000 storport (deferred)
fffff806`c0770000 fffff806`c0788000 storqosflt (deferred)
Avviare con un debugger collegato.
Se è possibile avviare il sistema di destinazione con un debugger connesso, problema !devnode 0 1 quando si verifica il controllo dei bug. È possibile vedere quale dispositivo manca di un driver o non inizia e il motivo per cui non si avvia potrebbe essere evidente.
Una causa potrebbe essere che Plug and Play non è possibile assegnare risorse al dispositivo di avvio. È possibile verificare questa restrizione trovando una voce per il servizio. Se i flag di stato includono DNF_INSUFFICIENT_RESOURCES o non includono DNF_STARTED o DNF_ENUMERATED, potrebbe verificarsi il problema. Provare !devnode 0 1 storahci
a risparmiare tempo, invece di scaricare l'intero albero del dispositivo.
0: kd> !devnode 0 1 storahci
Dumping IopRootDeviceNode (= 0xffffb9053d94d850)
DevNode 0xffffb9053e8dea50 for PDO 0xffffb9053e8da060
InstancePath is "PCI\VEN_8086&DEV_3B22&SUBSYS_304A103C&REV_05\3&21436425&0&FA"
ServiceName is "storahci"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xffffb9053e88db30 for PDO 0xffffb9053e890060
InstancePath is "SCSI\Disk&Ven_&Prod_ST3500418AS\4&23d99fa2&0&000000"
ServiceName is "disk"
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)
DevNode 0xffffb9053e88d850 for PDO 0xffffb9053e88e060
InstancePath is "SCSI\CdRom&Ven_hp&Prod_DVD-RAM_GH60L\4&23d99fa2&0&010000"
ServiceName is "cdrom"
TargetDeviceNotify List - f 0xffffdf0ae9bbb0e0 b 0xffffdf0aea874710
State = DeviceNodeStarted (0x308)
Previous State = DeviceNodeEnumerateCompletion (0x30d)