Astratto
Come altri hanno indicato, la Fnchiave è un caso speciale gestito internamente. Fornirò la spiegazione tecnica.
Dettagli tecnici
Quando si preme un tasto su una tastiera, il controller della tastiera (un piccolo chip IC all'interno della tastiera) rileva il circuito elettrico e lo elabora per decodificare quale tasto è stato premuto, quindi invia lo scancode alla scheda madre. Il sistema operativo riceve scancode dal BIOS e quindi esegue qualsiasi azione necessaria per elaborare quel tasto premuto.
Con la maggior parte dei tasti, questo è abbastanza semplice. Se si preme il Atasto, il controller della tastiera invia lo scancode alla scheda madre, che poi lo passa al sistema operativo che a sua volta di solito stampa 'A'. (Se il sistema operativo rileva che uno dei tasti modificatori è attualmente tenuto premuto, è possibile che faccia qualcosa di diverso. In effetti, è possibile configurarlo per fare quello che si desidera quando Asi preme il tasto con o senza modificatori.)
Ora la Fnchiave è speciale. Quando lo premi da solo, non succede nulla perché è esclusivamente un tasto modificatore e non è (generalmente) destinato a fare nulla da solo. Quando lo tieni premuto e premi un altro tasto, il controller della tastiera lo rileva e cerca nella sua tabella incorporata per vedere se è una combinazione nota. Se la combo non è nella tabella, la ignora e basta, ma se la combo è nella tabella, cerca lo scancode associato e lo invia.
Cosa finisce per vedere il sistema operativo? Essa non vedere lo scancode per la Fnchiave e la scancode per l'altra chiave. Invece, vede un singolo scancode associato a qualunque funzione sia stata impostata la combo Fn. Ad esempio, se il produttore del laptop ha impostato la combo Fn+ Down Arrowper ridurre il volume, il sistema operativo vede lo scancode associato al Volume Down, che alcune tastiere hanno effettivamente.
Applicazione
Quindi come spiega perché tenere premuto Fnil portatile e premere un tasto su una tastiera esterna non funziona? Semplice, perché la tastiera del laptop e quella esterna hanno i propri controller. Per quanto riguarda il controller nel laptop, hai premuto e rilasciato il Fntasto e per quanto riguarda il controller in quello esterno, hai premuto e rilasciato l'altro tasto. Cosa vede il sistema operativo? Vede che hai premuto solo l'altro tasto senza alcun modificatore.
Dimostrazione
Puoi vedere che la Fngestione delle chiavi è speciale con un semplice test. Collega due tastiere esterne a un laptop (dandoti così tre tastiere). Tenere premuto il Ctrltasto su una tastiera, il Shifttasto su un'altra, quindi premere il Escapetasto sulla terza. Dovrebbe apparire il Task Manager di Windows. Perché? Perché Windows ha ricevuto gli scancodes per tutti e tre i tasti, uno da ciascuno dei tre controller delle tastiere. (Questo è stato un esempio di Windows, ma premendo le combinazioni di tasti in questo modo dovrebbe funzionare lo stesso in altri sistemi operativi. Ad esempio, anche in DOS, è possibile riavviare il sistema premendo Ctrl+ Alt+ Deletesu tastiere diverse.)
Nota
Nota: le informazioni su come Fnviene appositamente elaborato e le limitazioni risultanti sul suo utilizzo sono solo generali, basate su implementazioni comuni. Non c'è nulla che impedisca a un produttore di laptop di decidere di implementarlo in modo diverso e consentire all'utente di rimappare la chiave ad un'altra funzione, fornire una Fnchiave emulata su tastiere esterne tramite un accordo specifico, ecc. In realtà, non esiste nemmeno uno standard ufficiale per la Fnchiave; la maggior parte dei produttori usa solo la stessa implementazione che altri hanno usato perché è più economica e cambiare ciò a cui gli utenti sono abituati di solito non è buono.