ITTO990960A1 - Sistema e metodo di accesso ad un mezzo leggibile tramite elaboratore. - Google Patents

Sistema e metodo di accesso ad un mezzo leggibile tramite elaboratore. Download PDF

Info

Publication number
ITTO990960A1
ITTO990960A1 IT1999TO000960A ITTO990960A ITTO990960A1 IT TO990960 A1 ITTO990960 A1 IT TO990960A1 IT 1999TO000960 A IT1999TO000960 A IT 1999TO000960A IT TO990960 A ITTO990960 A IT TO990960A IT TO990960 A1 ITTO990960 A1 IT TO990960A1
Authority
IT
Italy
Prior art keywords
partition
information
computer
response
processor
Prior art date
Application number
IT1999TO000960A
Other languages
English (en)
Inventor
Alan E Beelitz
Original Assignee
Dell Usa Lp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dell Usa Lp filed Critical Dell Usa Lp
Publication of ITTO990960A0 publication Critical patent/ITTO990960A0/it
Publication of ITTO990960A1 publication Critical patent/ITTO990960A1/it
Application granted granted Critical
Publication of IT1308871B1 publication Critical patent/IT1308871B1/it

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)

Description

DESCRIZIONE dell'invenzione industriale dal titolo: "SISTEMA E METODO DI ACCESSO AD UN MEZZO LEGGIBILE TRAMITE ELABORATORE",
TESTO DELLA DESCRIZIONE
Sfondo
Le descrizioni in questo contesto sono relative in generale a sistemi di elaborazione di informazioni e in particolare ad un sistema e un metodo di elaboratore per accedere ad un mezzo leggibile tramite elaboratore.
La presente domanda è relativa alla Domanda di brevetto statunitense anch’essa pendente con numero di serie 950.545, depositata il 15.10.1997, intitolata SYSTEM AND METHOD FOR UPDATING PARTITION MAPPINGS TO LOGICAL DRIVERS IN A COMPUTER MEMORY DEVICE, che cita Alan E. Beelitz come inventore. La domanda pendente è qui allegata per riferimento nella sua interezza, ed è assegnata al titolare della presente domanda.
La presente domanda è relativa alla Domanda di Brevetto statunitense anch’essa pendente con numero di sen e 012-196, depositata il 23.1.1998, intitolata SYSTEM AND METHOD FOR PREPARING A COMPUTER MEMORY, che cita Alan E. Beelitz come inventore. La domanda pendente è qui allegata per riferimento nella sua interezza, ed è assegnata al titolare della presente domanda.
La presente domanda è relativa alla Domanda di Brevetto statunitense anch'essa pendente con numero di serie _ ,_ , depositata contemporaneamente alla presente, intitolata COMPUTER SYSTEM AND METHOD FOR PREPARING A COMPUTER-READABLE MEDIUM, che cita Alan E. Beelitz come inventore. La domanda pendente è qui allegata per riferimento nella sua interezza, ed è assegnata al titolare della presente domanda.
Un elaboratore può comprendere un mezzo leggibile tramite elaboratore, quale un disco rigido. Sono stati creati programmi di elaboratore per accedere (cioè scrivere informazioni nel o leggere informazioni dal) ad un mezzo leggibile tramite elaboratore. Tuttavia, le tecniche precedenti di tali programmi non sono efficienti.
Una partizione è una unità di organizzazione logica all’interno di un mezzo leggibile tramite elaboratore. In un esempio, l'elaboratore forma una partizione su un disco rigido. Secondo una tecnica precedente, l'elaboratore viene re-inizializzato prima che l’elaboratore identifichi una rispettiva unità logica associata alla partizione appena formata e, di conseguenza, prima che l'elaboratore acceda alla partizione appena formata in risposta ad un comando indirizzato alla rispettiva unità logica.
Di conseguenza, si è avuta la necessità di un sistema di elaboratore ed un metodo per accedere ad un mezzo leggibile tramite elaboratore, in cui siano superati i vari problemi delle tecniche precedenti. Più in particolare, si è avuta la necessità di un sistema di elaboratore ed un metodo per accedere ad un mezzo leggibile tramite elaboratore, in cui l'efficienza aumenta rispetto alle tecniche precedenti.
L'invenzione
Una forma di attuazione, di conseguenza, prevede di dare inizio all'esecuzione di un software di sistema operativo da parte di un sistema di elaboratore. Dopo aver dato inizio all'esecuzione del software di sistema operativo, si informa una partizione all'interno di un mezzo leggibile da calcolatore. In risposta alla partizione, si formano informazioni che identificano una unità logica associata alla partizione, indipendentemente dal fatto che sia reiniziata l'esecuzione del software di sistema operativo.
Il vantaggio principale di questa forma di attuazione è che vengono superati vari problemi delle tecniche anteriori, e aumenta il rendimento rispetto alle tecniche anteriori.
Breve descrizione dei disegni
La Figura 1 è un diagramma a blocchi di un sistema di elaboratore secondo la forma di attuazione illustrativa.
La Figura 2 è una illustrazione concettuale di informazioni memorizzate da un disco rigido del sistema di elaboratore di Figura 1.
la Figura 3 è una illustrazione concettuale delle informazioni memorizzate all'interno di una tabella di allocazione di file di Figura 2;
la Figura 4 è una illustrazione concettuale di un dispositivo di memoria del sistema di elaboratore di Figura 1.
Le Figure 5a-b ("Figura 5") sono un diagramma di flusso del funzionamento del sistema di elaboratore di Figura 1.
La Figura 6 è una illustrazione concettuale di una versione alternativa delle informazioni memorizzate da un disco rigido del sistema di elaboratore di Figura 1.
La Figura 7 è una illustrazione concettuale delle informazioni memorizzate all'interno di una tabella di allocazione di file di Figura 6.
La Figura 8 è una illustrazione concettuale di un'altra versione alternativa delle informazioni memorizzate da un disco rigido del sistema di elaboratore di Figura 1.
La Figura 8 è un altro diagramma di flusso di funzionamento del sistema di elaboratore di Figura 1.
Descrizione dettagliata
La Figura 1 è un diagramma a blocchi di un sistema di elaboratore, indicato in.generale con il 100, secondo la forma di attuazione illustrativa. Il sistema 100 comprende dispositivi di ingresso 104, un dispositivo di visualizzazione 106, un dispositivo di stampa 108 ed un elaboratore 102 per eseguire processi ed effettuare operazioni (ad esempio informazioni di comunicazione) in risposta ad essi come discusso ulteriormente più avanti. Nella forma di attuazione illustrativa, l’elaboratore 102 è un elaboratore personale ("PC") IBM compatibile che esegue il software di sistema operativo Microsoft Windows 95. Tutti i prodotti Microsoft qui identificati sono disponibili dalla Microsoft Corporation, One Microsoft Way, Redmond, WA 98052-6399, telefono: (425) 882-8080.
L'elaboratore 102 è connesso al dispositivo di ingresso 104, al dispositivo di visualizzazione 102 e al dispositivo di stampa 108. Il dispositivo di visualizzatore 106 è, per esempio, un tubo elettronico a raggi catodici convenzionale. Il dispositivo di stampa 108 è, per esempio, una stampante elettronica o un plotter convenzionale. Inoltre l'elaboratore 102 comprende altoparlanti interni per inviare in uscita segnali audio. In una forma di attuazione alternativa, gli altoparlanti sono esterni all'elaboratore 102. Inoltre, il sistema 100 comprende un mezzo (o apparecchio) 110 leggibile tramite elaboratore, quale un dischetto di elaboratore floppy e/o un disco rigido di elaboratore.
Un utente umano 112 e l'elaboratore 102 operano in associazione uno con l'altro. Per esempio, in risposta ai segnali dall'elaboratore 102, il dispositivo di visualizzazione 106 visualizza immagini visive, e l'utente 112 vede tali immagini visive. Inoltre, in risposta al segnale dall'elaboratore 102, il dispositivo di stampa 108 stampa immagini visive su carta, e l'utente 112 vede tali immagini visive. Inoltre, l'utente 112 attiva i dispositivi di ingresso 104 allo scopo di inviare in uscita informazioni all'elaboratore 102 e l'elaboratore 102 riceve tali informazioni dai dispositivi di ingresso 104.
I dispositivi di ingresso 104 comprendono, per esempio, una tastiera elettronica convenzionale ed un dispositivo di puntamento quale un "mouse" elettronico, una sfera rotolante o una penna luminosa convenzionale. L'utente 112 attiva la tastiera per inviare in uscita informazioni di testo alfanumerico all'elaboratore 102, e l'elaboratore 102 riceve tali informazioni di testo alfanumerico dalla tastiera. L'utente 112 attiva il dispositivo di puntamento per inviare in uscita informazioni di controllo di cursore all'elaboratore 102, e l'elaboratore 102 riceve tali informazioni di controllo di cursore dal dispositivo di puntamento.
II mezzo 110 leggibile tramite elaboratore e l'elaboratore 102 sono intercorrelati strutturalmente e funzionalmente uno con l'altro come descritto ulteriormente più avanti. Il mezzo 110 leggibile tramite elaboratore memorizza (ad esempio codifica, registra o realizza) materiale descritto funzionale (ad esempio compreso ma non limitato a programmi di elaboratore (chiamati anche software o applicazioni e strutture di informazioni)). Tale materiale descrittivo funzionale impartisce una funzionalità quando è codificato sul mezzo 110 leggibile tramite elaboratore. inoltre, tale materiale descrittivo funzionale è intercorrelato strutturalmente e funzionalmente con il mezzo 110 leggibile tramite elaboratore .
Nell'ambito di tale materiale descrittivo funzionale, le strutture di informazioni definiscono inter-relazioni strutturali e funzionali tra tali strutture di informazioni e il mezzo 110 è leggibile tramite elaboratore (e altri aspetti del sistema 100). Tali interrelazioni permettono di realizzare la funzionalità delle strutture di informazioni. Inoltre, nell'ambito di tale materiale descrittivo funzionale, i programmi di elaboratore definiscono interrelazioni strutturali e funzionali tra tali programmi di elaboratore e il mezzo 110 leggibile tramite elaboratore (e altri aspetti del sistema 100). Tali interrelazioni permettono di realizzare la funzionalità dei programmi di elaboratore.
Per esempio, l'elaboratore 102 legge (ad esempio carica, accede o copia) tale materiale descrittivo funzionale in un dispositivo dì memoria di elaboratore (ad esempio una memoria ad accesso casuale ("RAM") dell'elaboratore 102, e l'elaboratore 102 esegue le sue operazioni (come descritto altrove in questo contesto) in risposta a tale materiale che è memorizzato in tale dispositivo di memoria. Più in particolare, l'elaboratore 102 esegue l'operazione di elaborare (ad esempio eseguire) una applicazione di elaboratore (che è memorizzata, codificata, registrata o realizzata su un. mezzo leggibile tramite elaboratore) per far sì che l'elaboratore 102 esegua operazioni aggiuntive (come descritto altrove in questo contesto). Di conseguenza, tale materiale descrittivo funzionale presenta un'interrelazione funzionale con il modo in cui l'elaboratore 102 esegue i suoi processi ed effettua le sue operazioni.
Inoltre, il mezzo 110 leggibile tramite elaboratore è un apparecchio da cui l'applicazione di elaboratore è accessibile tramite l'elaboratore 102, e l'applicazione dell'elaboratore è processabile dall'elaboratore 102 per far sì che l'elaboratore 102 esegua tali operazioni aggiuntive. In aggiunta a leggere tale materiale descrittivo funzionale dal mezzo 110 leggibile tramite elaboratore, l'elaboratore 102 è in grado di leggere tale materiale descrittivo funzionale da (o attraverso) una rete di elaboratore 114 che è un altro tipo di mezzo (o apparecchio) leggibile tramite elaboratore. Inoltre, il dispositivo di memoria di elaboratore stesso è un mezzo (o apparecchio) leggibile tramite elaboratore.
La Figura 2 è una illustrazione concettuale delle informazioni, indicate in generale con il 200, memorizzate da un disco rigido del mezzo 110 leggibile tramite elaboratore. Un controllore di unità dell'elaboratore 102 invia,in uscita segnali al disco rigido del mezzo 110 leggibile tramite elaboratore, e il disco rigido memorizza tali informazioni in risposta a tali segnali. Tali informazioni comprendono un record di boot master MBR, come illustrato in Figura 2.
Secondo l'architettura di elaboratori personali ("PC") IBM compatibili, il MBR è il primo settore (cilindro 0, testa -0, settore 1) sul disco rigido del mezzo 110 leggibile tramite elaboratore. Un settore è l'unità di memoria più piccola singolarmente indirizzabile su un disco rigido. Secondo l'architettura degli elaboratori personali {"PC") IBM compatibili, i dischi rigidi hanno una dimensione di settore di 512 byte. Di conseguenza, nella forma di attuazione illustrativa, nella misura in cui l'elaboratore 102 forma (ad esempio crea o modifica) una partizione sul disco rigido, l'elaboratore 102 definisce la partizione lungo limiti di cilindro. Un cilindro è una unità di organizzazione su un disco rigido che è uguale al numero di test di lettura/scrittura moltiplicato per il numero di settori per testa moltiplicato per il numero di byte per settore.
Il MBR comprende istruzioni di inizializzazione BI ed una tabella di partizione master MPT per gestire la memoria su disco. Secondo l'architettura di elaboratori personali ("PC") IBM compatibili, la MPT comprende quattro inserimenti di tabella di partizione, cioè PTE1, PTE2, PTE3 e PET4. Un inserimento di tabella di partizione PTEx (dove x = 1, 2, 3 o 4) comprende informazioni che descrivono una dimensione, la posizione e il tipo (esteso, file System di nuova tecnologia ("NTFS"), tabella di allocazione di file ("FAT") a 16 bit o 32 bit, primario o utilità) di una partizione Px associata a tali PTEx.
Ogni inserimento di tabella di partizione PTEx comprende un rispettivo indicatore di "attivo". Il controllore di unità dell'elaboratore 102 invia in uscita segnali al disco rigido del mezzo 110 leggibile tramite elaboratore, cosicché un massimo di uno solo dei quattro inserimenti di tabella di partizione (PTEx) è contrassegnato come "attivo" in qualsiasi particolare momento (cioè soltanto un massimo di uno dei quattro indicatori "attivi" è posto ad uno stato vero con un logico in qualsiasi particolare momento). Il BE comprende istruzioni per determinare se (e quale) uno degli inserimenti di' tabella di partizione PTEx è contrassegnato come "attivo".
Nell'esempio di Figura 2, il disco rigido del mezzo 110 leggibile tramite elaboratore comprende le partizioni PI e P2. La partizione PI comprende un record di boot di partizione PBRl, una tabella di allocazione di file FATI, una directory radice RD1, ed una regione di file FRI. La partizione T2 comprende un record di boot di partizione TBR2, una tabella di allocazione di file FAT2, una directory radice RD2, ed una regione di file FR2.
Con il software di sistema operativo, l'elaboratore 102 designa (ad esempio mappa o fa riferimento a) una partizione tramite una lettera di unità logica associata (ad esempio C: oppure A:) che identifica una rispettiva unità logica associata alla partizione. Con tale designazione, analogamente la partizione è associata alla rispettiva unità logica. Tuttavia, senza tale designazione, è possibile che una partizione non sia associata con una qualche unità logica.
Un elaboratore, quale l'elaboratore 102, viene "inizializzato" (o "reinizializzato") quando dà inizio all'esecuzione del software di sistema operativo (ad esempio Microsoft Windows) in risposta ad un evento ("evento di inizializzazione"). Tale evento di inizializzazione può essere, per esempio l'utente 112 che "accende" l'elaboratore 102 (ad esempio l'utente 112 che genera l'applicazione di energia all'elaboratore 102.commutando un pulsante on/off dell'elaboratore 102). In alternativa, tale evento di inizializzazione può essere la ricezione da parte dell'elaboratore 102 di un comando per eseguire inizialmente il software di sistema operativo. Per esempio, l'elaboratore 102 può ricevere tale comando dall'utente 112 (ad esempio tramite i dispositivi di ingresso 104) oppure da un'applicazione di elaboratore eseguita dall'elaboratore 102 o da un altro elaboratore (ad esempio attraverso la rete 114).
In modo notabile, in risposta all'inizializzazione (o la reinizializzazione) dell'elaboratore 102:
(a) l'elaboratore 102 legge istruzioni in un dispositivo di memoria dell'elaboratore 102: (i) da BI; e (ii) da PBRx se l'inserimento di tabella di partizione PTEx è contrassegnato come "attivo"; e (b) esegue tali istruzioni in risposta ad un sistema di ingresso/uscita di base ("BIS") di memoria di sola lettura ("ROM") dell'elaboratore 102.
Il PBRx è il record di boot di partizione di Px, della partizione associata a PTEx. Nella forma di attuazione illustrativa, un PBRx è un singolo settore di informazioni. Il BI e ogni PBRx comprendono istruzioni secondo il tipo, la versione e il linguaggio del software di sistema operativo.
In risposta a segnali dall'elaboratore 102, un FRx memorizza file di informazioni. Ogni FRx è diviso in un numero C di gruppi di informazioni. Un particolare gruppo è designato come gruppo b, dove b è un numero intero tra 0 e C-l.
Nella forma di attuazione illustrativa, i gruppi all'interno di un particolare FRx sono di dimensioni uguali, cosicché ogni gruppo ha una dimensione = 2<y>, dove y è un numero intero e Cx2<y >è minore o uguale alla dimensione del particolare FRx. Di conseguenza, il PBRx comprende un blocco di parametri BIS che specifica y e C per il particolare FRx. Ogni FRx ha la propria rispettiva dimensione, e ogni partizione ha i propri rispettivi valori di y e C.
Nella forma di attuazione illustrativa, ogni directory radice RDx comprende spazio per memorizzare fino a 512 inserimenti per RDx. Dall'inserimento associato ad un file di informazioni comprende il nome del file (ad esempio PROGRAM .EXE, DATA.DAT, COMMANDS.BAT), la data, l'ora, la dimensione, gli attributi (ad esempio nascosto), e il gruppo iniziale. Il gruppo iniziale è uno dei C gruppi all'interno di FRx.
La Figura 3 è una illustrazione concettuale delle informazioni, indicate in generale con il 300, memorizzate dal disco rigido all'interno di una tabella di allocazione di file FATx. Più in particolare, nell'esempio di Figura 3, le informazioni 300 sono memorizzate all'interno della FATI. Ogni tabella di allocazione di file FATx comprende C inserimenti, ciascuno associato ad uno rispettivo dei gruppi all'interno di FRx. Nell'esempio di Figura 3, C = 10, cosicché la FATx comprende dieci inserimenti con i numeri b = 0-9. L'inserimento comprende un rispettivo stato.
Nella forma di attuazione illustrativa, se lo strato dell'inserimento b è FFF0, FFF1, FFF2, FFF3, FFF4, FFF5, oppure FFF6, l’inserimento b è Riservato. Per confronto, se lo stato dell'inserimento b è 0, l'inserimento b è Disponibile. Se lo stato dell'inserimento b è un numero oltre a 0, FFF0, FFF1, FFF2, FFF3, FFF4, FFF5, oppure FFF6, l'inserimento b è Allocato. Se l'inserimento b è Allocato ed ha uno stato di -1, l'inserimento b è un Inserimento Finale e non identifica un inserimento successivo. Se l'inserimento b è allocato ed ha uno stato oltre a -1, lo stato dell'inserimento b identifica un inserimento successivo q, dove q è un numero intero tra 0 e C-l.
Per accedere (ad esempio scrivere informazioni o leggere informazioni da) ad una partizione Px, un processore dell'elaboratore 102 invia in uscita un comando al controllore di unità dell'elaboratore 102, e il controllore di unità riceve tale comando. Tale comando è indirizzato alla partizione Tx (e di conseguenza ad una rispettiva unità logica associata alla partizione Tx) specificando una lettera di unità logica (ad esempio C: oppure A:) associata che designa la partizione Px (e, di conseguenza, che identifica una rispettiva unità logica associata alla partizione Px). Tale comando specifica inoltre un particolare file di informazioni tramite il suo nome file.
In risposta a tale comando: (a) il controllore di unità legge RDx della partizione Px indirizzata dal disco rigido, (b) se un inserimento nell'ambito di RDx comprende il nome file, il controllore di unità identifica il gruppo iniziale f del file, come identificato da tale inserimento all'interno di RDx, dove f è un numero intero tra 0 e C-l; e (c) se un inserimento all'interno di RDx non comprende il nome file, il controllore di unità (i) alloca un gruppo iniziale f per il file, cosicché il gruppo iniziale f allocato è associato ad un inserimento f Disponibile nell'ambito di FATx, e (ii) scrive, in un inserimento disponibile nell'ambito di RDx, il nome file del file, la data allora corrente, l'ora corrente, la dimensione del file, gli attributi del file, ed una identificazione del gruppo iniziale f del file.
In una delle precedenti situazioni (a) oppure (b) il controllore di unità: alloca o disalloca uno o più gruppi se (e nella misura) appropriato per memorizzare l'intero file; e modifica opportunamente gli inserimenti all'interno di FATx per indicare con precisione un ordine per accedere a tali gruppi in relazione alla lettura e alla scrittura del file. Tali inserimento nell'ambito di Fatx indicano con precisione tale ordine come discusso ulteriormente più avanti in relazione alla discussione sul "inserimento successivo" e l'Inserimento Finale. Prima di allocare un gruppo, il controllore di unità verifica che il gruppo allocato sia associato ad un inserimento Disponibile nell'ambito di FATx. Dopo aver deallocato un gruppo il controllore di unità cambia l'inserimento associato del gruppo all'interno di FATx, in modo che sia Disponibile. Dopo aver identificato un gruppo iniziale f del file, il controllore di unità esegue le operazioni descritte nel seguente paragrafo per la situazione dove b = f.
Il controllore di unità legge l'inserimento b nell'ambito di FATx che è associato al gruppo b di FRx. Se l'inserimento b è Riservato, il controllore di unità invia in uscita un segnale al processore dell'elaboratore 102 per indicare la negazione dell'accesso al gruppo b (e analogamente al particolare file di informazioni specificato dal nome file). Per confronto, se l'inserimento b è Allocato, il controllore di unità cede al gruppo b in una maniera specificata dal comando dal processore dell'elaboratore 102 (ad esempio in risposta ad un comando di "lettura", il controllore di unità legge le informazioni memorizzate nel gruppo b e invia in uscita tale informazioni al processore dell'elaboratore 112, e il processore dell'elaboratore 112 riceve tali informazioni. In risposta ad un comando di "scrittura", il controllore di unità riceve informazioni dal processore dell'elaboratore 112 e scrive tali informazioni nel gruppo b). Dopo aver avuto accesso al gruppo b: (a) se l'inserimento b è un Inserimento Finale, l'accesso al particolare file di informazioni è completo e il controllore di unità attende un comando successivo dal processore dell'elaboratore 102; e (b) se l'inserimento b non è un Inserimento Finale, il controllore di unità ripete le operazioni descritte in questo paragrafo per la situazione in cui b = q (come sopra citato, il successivo inserimento q è identificato dallo stato dell'inserimento b) . Di conseguenza, nell'esempio di Figura 3, se il gruppo iniziale del file f = 2, il controllore di unità cede alla sequenza di gruppi 2, 5 e 7 di FRx.
Nella forma di attuazione illustrativa, lo stato dell'inserimento b all'interno di FATx è un inserimento a 16 bit che identifica il successivo inserimento q all'interno di FRx, e l'unità logica più grande (analogamente alla partizione più grande) gestita dall'elaboratore 102 è (a) due gigabyte per il software di sistema operativo Microsoft DOS, (b) due gigabyte per software di sistema operativo Microsoft Windows 95 e (c) quattro gigabyte per il software di sistema operativo Microsoft Windows NT. In una forma di attuazione alternativa, lo stato dell'inserimento b all'interno di FATx è un inserimento a 32 bit che identifica il successivo inserimento q all'interno di FRx, e l'unità logica più grande (e analogamente alla partizione più grande) gestita dall'elaboratore 102 è di due terabyte per la versione 5.0 del software di sistema operativo Microsoft Windows, NT e il software di sistema operativo Microsoft Windows, 95 0SR2. Nella forma di attuazione illustrativa, un terabyte sono 1024<4 >byte, un gigabyte sono 1024<3 >byte ed un megabyte sono 1024<2 >byte.
La Figura 4 è una illustrazione concettuale di un dispositivo di memoria, indicato in generale con il 400, dell'elaboratore 102. La Figura 5 è un programma di flusso del funzionamento del sistema 100. La seguente discussione si riferisce simultaneamente alle Figure 4 e 5.
Come illustrato in Figura 4, il dispositivo di memoria 400 comprende una regione di memoria convenzionale CM ed una regione di memoria estesa EM. La regione di memoria estesa EM comprende un'area di memoria alta HMA, che sono i 64 kilobyte di spazio indirizzabile più bassi (cioè indirizzati da indirizzi di numero minimo) all'interno della regione di memoria estesa EM. La regione di memoria convenzionale CM è 5640 kilobyte di spazio indirizzabile minimo all'interno del dispositivo di memoria 400 e comprendere la regione 402, 404, 406, 408, 410 come illustrato in Figura 4.
Nella fase 500, l'elaboratore 102 determina se dare inizio all'esecuzione del sistema operativo in risposta ad un evento di inizializzazione. In risposta all ' inizializzazione (o alla reinizializzazione) l'elaboratore 102 copia porzioni del software di sistema operativo Microsoft DOS ("OS") dal mezzo 110 leggibile tramite elaboratore nella regione 402, e l'elaboratore 102 legge ed esegue tale porzione in una fase 502. La regione 402 è la regione minima indirizzabile nell'ambito di CM. L'elaboratore 102 memorizza il OS nella regione 402, poiché il OS è tra il primo software che l'elaboratore 102 esegue in risposta all 'inizializzazione (o alla reinizializzazione).
Nell'esecuzione dell 'OS l'elaboratore 102 alloca la regione 404 per memorizzare le strutture di informazioni IS in una fase 504. Le strutture di informazioni IS comprendono informazioni per identificare unità logiche. Per esempio, le strutture di informazioni IS comprendono informazioni che identificano una rispettiva unità logica associata ad una partizione (del disco rigido del mezzo 110 leggibile tramite elaboratore). Più in particolare, nella forma di attuazione illustrativa, le strutture di informazioni IS comprendono informazioni che designano la partizione tramite una lettera di unità logica associata (ad esempio C: oppure A:) che identifica una rispettiva unità logica.
Inoltre, nell'esecuzione dell'OS, l'elaboratore 102 copia porzioni del software applicativo ("SW") dal mezzo 110 leggibile tramite elaboratore nella regione 406, e l'elaboratore 102 legge ed esegue tali porzioni in una fase 506.
In modo notabile, un nuovo disco rigido è normalmente vuoto e non contiene inforamzioni di partizione. In una prima situazione, se un nuovo disco rigido è vuoto e viene installato nel sistema 100, e l'elaboratore 102 viene inizializzato (o reinizializzato), l'elaboratore 102, nell'eseguire il OS) riconosce la mancanza di partizioni sul disco. In questa prima situazione, l'elaboratore 102 (nell'eeguire il OS) non memorizza le strutture di informzioni IS nella regione 404 per identificare le unità logiche. In una seconda situazione, l'elaboratore 102 (nell'eseguire il OS) riconosce le partizioni sul disco e .memorizza le strutture di inforamzioni IS nella regione 404 per identificare le unità logiche, e tuttavia l'elaboratore 102 (nell'eseguire il software applicativo SW) riconosce la necessità di aggiungere, modificare o cancellare le partizioni sul disco.
Nell'eseguire il software applicativo SW nella prima situazione o nella seconda situazione, l'elaboratore 102 inizializza (ad esempio prepara) il disco formattandolo e aggiungendo, modificando o cancellando in modo opportuno una o più partizioni su di esso nella fase 508. Nella forma di attuazione illustrativa, tale inizializzazione è parte di un processo eseguito dall’elaboratore 102 per installare programmi e strutture di informazioni sul disco per supportare vari dispositivi del sistema 100. Dopo che l'elaboratore 102 aggiunge, modifica o cancella una o più partizioni sul disco, le strutture di informazioni IS (che identificano unità logiche) sono soggette a imprecisioni a meno che e fino a quando l'elaboratore 102 forma (ad esempio e memorizza nel dispositivo di memoria 400) le strutture di informazioni IS in risposta alle partizioni aggiunge, modificate e/o cancellate nella fase 510.
Secondo tecniche precedenti, dopo aver così inizializzato il disco, l'elaboratore 102 viene reinizializzato prima che l'elaboratore 102 (nell'eseguire il OS) formi (ad esempio memorizzi nel dispositivo di memoria 400) strutture di informazioni IS in risposta alle partizioni aggiunte, modificate e/o cancellate. Tale reinizializzazione dell'elaboratore 102 consuma fino a parecchi minuti di tempo. Come parte di un assemblaggio di elaboratori o operazioni di fabbricazione di elaboratori su volumi elevati, i dischi rigidi vuoti vengono installati in un gran numero di elaboratori. In tale operazione, l'aggiunta di parecchi minuti di tempo di reinizializzazione per elaboratore è inefficiente.
Come citato in precedenza, le strutture di informazioni IS comprendono informazioni che identificano una rispettiva unità logica associata ad una partizione (del disco rigido del mezzo 110 leggibile tramite elaboratore) . In un aspetto significativo della forma di attuazione illustrativa, indipendentemente dal fatto che l'elaboratore 102 sia reinizializzata (ad esempio anche persino senza la reinizializzazione): l'elaboratore 102 forma in modo vantaggioso (ad esempio memorizza nel dispositivo di memoria 400) le strutture di informazioni IS in risposta alle partizioni aggiunte, modificate e/o cancellate; e l'elaboratore 102 accede a tale partizione in risposta ad un comando indirizzato alla rispettiva unità logica associata alla partizione. In modo notevole, se l'elaboratore 102 aggiunge (o, in alcune situazioni, modifica) partizioni sul disco, la regione 404 normalmente è grande in modo insufficiente per memorizzare tutte le strutture di informazioni IS.
Come esempio, nel designare una partizione tramite la lettera C: associata ad una rispettiva unità logica C:, l'elaboratore 102: (a) crea le strutture di informazioni IS sotto forma di una tabella di descrittori di unità ("DDT") ed un blocco di parametri di unità ("DPB"); (b) modifica una struttura di directory corrente ("CDS") associata all'unità logica C:, che è implementata come matrice lineare piuttosto che elenco collegato, in modo tale che l'elaboratore 102 non allochi spazi di memoria aggiuntivo per la CDS; e (c) modifica una tabella di variabili di sistema (SysVars")= dell'elaboratore 102 in modo da comprendere una indicazione dell'unità logica C:.
Secondo le tecniche precedenti, dopo che l'elaboratore 102 forma le strutture di informazioni IS in risposta alle partizioni aggiunte, modificate e/o cancellate, l'elaboratore 102 memorizza le strutture di informazioni IS nella regione 408, nella misura in cui la regione 404 è grande in modo insufficiente. Tuttavia, dopo; che l'elaboratore 102 termina di eseguire il software applicativo SW, la regione 406 diventa riallocabile da parte dell'elaboratore 102 per memorizzare informazioni diverse (ad esempio strutture di informazioni aggiuntive, o porzioni di software applicativo diverso) . Un problema delle tecniche precedenti è che la regione 408 è interposta (nell'ambito del campo di indirizzi che indirizzano lo spazio all'interno della regione di memoria convenzionale CM) tra la regione riallocabile 406 e la regione 410, frammentando in tal modo un insieme di informazioni (ad esempio porzioni di un singolo programma software) memorizzate nelle regioni 406 e 410.
Tale frammentazione aggiungerebbe complessità alle operazioni dell’elaboratore 102, poiché l'elaboratore 102 eseguirebbe operazioni aggiuntive per rilevare se, quando e come saltare la regione 408 quando indirizza l'insieme di informazioni memorizzate nelle regioni 406 e 410. La complessità dell'elaboratore 102 aumenterebbe memorizzando l'insieme di informazioni nelle regioni 406 e 408 invece delle regioni 406 e 410. Questo avviene poiché le regioni 406 e 408 (a differenza delle regioni 406 e 410) sono indirizzabili tramite un campo di indirizzi ininterrotto continuo.
In un aspetto significativo della forma di attuazione illustrativa, dopo che l'elaboratore 102 forma le strutture di informazioni IS in risposta a partizioni aggiunte, modificate e/o cancellate nella fase 510, l'elaboratore 102 determina: (a) in una fase 512, una quantità adatta di spazio di memoria per memorizzare le strutture di informazioni IS; (b) in una fase 514, se la regione 404 memorizza già una versione precedente delle strutture di informazioni IS; e (c) in una fase 516, se la regione 404 è sufficientemente grande da memorizzare tutta la nuova versione delle strutture di informazioni IS. Se la regione 404 è sufficientemente grande da memorizzare tutta la nuova versione delle strutture di informazioni IS, l'elaboratore 102 memorizza tutte le strutture di informazioni IS nella regione 404 in una fase 518.
La dimensione delle strutture di informazioni IS è una funzione della versione di OS e del tipo di partizione. Per determinare se la regione 404 memorizza già una versione precedente delle strutture di informazioni IS, l’elaboratore 102 legge un campo di "numero di unità fisiche" (che è uguale al numero di DPB) da una tabella di variabili di sistema ("Sys Vars") del sistema operativo. Se il campo di "numero di unità fisiche" è due, la regione 404 non memorizza già una versione precedente delle strutture di informazioni IS.
In modo significativo, dopo aver determinato una quantità adatta di spazio di memoria per memorizzare le strutture di informazioni IS nella fase 512, l'elaboratore 102 memorizza le strutture di informazioni IS nell'area di memoria alta HMA (in una fase 520) invece della regione 408 (e senza intrusioni sulla regione di memoria convenzionale CM), nella misura in cui la regione 404 è grande in modo insufficiente. In tale maniera, la regione 408 rimane allocatile da parte dell'elaboratore 102 per memorizzare un insieme di informazioni in combinazione con la regione 406 e/o la regione 410, diminuendo in tal modo la frammentazione e ottenendo un blocco continuo più grande di regione di memoria convenzionale CM per memorizzare l'insieme di informazioni. Di conseguenza a confronto con le tecniche precedenti, l'elaboratore 102 della forma di attuazione illustrativa è meno complesso.
Inoltre, memorizzando le strutture di informazioni IS nell'area di memoria alta HMA, l'elaboratore 102 indirizza in modo vantaggioso le strutture di informazioni IS con indirizzi a 16 bit, e l'elaboratore 102 accede in modo vantaggioso alle strutture di informazioni IS senza invocare protocolli speciali (ad esempio indirizzamento a 32 bit e modi protetti). In tale maniera, le strutture di informazioni IS sono accessibili più immediatamente in maniera compatibile con il software di sistema operativo Microsoft DOS, che è un sistema operativo a 16 bit. Per memorizzare le strutture di informazioni IS nella HMA, l'elaboratore 102 tenta di allocare una porzione sufficiente della HMA eseguendo le funzioni Int 2Fh 4Ah del sistema operativo. Tale tentativo è efficace se l'elaboratore 102 esegue un programma software di comando di specifiche di memoria estesa ("XMS") {ad esempio come implementato dal programma software di comando HIMEM.SYS fornito con il sistema operativo) e copia il sistema operativo nella HMA (eseguendo un comando "DOS=HIGH”). Se è efficace, l'elaboratore 102 esegue un programma software di comando XMS per identificare e riallocare una porzione sufficiente del HMA per memorizzare le strutture di informazioni IS.
Se non è efficace, l'elaboratore 102 tenta di allocare l’intero HMA per memorizzare le strutture di informazioni IS abilitando la linea di indirizzo A20. L'elaboratore 102 abilita la linea di indirizzo A20 eseguendo operazioni di BIOS adatte, compresa l'esecuzione della funzione Int 15h 24h del sistema operativo. Tuttavia, se il BIOS non supporta tali operazioni, l'elaboratore 102 abilita la linea di indirizzo A20 inviando in uscita comandi adatti direttamente ad un controllore di tastiera dell'elaboratore 102.
In alternativa, l'elaboratore 102 memorizza le strutture di informazioni IS all'interno dello spazio indirizzabile più elevato della regione di memoria convenzionale CM invece del HMA, nella misura in cui la regione 404 è grande in modo insufficiente. L'elaboratore 102 fa così se l'elaboratore 102 tenta senza successo di allocare il HMA per memorizzare le strutture di informazioni IS. Inoltre, l'elaboratore 102 fa così se l'elaboratore 102 ha la necessità di testare il HMA senza cancellare le strutture di informazioni IS.
Nel memorizzare le strutture di informazioni IS, l'elaboratore 102 collega le strutture di informazioni IS ad una versione precedente, se esiste, delle strutture di informazioni IS già memorizzate nel dispositivo di memoria 400 (ad esempio una versione precedente memorizzata nella regione 404), nella misura in cui tale versione precedente rimane valida. L'elaboratore 102 esegue tale collegamento, indipendentemente dal fatto che l'elaboratore 102 memorizzi le strutture di informazioni IS nel HMA o nello spazio indirizzabile massimo all'interno della regione di memoria convenzionale CM. In modo vantaggioso, l'elaboratore 102 esegue tale creazione, memorizzazione e collegamento delle strutture di informazioni IS all'incirca in un secondo o meno, a confronto dei parecchi minuti che potrebbero altrimenti essere consumati nel reinizializzare l'elaboratore 102. Dopo la fase 518 o la fase 520, il funzionamento del sistema 100 in Figura 5 ritorna alla fase 500.
La Figura 6 è una illustrazione concettuale delle informazioni, indicate in generale con il 600, memorizzate dal disco rigido del mezzo 110 leggibile tramite elaboratore. Le informazioni 600 sono una versione alternativa delle informazioni 200 di Figura 2.
Nell'esempio di Figura 6, come nell'esempio di Figura 2, il disco rigido del mezzo 110 leggibile tramite elaboratore comprende le partizioni PI e P2. Come in Figura 2, la partizione PI comprende un record di boot di partizione PDR1, una tabella di allocazione di file FATI, una directory radice RD1, ed una regione di file FRI. Analogamente, la partizione P2 comprende un record di boot di partizione PBR2, una tabella di allocazione di file FAT2, una directory radice RD2, ed una regione di file FR2.
In un aspetto significativo della forma di attuazione illustrativa, nell’esempio di Figura 6, la partizione PI è una partizione "primaria" e la partizione P2 è una partizione di "utilità" che è collocata all'interno di FRI. Più in particolare, la partizione P2 è collocata all'interno dei gruppi 8 e 9 di FRI. Nella forma di attuazione illustrativa, se il sistema 100 forma una partizione di utilità all'interno di una partizione primaria, il sistema 100 forma la partizione di utilità all'interno dei gruppi indirizzabili più elevati della partizione primaria. In tale maniera, il sistema 100 evita in modo significativo di aumentare il tempo per accedere ai gruppi in risposta ai comandi che sono indirizzati alla partizione primaria. Il sistema 100 rende un numero intero sufficiente di tali gruppi Riservati per la partizione di utilità, arrotondato al limite di cilindro più vicino allo scopo di mantenere la compatibilità con i programmi di utilità US quali FDISK.
In questo esempio, la partizione P2 delle informazioni 600 è identica alla partizione P2 delle informazioni 200, in termini di struttura, dimensione, posizione e funzionamento. Tuttavia, FRI delle informazioni 600 è maggiore di FRI delle informazioni 200. In questa maniera FRI delle informazioni 600 è sufficientemente grande da tener conto della partizione P2 all'interno dei gruppi 8 e 9 di FRI.
Una partizione di utilità può, per esempio, memorizzare programmi e informazioni che sono utili durante la costruzione, l'assemblaggio e il test del sistema 100. Tuttavia, in almeno una situazione, tali programmi e informazioni sono meno utili, e forse neanche necessari, durante il successivo uso e funzionamento del sistema 100. In tale situazione, dopo la fabbricazione, l'assemblaggio e il test del sistema 100: (a) la partizione di utilità stessa è meno utile, e forse neanche necessaria; (b) a confronto con la partizione di utilità, una partizione primaria è più utile durante il successivo uso e funzionamento del sistema 100; e (c) in modo vantaggioso, il sistema 100 della forma di attuazione illustrativa è in grado di cancellare la partizione di utilità in modo tale che i settori sono riallocati dalla partizione di utilità alla partizione primaria. In tale maniera, la partizione primaria del disco rigido si allarga in modo vantaggioso per ottenere un utilizzo ed un funzionamento successivi più versatili del sistema 100.
La Figura 7 è una illustrazione concettuale delle informazioni, indicata in generale con il 700, memorizzate dal disco rigido all'interno di una tabella di allocazione di file FATI delle informazioni 600. Come illustrato in Figura 7, gli inserimenti 8 e 9 sono Riservati, in contrasto con le informazioni 300 di Figura 3 in cui tali inserimenti sono Disponibili. Tranne che per gli inserimenti 8 e 9, le informazioni 700 sono identiche alle informazioni 300 di Figura 3.
In questo esempio, con il sistema operativo, l'elaboratore 100 designa la partizione primaria Pi tramite la lettera C: e designa la partizione di utilità P2 tramite la lettera A: in questa maniera, l'elaboratore 102 mappa la partizione primaria PI in una unità C: logica e mappa la partizione di utilità P2 in una unità A: virtuale. Tale unita A: è "virtuale" poiché il suo spazio di memoria effettivo è collocato sul disco rigido del mezzo 110 leggibile tramite elaboratore invece del dischetto di elaboratore floppy del mezzo 110 leggibile tramite elaboratore. Durante la fabbricazione, l'assemblaggio e il test del sistema 100, l'elaboratore 102 contrassegna (nella MPT) la partizione di utilità P2 come attiva, cosicché l'elaboratore 102 esegue istruzioni da PBR2 in risposta ad un evento di inizializzazione.
Come citato in precedenza in relazione alla Figura 3, per accedere ad una partizione PI, il processore dell'elaboratore 102 invia in uscita un comando al controllore di unità dell'elaboratore 102, e il controllore di unità riceve tale comando. Per esempio, tale comando è indirizzato alla partizione PI specificando la lettera C: che designa la partizione PI. Prima di allocare un gruppo per memorizzare un file in risposta a tale comando indirizzato alla partizione PI, il controllore di unità verifica che il gruppo allocato sia associato ad un inserimento di Disponibile all'interno di FATI. Di conseguenza, nella misura in cui gli inserimenti 8 e 9 sono Riservati invece che Disponibili all'interno di FAP1, il controllore di unità non alloca in questo modo uno dei gruppi 8 o 9.
In questa maniera, rendendo gli inserimenti 8 e 9 Riservati all'interno di FATI delle informazioni 600, il sistema 100 è in grado di collocare in maniera affidabile la partizione T2 all'interno dei gruppi 8 e 9 di FRI. Ciò avviene poiché i gruppi 8 e 9 sono inaccessibili da parte del processore dell'elaboratore 102 inviando in uscita (al controllore di unità) un comando che è indirizzato alla partizione Pi (ad esempio specificando la lettera C: che designa la partizione PI). Invece, i gruppi 8 e 9 sono accessibili da parte del processore dell'elaboratore 102 che invia in uscita (al controllore di unità) un comando che è indirizzato alla partizione P2 (ad esempio specificando la lettera A: che designa la partizione P2) .
Analogamente, il sistema 100 è in grado di collocare in modo affidabile una o più partizioni aggiuntive (ad esempio una partizione P3) all'interno di FR2 (che esso stesso è collocato all'interno di FRI) rendendo in modo opportuno uno o più inserimenti Riservato all'interno di FAT2 delle informazioni 600. In tale esempio, i gruppi associati a tali inserimenti Riservati sono inaccessibili dal processore dell'elaboratore 102 che invia in uscita (al controllore di unità) un comando che è indirizzato alla partizione PI o alla partizione P2). Invece, tali gruppi sono accessibili da parte del processore dell'elaboratore 102 che invia in uscita (al controllore di unità) un comando che è indirizzato alla partizione aggiuntiva (ad esempio una partizione P3), come per esempio tramite un comando tale da specificare una lettera di unità logica associata che designa la partizione aggiuntiva.
Nell'esempio di Figura 6, l'elaboratore 102 inizializza la tabella di partizione master MTT (del MDR) ad uno stato specifico sia per la partizione primaria PI sia per la partizione di utilità P2. Nella forma di attuazione illustrativa, la partizione di utilità P2 è relativamente piccola (ad esempio all'incirca dieci megabyte). Inizialmente, PTE1 è associato alla partizione primaria PI, e PTE2 è associato alla partizione di utilità P2.
La Figura 8 è una illustrazione concettuale delle informazioni, indicate in generale con 800, memorizzate dal disco rigido nel mezzo 110 leggibile tramite elaboratore. Le informazioni 800 sono una versione alternativa delle informazioni 600 di Figura 6. La Figura 9 è un diagramma di flusso del funzionamento del sistema 100. La seguente discussione si riferisce simultaneamente alle Figure 8 e 9.
In una fase 900, il sistema 100 determina se si emette un comando di "cancellazione di partizione". In risposta ad un comando di "cancellazione di partizione" adatto (ad esempio un comando ricevuto dal sistema 100 dopo la costruzione, l'assemblaggio e il test del sistema 100), il sistema 100 cancella la partizione di utilità P2: (a) in una fase 902, modificando in modo opportuno l'inserimento di tabella di partizione PTEx (ad esempio PTE2 in questo esempio) associato alla partizione di utilità P2, cosicché la partizione P2 non è più riconosciuta dall'elaboratore 102; (b) in una fase 904, modificando tutti gli inserimenti Riservati nelle informazioni 700 (memorizzate dal disco rigido nell'ambito di FATI delle informazioni 600) di Figura 7 in modo che siano Disponibili (ad esempio modificando le informazioni 700 in modo che siano completamente identiche alle informazioni 300 di Figura 3); e (c) in una fase 906, contrassegnando (nella MPT) la partizione primaria PI come attiva, cosicché l'elaboratore 102 esegue le istruzioni da PBR1 in risposta ad un evento di inizializzazione. Dopo la fase 906 il funzionamento del sistema 100 in Figura 9 ritorna alla fase 900.
Tale cancellazione della partizione di utilità P2 è illustrata in Figura 8. Questa tecnica è vantaggiosa rispetto alle tecniche precedenti in cui il sistema 100 ricrea o modifica in modo esteso una partizione primaria allo scopo di allocare settori da una partizione di utilità alla partizione primaria. Al contrario, il sistema 100 ottiene tale riallocazione cancellando semplicemente la partizione di utilità P2 come discusso nel paragrafo immediatamente precedente, che è sostanzialmente più rapido di tali tecniche precedenti.
Per esempio, nella forma di attuazione illustrativa, se il sistema 100 esegue automaticamente tale cancellazione della partizione di utilità P2, tale attività viene eseguita in un certo numero di secondi o meno. Al contrario, se un utente umano manualmente (con una certa assistenza da un precedente programma di elaboratore) esegue la ricreazione o la modifica estesa di una partizione primaria, tale attività può essere eseguita in un certo numero di ore. Nell'esecuzione manuale di tale attività, l'utente umano può essere costretto a valutare e specificare la dimensione, la posizione, il tipo di valori e la partizione primaria di Y e C, più la dimensione della regione di file FRx della partizione; inoltre, l'utente umano può essere costretto a riallocare quantità potenzialmente grandi di informazioni tra le regioni del disco rigido del mezzo 110 leggibile tramite elaboratore.
Un esempio di tale comando di "cancellazione di partizione" è un comando di "rottura di sigillo" dall'utente 112. Per esempio se l'utente 112 attiva i dispositivi di ingresso 104 in maniera tale da indicare la citazione da parte dell'utente 112 del sistema 100 (e/o di un accordo licenza che governa l'utilizzo del sistema 100), il sistema 100 risponde a tale accettazione come comando di "rottura di sigillo". Tale comando di "rottura di sigillo" è una tecnica per indicare (a) il completamento della fabbricazione, dell'assemblaggio e del test del sistema 100 e (b) .l'inizio dell'utilizzo e del funzionamento successivi del sistema 100.
In alternativa, se è preferito per una particolare situazione, dopo la fabbricazione, l'assemblaggio e il test del sistema 100, il sistema 100 è in grado di mantenere una partizione di utilità (ad esempio la partizione P2 in Figura 6) (per memorizzare programmi e informazioni che sono utili per diagnosticare un successivo malfunzionamento del sistema 100. Per esempio, se il sistema 100 comprende un PC MET (ad esempio un PC che non ha alcun dischetto di elaboratore floppy e si basa su una connessione alla rete 114 allo scopo di ricevere e inviare in uscita informazioni verso e da un altro sistema), tale mantenimento è utile per diagnosticare un malfunzionamento del PC NET. Questo è specialmente vero se il malfunzionamento influenza negativamente la capacità del PC NET di ricevere in altro modo tale diagnostica attraverso la rete 114 (Figura 1) da un altro sistema.
In risposta ad un tipo adatto di comando di "cancellazione di partizione", il sistema 100 realizza tale mantenimento della partizione di utilità P2: (a) modificando opportunamente l'inserimento di tabella di partizione PTEx (ad esempio PTE2 in questo esempio) associato alla partizione di utilità P2; (b) trattenendo tutti gli inserimenti Riservati nelle informazioni 700 (memorizzate dal disco rigido all'interno di FATI delle informazioni 600) di Figura 7, in modo tale che tale inserimenti continuino a non essere Disponibili; e (c) (rendendo nella MPT) la partizione primaria PI attiva, cosicché l'elaboratore 102 esegue le istruzioni da PBR1 in risposta ad un evento di inizializzazione. In risposta ad un comando di "ripristino di partizione" adatto per accedere successivamente a programmi e informazioni memorizzati nella partizione di utilità P2, il sistema 100: (a) modifica opportunamente l’inserimento di tabella di partizione PTEx (ad esempio PTE2 in questo esempio) associato alla partizione di utilità P2, cosicché la partizione P2 è riconosciuta dall'elaboratore 102; e (b) se si preferisce, rendendo (nella AMTT) la partizione di utilità P2 attiva, cosicché l'elaboratore 102 esegue istruzioni dal PBR2 in risposta ad un evento di inizializzazione.
Se necessario per tale esecuzione del comando di "cancellazione di partizione", il sistema 100 'è in grado di: (a) identificare gli inserimenti Riservati nelle informazioni 700 (memorizzate dal disco rigido all'interno di FATI delle informazioni 600 di Figura 7 leggendo e valutando opportunamente FATI; e (b) dopo aver identificato gli inserimenti Riservati, leggere .e valutare i gruppi associati a tali inserimenti Riservati allo scopo di determinare informazioni adatte per la memorizzazione nell'inserimento di tabella di partizione PTEx (ad esempio PTE2 in questo esempio) associato alla partizione di utilità P2.
In modo notevole, in risposta ad un comando di "scambio opportuno" l'elaboratore 102 è in grado di eseguire un programma che scambia la designazione di unità logica C: tra la partizione primaria PI e la partizione di utilità P2. Per esempio, se (immediatamente prima di ricevere tale comando) l’elaboratore 102 designa la partizione primaria PI tramite la lettera C: e designa la partizione di utilità P2 tramite la lettera A:, in risposta a tale comando) l'elaboratore 102 modifica la sua mappatura delle partizioni PI e P2, cosicché l'elaboratore 102 invece mappa la partizione primaria PI sull'unità A: virtuale e mappa la partizione di utilità P2 sull'unità logica C:. L'elaboratore 102 realizza tale scambio modificando le informazioni all'interno di un DPB e un DOT (ad esempio per l'unità logica C:) per incorporare parametri per la partizione primaria PI o la partizione di utilità P2, come applicabile .
Come citato in precedenza in relazione alla Figura 2, in risposta all'inizializzazione (o alla reinizializzazione) dell'elaboratore 102:
(a) l'elaboratore 102 legge istruzioni in un dispositivo di memoria dell'elaboratore 102: (i) da BI; e (ii) da un inserimento di tabella di partizione PTEx (ad esempio PTE2 in questo esempio) associato alla partizione di utilità P2 se tale inserimento di tabella di partizione PTEx è contrassegnato come "attivo"; e
(b) esegue tali istruzioni in risposta ad un sistema di ingresso/uscita di base ("BIOS”) di memoria di sola lettura ("ROM") dell'elaboratore 102.
In una forma di attuazione esemplificativa, rispetto alle istruzioni dall'inserimento di tabella di partizione PTEx (ad esempio PTE2 in questo esempio) associato alla partizione di utilità P2, tali istruzioni comprendono istruzioni per modificare tale PTEx. Più in particolare, tali istruzioni cambiano il tipo di partizione P2 da un tipo di utilità ad un tipo FAT a 16 bit o 32 bit. In questa maniera, il PTEx è a modifica automatica. Tale tecnica di modifica automatica è vantaggiosa se: (a) il tipo di utilità della partizione non è riconosciuto dal sistema operativo e/o dall'elaboratore 102; e (b) al contrario, il tipo di partizione FAT a 16 bit o 32 bit è così riconosciuto.
Anche se sono state illustrate e descritte forme di attuazione illustrative, un'ampia gamma di modifiche, variazioni e sostituzioni è prevista nella precedente descrizione e in alcuni esempi alcune caratteristiche delle forme di attuazione possono essere impiegate senza un utilizzo corrispondente di altre caratteristiche. Di conseguenza, è appropriato che le rivendicazioni allegate siano costruite in modo ampio e in maniera coerente con il campo di protezione delle forme di attuazione qui descritte.

Claims (1)

  1. RIVENDICAZIONI 1. - Sistema di elaboratore, comprendente: un software di sistema operativo; un mezzo leggibile tramite elaboratore; mezzi per: dare inizio all'esecuzione del software di sistema operativo; dopo aver dato inizio all'esecuzione del software di sistema operativo, formare una partizione nell'ambito del mezzo leggibile tramite elaboratore; e in risposta alla partizione, formare informazioni che identificano una unità logica associata alla partizione, indipendentemente dal fatto che l'esecuzione del software di sistema operativo sia nuovamente iniziata. 2. - Sistema di elaboratore secondo la rivendicazione 1 in cui i mezzi servono per: in risposta alle informazioni, accedere alla partizione in risposta ad un comando indirizzato all'unità logica, indipendentemente dal fatto che si reinizi l'esecuzione del software di sistema operativo. 3. - sistema di elaboratore secondo la rivendicazione 1 in cui i mezzi servono per: in risposta alla partizione, formare le informazioni creando nuove informazioni che identificano l'unità logica associata alla partizione . 4 . - Sistema di elaboratore secondo la rivendicazione 1 in cui i mezzi servono per: in risposta alla partizione, formare le informazioni ingrandendo le informazioni esistenti che identificano l'unità logica associata alla partizione. 5. - Sistema di elaboratore secondo la rivendicazione 1 e comprendente un dispositivo di memoria, in cui i mezzi servono per: in risposta alla partizione, formare le informazioni all'interno della regione di memoria estesa del dispositivo di memoria. 6. - Sistema di elaboratore secondo la rivendicazione 1 e comprendente un dispositivo di memoria, in cui i mezzi servono per: in risposta alla partizione, formare le informazioni all'interno di un'area di memoria alta del dispositivo di memoria. 7. - Sistema di elaboratore secondo la rivendicazione 1 e comprendente un dispositivo di memoria, in cui i mezzi servono per: in risposta alla partizione, formare le informazioni all'interno di uno spazio indirizzabile massimo di un'area di memoria convenzionale del dispositivo di memoria. 8. - Sistema di elaboratore secondo la rivendicazione 1 in cui il mezzo leggibile tramite elaboratore è un disco rigido. 9. - Metodo per accedere ad un mezzo leggibile tramite elaboratore, comprendente le fasi di: dare inizio all'esecuzione di un software di sistema operativo tramite un sistema di elaboratore; dopo aver dato inizio all'esecuzione del software del sistema operativo, formare una partizione all'interno del mezzo leggibile tramite elaboratore; e in risposta alla partizione, formare informazioni che identificano una unità logica associata alla partizione, indipendentemente dal fatto che si reinizi l'esecuzione del software del sistema operativo. 10. - Metodo secondo la rivendicazione 9 comprendente inoltre la fase di: in risposta alle informazioni, accedere alla partizione in risposta ad un comando indirizzato all'unità logica, indipendentemente dal fatto che si reinizi l'esecuzione del software di sistema operativo. 11. - Metodo secondo la rivendicazione 9 in cui la fase di formare le informazioni comprende la fase di: in risposta alla partizione, formare le informazioni creando nuove informazioni che identificano una unità logica associata alla partizione . 12. - Metodo secondo la rivendicazione 9 in cui la fase di formare le informazioni comprende la fase di: in risposta alla partizione, formare le informazioni ingrandendo le informazioni esistenti che identificano una unità logica associata alla partizione. 13. - Metodo secondo la rivendicazione 9 in cui la fase di formare le informazioni comprende la fase di: in risposta alla partizione, formare le informazioni all'interno di una regione di memoria estesa di un dispositivo di memoria. 14. - Metodo secondo la rivendicazione 9 in cui la fase di formare le informazioni comprende la fase di: in risposta alla partizione, formare le informazioni all'interno di un'area di memoria alta di un dispositivo di memoria. 15. - Metodo secondo la rivendicazione 9 in cui la fase di formare le informazioni comprende la fase di: in risposta alla partizione, formare le informazioni all'interno di uno spazio indirizzabile massimo di un'area di memoria convenzionale di un dispositivo di memoria. 16. - Metodo secondo la rivendicazione 9 in cui la fase di formare la partizione comprende la fase di: dopo aver dato inizio all'esecuzione del software di sistema operativo, formare la partizione all'interno del mezzo leggibile tramite elaboratore, il mezzo leggibile tramite elaboratore essendo un disco rigido. 17. - Prodotto di programma di elaboratore, comprendente: un programma di elaboratore elaborabile da un sistema di elaboratore per far sì che il sistema di elaboratore: dia inizio all'esecuzione di un software di sistema operativo; dopo aver dato inizio all'esecuzione del softwsare di sistema operativo, formi una partizione all'interno di un mezzo leggibile tramite elaboratore; e in risposta alla partizione, formi informazioni che identificano una unità logica associata alla partizione, indipendentemente dal fatto che l'esecuzione del software del sistema operativo sia reiniziata; e un apparecchio da cui il programma di elaboratore è accessibile tramite il sistema di elaboratore. 18. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il programma di elaboratore è elaborabile dal sistema di elaboratore per far sì che il sistema di elaboratore: in risposta alle informazioni, abiliti l'accesso alla partizione in risposta ad un comando indirizzato all'unità logica, indipendentemente dal fatto che si reinizi l'esecuzione del software di sistema operativo. 19. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il programma di elaboratore è elaborabile dal sistema di elaboratore per far sì che il sistema di elaboratore: in risposta alla partizione, formi le informazioni creando informazioni nuove che identificano l'unità logica associata alla partizione . 20. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il programma di elaboratore è elaborabile dal sistema di elaboratore per far sì che il sistema di elaboratore: in risposta alla partizione, formi le informazioni ingrandendo informazioni esistenti che identificano l'unità logica associata alla partizione. 21. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il programma di elaboratore è elaborabile dal sistema di elaboratore per far sì che il sistema di elaboratore: in risposta alla partizione, formi le informazioni all'interno di una regione di memoria estesa di un dispositivo di memoria. 22. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il programma di elaboratore è elaborabile dal sistema di elaboratore per far sì che il sistema di elaboratore: in risposta alla partizione, formi le informazioni all'interno di un'area di memoria alta di un dispositivo di memoria. 23. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il programma di elaboratore è elaborabile dal sistema di elaboratore per far sì che il sistema di elaboratore: in risposta alla partizione, formi le informazioni all'interno di uno spazio indirizzabile massimo di un'area di memoria convenzionale di un dispositivo di memoria. 24. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il mezzo leggibile,tramite elaboratore è un disco rigido. 25. - Prodotto di programma di elaboratore secondo la rivendicazione 17 in cui il mezzo leggibile tramite elaboratore è integrale con l'apparecchio.
IT1999TO000960A 1998-11-24 1999-11-09 Sistema e metodo di accesso ad un mezzo leggibile tramite elaboratore. IT1308871B1 (it)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/198,701 US6470434B1 (en) 1998-11-24 1998-11-24 Computer system and method for accessing a computer-readable medium

Publications (3)

Publication Number Publication Date
ITTO990960A0 ITTO990960A0 (it) 1999-11-09
ITTO990960A1 true ITTO990960A1 (it) 2001-05-09
IT1308871B1 IT1308871B1 (it) 2002-01-11

Family

ID=22734435

Family Applications (1)

Application Number Title Priority Date Filing Date
IT1999TO000960A IT1308871B1 (it) 1998-11-24 1999-11-09 Sistema e metodo di accesso ad un mezzo leggibile tramite elaboratore.

Country Status (12)

Country Link
US (1) US6470434B1 (it)
JP (1) JP2000163255A (it)
KR (1) KR20000034891A (it)
CN (1) CN1254884A (it)
AU (1) AU5958899A (it)
BR (1) BR9901667A (it)
DE (1) DE19956523A1 (it)
FR (1) FR2786897A1 (it)
GB (1) GB2346991A (it)
IE (1) IE990518A1 (it)
IT (1) IT1308871B1 (it)
TW (1) TW460841B (it)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785787B2 (en) * 2001-01-26 2004-08-31 Dell Products L.P. Computing system and method for preparing a computer-readable medium
TW515959B (en) * 2001-05-10 2003-01-01 Via Tech Inc Method for memory data access by system management interrupt and computer system thereof
US20030014466A1 (en) * 2001-06-29 2003-01-16 Joubert Berger System and method for management of compartments in a trusted operating system
US7234075B2 (en) * 2003-12-30 2007-06-19 Dell Products L.P. Distributed failover aware storage area network backup of application data in an active-N high availability cluster
US7765394B2 (en) * 2006-10-31 2010-07-27 Dell Products, Lp System and method for restoring a master boot record in association with accessing a hidden partition
US7721078B2 (en) * 2006-10-31 2010-05-18 Dell Products, Lp Method and system to dynamically boot to a non-visible partition
US8090937B2 (en) * 2007-11-02 2012-01-03 Dell Products L.P. System and method for managing booting of an information handling system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843541A (en) * 1987-07-29 1989-06-27 International Business Machines Corporation Logical resource partitioning of a data processing system
US5546557A (en) * 1993-06-14 1996-08-13 International Business Machines Corporation System for storing and managing plural logical volumes in each of several physical volumes including automatically creating logical volumes in peripheral data storage subsystem
US5604887A (en) * 1994-01-21 1997-02-18 Microsoft Corporation Method and system using dedicated location to share information between real and protected mode device drivers
US5706472A (en) 1995-02-23 1998-01-06 Powerquest Corporation Method for manipulating disk partitions
US5721858A (en) * 1995-12-12 1998-02-24 International Business Machines Corporation Virtual memory mapping method and system for memory management of pools of logical partitions for bat and TLB entries in a data processing system
US5787491A (en) 1996-01-26 1998-07-28 Dell Usa Lp Fast method and apparatus for creating a partition on a hard disk drive of a computer system and installing software into the new partition
US5974517A (en) * 1996-09-17 1999-10-26 Compaq Computer Corporation Method and system for mounting a system partition as a logical drive while an operating system is operational by modifying a partition table
US5896546A (en) * 1996-11-01 1999-04-20 International Business Machines Corporation "Sticky" logical drive letter assignments
US6055539A (en) * 1997-06-27 2000-04-25 International Business Machines Corporation Method to reduce I/O for hierarchical data partitioning methods
US6032239A (en) 1997-10-15 2000-02-29 Dell Usa, L.P. System and method for updating partition mappings to logical drives in a computer memory device
US6032223A (en) * 1997-10-15 2000-02-29 Dell Usa, L.P. System and method for determining a RAM disk logical drive designation
US6233105B1 (en) * 1999-03-29 2001-05-15 Inventec Corporation Method of disk formatting

Also Published As

Publication number Publication date
TW460841B (en) 2001-10-21
ITTO990960A0 (it) 1999-11-09
AU5958899A (en) 2000-05-25
KR20000034891A (ko) 2000-06-26
GB2346991A (en) 2000-08-23
US6470434B1 (en) 2002-10-22
DE19956523A1 (de) 2000-05-31
JP2000163255A (ja) 2000-06-16
IT1308871B1 (it) 2002-01-11
BR9901667A (pt) 2000-05-30
GB9925072D0 (en) 1999-12-22
FR2786897A1 (fr) 2000-06-09
CN1254884A (zh) 2000-05-31
IE990518A1 (en) 2000-07-12

Similar Documents

Publication Publication Date Title
ITTO20000032A1 (it) Sistema e procedimento per dare inizio al funzionamento di un sistemaelaboratore.
US5933846A (en) Rewritable ROM file device having read/write buffer access control via copy of rewritable area
JP5236367B2 (ja) 共用型ジャバjarファイル
JP4884041B2 (ja) 自動拡張可能なボリュームに対して最適なi/oコマンドを発行するストレージシステム及びその制御方法
US6718373B1 (en) Method and system for installing files in a computing system
JP2734391B2 (ja) 不揮発性メモリのファイル管理装置
WO2000019310A2 (en) Dual use master boot record
ITTO990962A1 (it) Sistema e metodo per la preparazione di mezzo leggibile tramite elaboratore.
ITTO990960A1 (it) Sistema e metodo di accesso ad un mezzo leggibile tramite elaboratore.
US6785787B2 (en) Computing system and method for preparing a computer-readable medium
EP0319147B1 (en) Method for storing pre-organised groups of related information files in a data processing system
US6463515B1 (en) System and method for recovering physical memory locations in a computer system
CN103425464A (zh) 母盘制作方法及装置
CN111459683B (zh) 一种Java Card空间管理方法
CN109800190B (zh) 内存的加速处理方法及装置、存储介质、处理器
CN115878051A (zh) 一种数据同步方法、数据同步系统、存储介质和电子设备
JP2001290606A (ja) 情報処理装置及び記録媒体
JPH063581B2 (ja) マイクロプログラム格納方式
JP2008027459A (ja) 計算機システム