La campana.

Ci sono quelli che hanno letto questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere la campana
Senza spam.

In questo articolo vorrei parlare di quali programmi applicativi sono, nonché quali attività applicative possono essere risolti con il loro aiuto (ad esempio, un esempio di un semplice database) e quale ruolo vengono eseguiti per l'utente finale personal computer. Prima di tutto, volevo notare che i computer possono gestire qualsiasi dato che l'utente lo invia. Ma che questi dati sono riconosciuti e compresi correttamente la macchina, è necessario compilare programma speciale Sul suo linguaggio comprensibile o quanto più facile da dire, una serie di istruzioni consecutive per l'esecuzione di determinate azioni.

Visualizzazioni software applicato

I programmi applicativi sono. Tali programmi diretti a risolvere determinati compiti e interagire direttamente con l'utente. I programmi per computer sono necessari per automatizzare qualsiasi procedura, stoccaggio e elaborazione dei dati, modellazione, design, ecc. Processi di elaborazione complessi. I programmi sono solitamente suddivisi in due classi: It programmi di sistema e programmi applicati. Il primo è usato per lo più utilizzato per elaborare le informazioni in entrata da qualsiasi attrezzatura: scheda di rete, schede video, apparecchiature collegate, I.e. Questi sono quei programmi che interagiscono con "hardware" o dispositivi esterni. Ne parleremo nei seguenti articoli. Ma ai programmi secondi applicati, parliamo più dettagliatamente.

I programmi applicativi sono progettati per interagire con l'utente finale, I.e. L'utente in quanto interagisce con se stesso, ma solo attraverso il programma, entra in qualsiasi dato sull'ingresso e riceve un determinato risultato dei dati elaborati all'uscita. Questo è un tipo di soluzione ad un certo attività applicata Ad esempio, questa è le immagini scansionate e la loro successiva elaborazione o ricerca dei file desiderati. L'uso dei programmi applicativi può essere osservato in quasi tutte le sfere dell'attività umana, sia che si tratti di contabilizzazione in un'impresa o nella creazione di immagini grafiche, disegno, ecc. L'uso dei programmi applicativi è presente in sistemi così importanti come sistema di gestione del database. Questo è molto rilevante nelle grandi imprese in cui un gran numero di utenti funzionano e che è molto necessario archiviare e utilizzare grandi quantità di informazioni.

Tipi ed esempi di programmi applicati

I programmi applicativi sono:

  • Editor di testo. Progettato per creare e modificare testo senza registrazione;
  • Processori di testo (MS Word). Editor di testo più avanzati che ti consentono di modificare il testo con la progettazione, cambiare carattere e dimensioni, inserti file grafici, tavoli, ecc. Per un progetto di testo più presentabile;
  • Tabelle elettroniche (MS Excel). Principalmente utilizzato per elaborare qualsiasi dato contenuto in queste tabelle. Attività di applicazione più spesso eseguito per la memorizzazione delle credenziali con la loro analisi successiva;
  • Raster e vettore. editor grafico (Photoshop, Corel), "Viewer". Utilizzo delle applicazioni dell'applicazione di questo tipo ti consente di creare, modificare, nonché immagini grafiche;
  • Audio video lettori, redattori (Winamp). Ti permette di visualizzare video, ascoltare musica, creare composizioni musicali;
  • Sistemi di gestione del database (ad esempio - MSQL). Tali programmi servono a lavorare con i database. Ad esempio, il programma di contabilità del cliente è una base semplice per la memorizzazione delle informazioni sui clienti, i loro dati di contatto, ecc. È possibile eseguire le operazioni per la ricerca, l'eliminazione e l'aggiunta di record al database;
  • Traduttori o dizionari elettronici.. Tali programmi applicati ci consentono di tradurre il testo su diversi sforzi lingue straniere senza impararli direttamente;
  • Giochi per computer. Usato per l'intrattenimento o per lo sviluppo in una forma di gioco.

Un esempio di un programma applicativo può servire, ad esempio, un programma di reputazione. Tutti i tipi di programmi applicati sono difficili da elencare, ma abbiamo provato a evidenziare i programmi software applicati di base.

La classe più numerosa del computer è i programmi applicati.

Applicato da Progettato per garantire l'uso di apparecchiature di calcolo in vari campi dell'attività umana.

Programmi applicativi - Programmi progettati per risolvere compiti specifici Utente.

Una delle possibili opzioni per la classificazione.

Classificazione applicata software Per destinazione

Editor di testo - Un programma destinato solo per la visualizzazione, l'input e il testo di modifica.

Processore di testo - un programma che fornisce la possibilità di entrare, modificare e formattare il testo, nonché l'inserimento in documento di testo Oggetti di natura neetted (grafica, multimedia, ecc.).

Tutti gli editori di testo salvano nel file di testo "pulito" e grazie a questo compatibile insieme.

Diversi processori di testo sono registrati nelle informazioni sui file sulla formattazione in modi diversi e quindi incompatibile insieme.

I componenti principali del processore di testo:

  • Set di font.
  • SpellChecking.
  • Anteprima Le pagine stampate.
  • Combinare documenti, multi-decreti.
  • Autoformatting e Autotipo.
  • Strumenti standard.
  • Editor e calcolatore tabulari.
  • Inserire oggetti grafici.

Esempi - MS Word, Write, WordPerfect, Ami Pro, MultitIt, Lexicon, Refist

Sistemi di pubblicazione - Siamo necessari per preparare documenti di qualità tipografica, layout del computer (associazione di testo e grafica nel libro, rivista, brochure o giornali).

Esempi - Corel Ventura, QuarkXpress, Adobe PageMaker, MS Publisher, FrameMaker

Informazioni grafiche - Informazioni o dati presentati sotto forma di schemi, schizzi, immagini, grafici, grafici, simboli.

Editor grafico - Programma per creare, modificare, visualizzare immagini grafiche.

I componenti principali dell'editor grafico:

  • Set di font, lavoro con il testo.
  • Strumenti standard.
  • Biblioteca di immagini.
  • Combinare le immagini.
  • Effetti speciali.

Differiscono in totale tre tipi. computer Graphics. . esso grafica raster, grafica vettoriale e grafica frattale. Differiscono nei principi della formazione dell'immagine durante la visualizzazione sullo schermo del monitor o quando si stampa su carta.

La grafica raster viene utilizzata nello sviluppo di pubblicazioni elettroniche (multimediali) e di stampa.

Illustrazioni realizzate dalla grafica raster raramente crea manualmente usando programmi per computer. Più spesso per questa scoperta Scansione illustrazioni preparate dall'artista su carta o fotografia. Di recente per entrare immagini di raster. La foto digitale e le videocamere sono state ampiamente utilizzate per il computer.

I grafici frattali sono usati raramente per creare stampati o documenti elettroniciMa è spesso usato nei programmi di intrattenimento

Esempi - Vernice, Pennello, CorelDRAW, MS PhotoEDDITOR, Adobe Photoshop., 3D Max Studio

DBMS. (Sistema di gestione del database) - progettato per automatizzare le procedure per la creazione, la memorizzazione ed estrarre dati elettronici (elaborazione degli array di informazioni).

Esempi - DBASE, Paradox, MS Access, Oracle, FoxPro

Sistemi intergavati ci sono due tipi

  • Pacchetti di applicazione tradizionali (completi) (PPP).
  • Pacchetti di programmi applicativi con integrazione correlata all'oggetto

PPP tradizionale

Integrato pacchetto software È un pacchetto autonomo multifunzionale, in cui le funzioni e le funzionalità di vari pacchetti specializzati (orientati al problema) sono combinati in uno. Questi programmi integrano le funzioni dell'editor di testo, DBMS e il processore tabulare. In generale, il costo di tale pacchetto è molto inferiore al valore totale dei pacchetti specializzati simili.

Nell'ambito del pacchetto, la comunicazione tra i dati è fornita, tuttavia, le possibilità di ciascun componente sono ristrette rispetto a un pacchetto specializzato simile.

Una situazione tipica è quando i dati ottenuti dal database devono essere elaborati agli strumenti del processore della tabella, inviare graficamente, quindi inserire nel testo. Per eseguire il lavoro di questo tipo, esistono il cosiddetto. Pacchetti integrati - Software che combina funzionalità, caratteristica di editor di testo., sistemi grafici, fogli di calcolo, database e altro software. Naturalmente, tale combinazione di opportunità è raggiunta a spese di compromesso. Alcune possibilità sono in pacchetti integrati limitati o implementati non completamente. Questo vale, prima di tutto, la ricchezza dei comandi per il trattamento del database e del foglio di calcolo, la loro dimensione, la macro-lingua. Tuttavia, i vantaggi creati dall'interfaccia unificata combinati nel pacchetto integrato del software sono indiscutibili.

Apri Accesso Pacchetti di accesso aperto, società quadro Ashton-Tate, Lotus 1-2-3 e Symphony Stry Lotus Development Corporation, sono noti opere di loto.

PPP con integrazione correlata all'oggetto

Questa è una combinazione di pacchetti specializzati all'interno di un singolo database di risorse, fornendo interazione applicativa (programmi di pacchetto) a livello di oggetti e un singolo interruttore centrale semplificato tra i programmi.

L'integrazione implica dare i componenti del complesso di uniformità dal punto di vista della loro percezione e tecniche di lavorare con loro. La conversazione delle interfacce è implementata sulla base di pittogrammi e menù uniformi, dialogi, ecc. In definitiva, questo aiuta ad aumentare la produttività e ridurre il periodo di sviluppo.

Una caratteristica di questo tipo di integrazione è quella di utilizzare le risorse condivise. Tipi di accesso congiunto alle risorse:

  • l'uso di utilità comuni a tutti i programmi software (controllo ortografico);
  • l'uso di oggetti che possono essere nella condivisione di diversi programmi;

In termini di servizi di condivisione, diverse applicazioni hanno due norme principali:

  • layout dinamico e incorporare oggetti Collegamento dell'oggetto e incorporato OLE da Microsoft;
  • Opendoc ( aprire il documento) Aziende di Apple, Boriartd, IBM, Novell e WordPerfect.

Il meccanismo del layout dinamico degli oggetti consente all'utente di inserire le informazioni create da un'applicazione al documento formabile da un altro. Allo stesso tempo, l'utente può modificare le informazioni in un nuovo documento tramite il programma con cui questo oggetto è stato creato.

Anche questo meccanismo Consente di trasferire oggetti OLE da una singola finestra dell'applicazione all'altra finestra.

OpenDoc è un sistema orientato agli oggetti basato su standard aperti Aziende - partecipanti allo sviluppo. Come modello di un oggetto, viene utilizzato un modello distribuito di oggetti di sistema (DSOM - Sistema distribuito Modello di oggetti.), sviluppato iBM. Per OS / 2.

  • i saldi metodo semplice transizione da una domanda a un'altra;
  • disponibilità di strumenti di automazione con un'applicazione (macro-lingua).

Esempi: Borland Office per Windows., Lotus SmartSute per Windows, MS Office.

Sistema esperto - Sistema intelligenza artificiale, costruito sulla base di una profonda conoscenza speciale di un ristretto area tematica (ricevuta dagli esperti - specialisti in questa zona). ES sono progettati per risolvere i problemi con incertezza e dati di origine incompleti che richiedono competenze da risolvere. Inoltre, questi sistemi dovrebbero essere in grado di spiegare il loro comportamento e la loro decisione. Le caratteristiche distintive sono la capacità di accumulare conoscenze ed esperienze di specialisti qualificati (esperti) in qualsiasi regione. Utilizzando queste conoscenze, gli utenti degli utenti che non hanno le qualifiche necessarie possono risolvere i loro compiti quasi il successo come gli esperti. Tale effetto è raggiunto a causa del fatto che il sistema nel suo lavoro riproduce approssimativamente la stessa catena di ragionamento come una persona esperta.

Principali onori sistemi esperti Da altri programmi è la loro adattabilità, cioè. variabilità nel processo di auto-studio.

È consuetudine allocare in ES tre moduli principali: modulo base della conoscenza, modulo di uscita logico, interfaccia utente.

I sistemi esperti sono utilizzati in varie sfere dell'attività umana - scienza (classificazione degli animali e delle piante da tipi, analisi chimiche), in medicina (diagnosi, analisi degli elettrocardiogrammi, determinazione dei metodi di trattamento), in una tecnica (risoluzione dei problemi in dispositivi tecnici, monitorando il volo di veicoli spaziali e satelliti), in esplorazione geologica, in economia, in scienze politiche e sociologia, forense, linguistica e molti altri. Ci sono sia CE e "conchiglie" altamente specializzate, utilizzando il quale, puoi, senza essere un programmatore, creare i tuoi ES.

Ipertesto - Questa è la forma dell'organizzazione del materiale di testo non in sequenza lineare, ma sotto forma di indicazioni di possibili transizioni (collegamenti), connessioni tra singoli frammenti. Nei sistemi ipertestuali, le informazioni assomigliano al testo dell'enciclopedia e l'accesso a qualsiasi frammento di testo selezionato viene effettuato arbitrariamente per riferimento. L'organizzazione di informazioni nell'ipertesto viene utilizzata durante la creazione manuali di riferimento, dizionari, assistenza contestuale in programmi applicati.

Sistemi multimediali. - Programmi che garantiscono l'interazione di effetti visivi e audio sotto il controllo del software interattivo.

Braccio - Posto di lavoro automatizzato.

Asni. - Sistemi automatizzati di ricerca scientifica.

sindrome coronarica acutasistema automatico Controllo.

Applicazioni utente applicazioni creato dall'utente utilizzando gli strumenti di programmazione disponibili a sua disposizione come parte di un particolare ambiente informatico. In questo caso, la creazione e il debug dei programmi sono effettuati individualmente, in conformità con le regole e gli accordi del PPP o del sistema operativo, in cui sono applicati.

L'output in questi casi è l'uso del cosiddetto ambienti software applicati.Uno dei componenti che formano l'ambiente del programma applicativo è un insieme di funzionalità dell'interfaccia di programmazione dell'applicazione API che il sistema operativo fornisce le sue applicazioni. Per ridurre il tempo per eseguire i programmi di altre persone, i supporti applicati imitare l'accesso alle funzioni della libreria.

L'efficacia di questo approccio è correlata al fatto che la maggior parte dei programmi di oggi è in esecuzione GUI (interfaccia utente grafica "interfacce utente) del tipo di finestrino, Mac o Motivo Unix, mentre le applicazioni trascorrono la maggior parte del tempo, producendo un po ' azioni prevedibili. Esegui continuamente le chiamate delle biblioteche della GUI per manipolare le finestre e per gli altri associati alle azioni della GUI. Oggi nei programmi tipici del 60-80% del tempo viene speso per l'esecuzione delle funzioni GUI e da altre chiamate della libreria OS. È questa proprietà di applicazioni che consentono ai media applicati di compensare il tempo trascorso del tempo trascorso per l'emulazione secondaria del programma. Un ambiente applicato del software accuratamente progettato ha una biblioteca che imita le librerie della GUI interna, ma scritta sul codice "nativo", e questo raggiunge una significativa accelerazione dei programmi dall'altra API sistema operativo. A volte questo approccio è chiamato la trasmissione per distinguerlo da un codice più lento per l'emulazione del codice su un comando alla volta.

Ad esempio, per un programma Windows in esecuzione su Macintosh, quando si interpretano i comandi del processore Intel 80x86, le prestazioni possono essere molto basse. Ma quando viene chiamata la funzione di apertura della GUI, il modulo OS che implementa l'applicazione Windows può anche intercettare questa chiamata e reindirizzarlo alla subroutine di subroutine di apertura Motorola 680x0. Di conseguenza, in tali sezioni del codice, la velocità del programma può ottenere (e possibilmente superare) la velocità del lavoro sul suo processore "nativo".

Affinché il programma scritto per un sistema operativo, potrebbe essere fatto all'interno del quadro di un altro sistema operativo, non è sufficiente garantire l'API di compatibilità. I concetti basati su un sistema operativo diversi possono essere contrari tra loro. Ad esempio, in un sistema operativo, un'applicazione può essere consentita di controllare direttamente i dispositivi I / O, in un altro  queste azioni sono il sistema operativo prerogativo. Ogni sistema operativo ha i propri meccanismi di protezione delle risorse, i suoi errori di gestione degli algoritmi e le situazioni eccezionali, una struttura speciale del sistema di gestione del processo e della memoria, la sua semantica di accesso ai file e un'interfaccia grafica dell'utente. Per garantire la compatibilità, è necessario organizzare la coesistenza non fluida all'interno di un sistema operativo diversi metodi per la gestione delle risorse del computer.

3. 7. 3. Modi per implementare ambienti software applicativi

La creazione di un ambiente applicato a pieno titolo, completamente compatibile con un sistema operativo diverso, è un compito piuttosto complicato, strettamente correlato alla struttura del sistema operativo. Esistono varie opzioni per costruire ambienti applicati multipli, caratterizzati da entrambe le caratteristiche di soluzioni architettoniche e funzionalità che garantiscono un grado diverso di portabilità delle applicazioni.

In molte versioni dell'UNIX, il traduttore dell'applicazione è implementato come un'applicazione regolare. Nei sistemi operativi costruiti utilizzando un concetto di micronucleare, ad esempio, ad esempio, Windows NT, gli ambienti applicati vengono eseguiti come server della modalità utente. E in OS / 2, con la sua architettura più semplice, i mezzi per organizzare gli ambienti di applicazione sono costruiti in profondità nel sistema operativo.

Una delle forme di realizzazione più ovvie di più supporti applicati si basa su una struttura del sistema operativo multilivello standard. In fig. 3. 8 Il sistema operativo OS1 sale ad eccezione del suo sistema operativo "nativo" applicazioni applicazioni OS2. Per fare ciò, vi è una domanda speciale nella sua composizione - un ambiente del programma applicativo che traduce l'interfaccia "alieno" del sistema operativo OPI OS2 nell'interfaccia del suo sistema operativo nativo - API OS1.

Fico. 3. 8. Applicazione softwareChiamate di sistema di trasmissione

In un'altra forma di realizzazione di più ambienti di applicazione, il sistema operativo ha diversi programmi di applicazione uguale. In quello mostrato in fig. 3. 9 Ad esempio, il sistema operativo S-Steam supporta le applicazioni scritte per OS1, OS2 e OS3. Per fare ciò, direttamente nel sistema del kernel del sistema sono posizionati applicati interfacce software Tutti questi operativi: API OS1, API OS2 e API OS3.

Fico. 3. 9. L'implementazione della compatibilità in base a diverse API uguali

In questa forma di realizzazione, le funzioni del livello API si riferiscono al funzionamento del livello sottostante del sistema operativo, che devono mantenere tutte e tre nel supporto applicato incompatibile del caso generale. In un sistema operativo diverso, il tempo di sistema è gestito in modo diverso, viene utilizzato un formato temporale diverso, sulla base dei propri algoritmi, il tempo del processore è suddiviso, ecc. Le funzioni di ciascuna API sono implementate da un nucleo tenuto conto delle specifiche di il sistema operativo corrispondente, anche se hanno uno scopo simile.

Un altro modo per costruire più supporti applicati si basa su un approccio micronucleare. È molto importante separare la base, comune per tutti gli ambienti applicati, i meccanismi del sistema operativo dalle funzioni di alto livello specifiche per ciascuno dei supporti applicati che decidono le attività strategiche.

In conformità con l'architettura del micronucleo, tutte le funzioni del sistema operativo sono implementate da microkernel e server della modalità utente. È importante che ciascun ambiente applicato venga rilasciato come server della modalità utente separato e non include i meccanismi di base (Fig. 3. 10). Le applicazioni che utilizzano API sono riferite alle sfide del sistema a un ambiente applicato applicato attraverso un microker. Ambiente applicato elabora una richiesta, lo esegue (eventualmente riferendosi a questo per aiuto funzioni base Microofer) e invia l'app dei risultati. Durante l'esecuzione dell'applicazione dell'ambiente applicato, a sua volta, per fare riferimento ai meccanismi di base del sistema operativo, implementato dal microkernel e da altri server OS.

Fico. 3. 10. Approccio microlound all'attuazione di più supporti applicati

Questo approccio alla progettazione di più ambienti applicati è inerente a tutti i vantaggi e svantaggi dell'architettura microarica, in particolare:

    È molto facile aggiungere ed eliminare i media applicati, che è una conseguenza di una buona espansione del sistema operativo micronucleare;

    affidabilità e stabilità sono espresse nel fatto che con il fallimento di uno degli ambienti applicati, tutti gli altri conservano le prestazioni;

    bassa produttività del sistema operativo microdeternale influisce sulla velocità degli ambienti applicativi e pertanto alla velocità di esecuzione delle applicazioni.

La creazione di un supporto applicazione multiplo all'interno di un sistema operativo per eseguire applicazioni di vari sistemi operativi è un percorso che consente di disporre di una singola versione del programma e trasferirla tra i sistemi operativi. Ambienti applicati multipli Forniscono la compatibilità a livello binario di questo sistema operativo con applicazioni scritte per altri sistemi operativi. Di conseguenza, gli utenti ricevono una maggiore libertà di scegliere i sistemi operativi e un accesso più facile al software di alta qualità.

Domande per auto-test

    Cosa capiscono sotto l'architettura del sistema operativo?

    Quali tre strati principali sono fatti per allocare nella struttura del sistema di elaborazione?

    Quale ruolo è assegnato all'interfaccia di chiamata di sistema?

    Quali condizioni nella progettazione del sistema operativo dovrebbero essere osservate in modo che il sistema operativo sia facilmente trasferito?

    Qual è la differenza tra architettura micronucleare dall'architettura del sistema operativo tradizionale?

    Perché micro-radicalmente adatto per il supporto dell'informatica distribuita?

    Cosa si intende sotto il concetto di più ambienti applicati?

    Qual è l'essenza del metodo di trasmissione della biblioteca?

La creazione di un ambiente applicato a pieno titolo completamente compatibile con l'ambiente dell'altro sistema operativo è un compito piuttosto complicato, strettamente correlato alla struttura del sistema. Ci sono varie opzioni per costruire ambienti applicati multipli, caratterizzati da entrambe le caratteristiche delle soluzioni architettoniche e funzionalitàFornire vari gradi di tolleranza delle applicazioni .

In molte versioni dell'UNIX, il traduttore dell'applicazione è implementato come un'applicazione regolare. Nel sistema operativo, costruito utilizzando un concetto di micronucleare, come ad esempio, Windows NT o OS Workplace OS, gli ambienti applicati vengono eseguiti come server della modalità utente. E in OS / 2, con la sua architettura più semplice, i mezzi per organizzare ambienti applicati sono costruiti in profondità nel sistema operativo. Una delle forme di realizzazione più ovvie di più ambienti applicati si basano sulla struttura standard multilivello del sistema operativo .

Fico. 3.13. Wiral software applicato Chiamate di sistema tradotte

Sfortunatamente, il comportamento di quasi tutte le funzioni che compongono l'API di un sistema operativo, di norma, differisce significativamente dal comportamento delle funzioni corrispondenti dell'altro.

In un'altra forma di realizzazione, l'applicazione multipla del sistema operativo ha diverse interfacce di programmazione delle applicazioni uguali. In quello mostrato in fig. 3.14 L'esempio del sistema operativo supporta le applicazioni scritte per OS1, OS2 e OS3. Per fare ciò, direttamente nel sistema del kernel del sistema è pubblicato le interfacce del software applicativo di tutti questi sistemi operativi: API OS1, OS2 e OS3 API. In questa forma di realizzazione, le funzioni del livello API si riferiscono al funzionamento del livello sottostante del sistema operativo, che devono mantenere tutte e tre nel supporto applicato incompatibile del caso generale.

In un sistema operativo diverso, il tempo di sistema è gestito in modo diverso, viene utilizzato un formato temporale diverso, sulla base dei propri algoritmi, il tempo del processore è suddiviso, ecc. Le funzioni di ciascuna API sono implementate da un nucleo tenuto conto delle specifiche di il sistema operativo corrispondente, anche se hanno uno scopo simile. Ad esempio, come già menzionato, la funzione di creazione dei processi funziona in modo diverso per le applicazioni Unix Application e OS / 2. Allo stesso modo, al completamento del processo, il kernel dovrebbe anche essere determinato in cui il sistema operativo si riferisce a questo processo. Se questo processo è stato creato nella richiesta di applicazione UNIX, quindi durante il suo completamento, il kernel dovrebbe inviare un segnale al processo principale, come eseguito in UNIX. E al completamento del processo OS / 2, il kernel dovrebbe notare che l'identificatore del processo non può essere riutilizzato da un altro processo OS / 2. Affinché il kernel di scegliere la forma di realizzazione desiderata della chiamata di sistema, ogni processo deve essere trasmesso al kernel una serie di caratteristiche identificative.

Fico. 3.14. Compatibilità in base a diverse API uguali

Un altro modo per costruire più supporti applicati si basa su un approccio micronucleare.. È molto importante separare la base, comune per tutti i supporti applicati, i meccanismi del sistema operativo dalle funzioni di alto livello specifici per ciascuno dei supporti applicati che decidono le attività strategiche.

In conformità con l'architettura del micronucleo, tutte le funzioni del sistema operativo sono implementate da microkernel e server della modalità utente. È importante che ciascun ambiente applicato venga rilasciato come server della modalità utente separato e non include i meccanismi di base (Fig. 3.15). Le applicazioni che utilizzano API sono riferite alle sfide del sistema a un ambiente applicato applicato attraverso un microker. L'ambiente di applicazione elabora la query, lo esegue (eventualmente facendo riferimento a questa guida alle funzioni di base del microkerboard) e invia il risultato da parte dell'applicazione. Durante l'esecuzione dell'applicazione dell'ambiente applicato, a sua volta, per fare riferimento ai meccanismi di base del sistema operativo, implementato dal microkernel e da altri server OS.

Questo approccio alla progettazione di più ambienti applicati è inerente a tutti i vantaggi e svantaggi dell'architettura microarica, in particolare:

§ È molto facile aggiungere ed escludere i media applicati, che è una conseguenza di una buona espansione del sistema operativo micronucleare;

§ Affidabilità e stabilità sono espresse nel fatto che con il fallimento di uno degli ambienti applicati, tutti gli altri conservano le prestazioni;

§ La bassa produttività del sistema operativo micronucleare influisce sulla velocità di applicazione dei supporti applicati e pertanto alla velocità di esecuzione delle applicazioni.

Fico. 3.15. Un approccio microdendico all'attuazione di più supporti applicati

Creazione all'interno di un sistema operativo Ambienti applicazioni multipli per l'esecuzione di applicazioni di vari sistemi operativi è un percorso che consente di disporre di una singola versione del programma e trasferirla tra i sistemi operativi. Ambienti applicati multipli Forniscono la compatibilità a livello binario di questo sistema operativo con applicazioni scritte per altri sistemi operativi. Di conseguenza, gli utenti ricevono una maggiore libertà di scelta del sistema operativo e un accesso più facile al software di alta qualità.

Conclusioni:

§ La struttura del sistema operativo più semplice consiste nel separare tutti i componenti del sistema operativo sui moduli che eseguono le funzioni di base del sistema operativo (kernel) e dei moduli che eseguono le funzioni ausiliarie del sistema operativo. I moduli del sistema operativo ausiliaria sono emessi come applicazioni (programmi di utilità e programmi di elaborazione del sistema) o sotto forma di procedure di biblioteca. I moduli ausiliari vengono caricati in memoria operativa solo al momento delle sue funzioni, cioè sono transiti. I moduli del kernel sono costantemente in memoria ad accesso casualecioè, sono residenti.

§ Se è presente un supporto hardware per le modalità con diversi livelli di poteri, la stabilità del sistema operativo può essere aumentata eseguendo le funzioni del kernel in modalità privilegiata e i moduli ausiliari del sistema operativo e delle applicazioni sono nell'utente. Ciò consente di proteggere i codici e i dati del sistema operativo e delle applicazioni da accesso non autorizzato. Il sistema operativo può fungere da arbitro nelle controversie di applicazioni per le risorse.

§ Core, essere elemento strutturale OS, a sua volta, può essere logicamente decomposto sui seguenti livelli (partendo dal più basso):

§ componenti dipendenti dalla macchina del sistema operativo;

§ Meccanismi del kernel di base;

§ Gestori di risorse;

§ Interfaccia di chiamata del sistema.

§ Nel sistema multistrato, ciascun livello serve lo strato sovrastante, eseguendo un determinato set di funzioni per questo che formano un'interfaccia intercalante. Sulla base delle funzioni del livello sottostante, la parte superiore dello strato della gerarchia costruisce le sue funzioni - più complesso e più potente, che, a sua volta, risulta essere primitivi per creare funzioni ancora più potenti dello strato sovrastante. L'organizzazione multistrato del sistema operativo semplifica significativamente lo sviluppo e la modernizzazione del sistema.

§ Qualsiasi sistema operativo per risolvere le attività interagisce con hardware del computer, in particolare: mezzi per supportare l'indirizzo privilegiato e l'indirizzo di traduzione, i processi per cambiare e proteggere le aree di memoria, il sistema di interrupt e il timer di sistema. Questo rende il sistema operativo dipendente dalla macchina associata a una specifica piattaforma hardware.

§ La portabilità del sistema operativo può essere ottenuta soggetta alle seguenti regole. Innanzitutto, la maggior parte del codice deve essere scritta nella lingua i cui traduttori sono disponibili su tutti i computer in cui il sistema dovrebbe essere trasferito. In secondo luogo, il volume delle parti dipendenti dalla macchina del codice che interagire direttamente con l'hardware deve essere ridotto al minimo se possibile. In terzo luogo, il codice dipendente dall'hardware deve essere localizzato in modo affidabile in diversi moduli.

§ L'architettura micronucleare è un'alternativa al metodo classico per costruire un sistema operativo, in base al quale tutte le funzioni di base del sistema operativo, costituiscono il kernel multistrato, vengono eseguite in modalità privilegiata. Nel sistema operativo micronucleo in modalità privilegiata, solo una parte molto piccola del sistema operativo, chiamata microniere, rimane. Tutte le altre funzioni principali di alto livello vengono effettuate sotto forma di applicazioni in esecuzione in modalità utente.

§ I microosiosi soddisfano la maggior parte dei requisiti per il sistema operativo moderno, con tolleranza, estensibilità, affidabilità e creazione di buoni prerequisiti per supportare applicazioni distribuite. Per questi vantaggi, è necessario pagare una diminuzione delle prestazioni, che è il principale svantaggio dell'architettura micronucleare.

§ Ambiente software applicato - Un set di fondi del sistema operativo destinati all'organizzazione di applicazioni di esecuzione utilizzando un sistema specifico di comandi della macchina, un tipo specifico API e un formato specifico del programma eseguibile. Ogni sistema operativo crea almeno un ambiente del programma applicativo. Il problema è garantire la compatibilità di diversi supporti software all'interno di un sistema operativo. Quando si costruiscono più ambienti applicati, vengono utilizzate varie soluzioni architettoniche, il concetto di emulazione del codice binario, la trasmissione dell'API.

Compiti ed esercizi

1. Quali termini qui sotto sono sinonimi?

§ Modalità privilegiata;

§ modalità protetta;

§ Modalità supervisore;

§ Modalità personalizzata;

§ Modalità reale;

§ Modalità del kernel.

2. Posso analizzare codice binario Programmi, presentano una conclusione sull'impossibilità della sua esecuzione in modalità utente?

3. Qual è la differenza nel processore nelle modalità privilegiate e utente?

4. Idealmente, l'architettura micronucleare del sistema operativo richiede solo quei componenti del sistema operativo, che non possono essere eseguiti in modalità utente. Ciò che rende gli sviluppatori di sistemi operativi da questo principio ed espandi il nucleo trasferendo le funzioni in esso che potrebbero essere implementate sotto forma di processi server?

5. Quali fasi includono lo sviluppo di un'opzione del sistema operativo mobile per una nuova piattaforma hardware?

6. Descrivere la procedura per l'interazione di applicazioni dal sistema operativo, che ha un'architettura micronucleare.

7. Quali fasi sono le prestazioni di una chiamata di sistema in un sistema operativo micronucleare e sistema operativo con un nucleo monolitico?

8. Un programma emulato sul processore "Estratto del processore", viene eseguito più velocemente di "nativo"?

Concetto di architettura microdicata

Compatibilità binaria e compatibilità dei testi di origine

Compatibilità binaria - il tipo di compatibilità del programma che consente al programma di lavorare ambienti diversi Senza cambiare i suoi file eseguibili.

Questo termine è spesso utilizzato nel valore "Compatibilità dei sistemi operativi", e in questo caso significa che la capacità della versione già compilata del programma per un sistema operativo funzioni in un altro sistema operativo senza ricompilazione. La compatibilità binaria include la straordinaria compatibilità dei campi di download, l'identità completa della funzione delle funzioni di chiamata, della trasmissione delle variabili e ottenere i risultati del calcolo e l'implementazione completa dell'interfaccia di programmazione. Allo stesso tempo, l'implementazione tecnicamente può essere completamente diversa - la cosa principale è che tutte le sfide siano attuate e che portano al risultato atteso, e come questo risultato è raggiunto, decidono i creatori del programma.

La compatibilità a livello di testi di origine richiede la presenza del corrisoltore corrispondente come parte del software, nonché la compatibilità a livello di libreria e chiamate di sistema. Ciò richiede ricompilizzazione dei testi di origine esistenti in un nuovo modulo.

L'architettura micronucleare è un'alternativa al metodo classico per costruire un sistema operativo, in base al quale tutte le funzioni di base del sistema operativo, che costituiscono un kernel multistrato vengono eseguite in modalità privilegiata. Nel sistema operativo micronucleo in modalità privilegiata, solo una parte molto piccola del sistema operativo, chiamata microniere, rimane. Tutte le altre funzioni principali di alto livello vengono effettuate sotto forma di applicazioni in esecuzione in modalità utente. Mine-Core Os soddisfa la maggior parte dei requisiti per il sistema operativo moderno, con tolleranza, estensibilità, affidabilità e creazione di buoni prerequisiti per supportare applicazioni distribuite. Per questi vantaggi, è necessario pagare una diminuzione delle prestazioni, che è il principale svantaggio dell'architettura micronucleare.

Una delle forme di realizzazione più apparenti di più ambienti di applicazione è basata sulla struttura del sistema operativo multilivello standard.

OS1, oltre alle sue applicazioni, supporta applicazioni OS2 e OS3. Per fare ciò, la sua composizione ha applicazioni speciali, ambienti software applicativi che traducono le interfacce dei soci dell'API API e API OS3 nell'interfaccia del loro OS1 API nativo.

Un'altra implementazione di più ambienti applicati implica la presenza di diverse interfacce del software di applicazione uguale in OS.

Nel sistema del sistema, le interfacce del programma applicativo di tutti i sistemi operativi sono pubblicate.



Le funzioni del livello API si riferiscono alle funzioni del livello sottostante del sistema operativo, che devono supportare 3 (in questo caso) supporti incompatibili.

Le funzioni di ciascuna API sono implementate dal kernel, tenendo conto delle specifiche del sistema operativo corrispondente, anche se hanno uno scopo simile.

Un altro modo per costruire più supporti applicati si basa su un approccio micronucleare. È importante separare i meccanismi di base e comuni dei meccanismi del sistema operativo per tutti gli ambienti applicati.

In conformità con l'architettura del micronucleo, tutte le funzioni del sistema operativo sono implementate da microkernel e server della modalità utente.

È importante che ciascun ambiente applicato venga rilasciato come server della modalità utente separato e non include i meccanismi di base.

L'applicazione che utilizza API si riferisce alle sfide del sistema per l'ambiente applicato applicato attraverso un microker.

L'ambiente applicato forma una query, lo esegue e invia il risultato da parte dell'applicazione. Durante la richiesta dell'ambiente applicato, è necessario accedere ai meccanismi di base del sistema operativo, implementato da microkernel e altri server OS.

Questo approccio alla progettazione di multipli supporti applicati è inerente a tutti i vantaggi e svantaggi dell'architettura micronucleare.

La campana.

Ci sono quelli che hanno letto questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere la campana
Senza spam.