Premetto che la domanda può essere stupida... Un sistema operativo, non dotato di un driver di un dispositivo, attraverso una complessa IA può arrivare a riconoscere il driver del dispositivo?
Si o no? Perché?
Grazie per la spiegazione!
Premetto che la domanda può essere stupida... Un sistema operativo, non dotato di un driver di un dispositivo, attraverso una complessa IA può arrivare a riconoscere il driver del dispositivo?
Si o no? Perché?
Grazie per la spiegazione!
Non ci vuole chissà che IA... ogni dispositivo è contraddistinto da Vendor ID e Product ID (una coppia di interi a 16 bit), che dovrebbero contraddistinguere in maniera univoca il tipo di dispositivo (o quantomeno, il suo chip di interfacciamento al resto del PC). Noto questo identificativo è possibile in linea di principio verificare se un driver va bene (i driver in effetti nel file .INF e .CAT specificano quali VID e PID supportano) e, avendo a disposizione un database di driver (come Windows Update), è possibile ricercare un driver adatto.
Quello che ovviamente non è possibile è che il computer si possa inventare "dal nulla" un driver per una periferica, visto che a priori non c'è nulla che gli dica come questa si aspetta di essere pilotata (e tentare a caso - ammesso che ci fosse un modo universale) può benissimo causare danni all'hardware.
Amaro C++, il gusto pieno dell'undefined behavior.
È questo quello che volevo sapere, dunque se il sistema operativo accede ad un interrupt e verifica i segnali casualmente rischia di romperle fisicamente il dispositivo. Non esiste una regola che definisce come viene 'inventato' l'hardware anche perché dipende dal OS! Dunque senza specifiche tecniche e dove può funzionare, il software non è in grado di riconoscerlo. Dico bene?
Amaro C++, il gusto pieno dell'undefined behavior.
Daccordo non serve chissà quale IA.
L'hardware sotto windows avviene tramite ciò che viene definito come HAL, e in effetti esiste una dll sotto winwows che prende il nome di HAL.DLL, ovvero microsoft nella sua immensita e spreco di dati (questa volta giustificato) interroga l'Hardware Abstraction Layer per definire quali periferiche siano o meno connesse ad un pc.
Ma una cosa è l'interrogazione e la sua astrazione, un'altra è il livello dei voltaggi che passano attraverso la scheda madre, usb e slot di vario tipo che sono invece definiti come standard a livello internazionale.
Per questo motivo non c'è rischio di bruciare nulla interrogando l'hardware. Gli interrupt di 20 anni fa ormai non eistono più, se ci provi windows ti blocca subito. Ora addirittura esiste DOT NET che introduce un nuovo livello di astrazione rispetto all'intero SO per questo tu puoi sviluppare il tuo software solo fin dove windows, e i suoi bug, ti permettono.
Per dovere di cronaca dirò che appunto 20-25 anni fa, quando i virus erano software seri, sviluppati in ASM e programmati da veri programmatori con le OO esisteva un virus che faceva letteralmente sbattere a fine costa le testine di HD e floppy disk con conseguente danneggiamento hardware. Invece, sempre per dovere di cronaca, molti informatici-linuxari della prima ora bruciarono le schede grafiche grazie ad impostazioni spinte sulle frequenze di refresh che veniva chiesta proprio durante l'instalazione di linux.
Sempre per dovere di cronaca dirò che spesso le incompatibilità tra elaboratori e moduli di memoria, piuttosto che VGA, che trovi in commercio e i pc, cosidetti "di marca", sono da imputare al fatto che i produttori di pc per "fidelizzare il cliente" tendono a non rispettare esattamente questi standard.
Ecco che la ram se la vuoi la compri da loro e così tutto il resto. Non è dato sapere se questo difetto sia richiesto, o inserito non volutamente in fabbrica.
In ogni caso evviva l'OEM.
A parte tutto questo oggigiono puoi stare tranquillo, per quel che è la mia esperienza posso dirti che non si brucia nulla a meno che tu non lasci strati di polvere, che spesso prendono la forma di veri e propri a tappeti di muschio, tra i contatti dei tuoi condensatori o sulla PCB in generale.
Può se ne esiste uno compatibile ma questo può non fuznionare bene e dare problemi di varia entità