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

Anche con centinaia di migliaia di programmi PC, gli utenti potrebbero aver bisogno di qualcosa che non è fatto (o fare, ma non così) programmi disponibili. In questi casi, per creare nuovi programmi, viene utilizzato un software strumentale, consentendo di sviluppare sia il sistema che applicato software. Di conseguenza, gioca nella programmazione del ruolo dei mezzi di produzione.

Sistemi di programmazione- Questi sono complessi di programmi e altri mezzi destinati allo sviluppo e al funzionamento dei programmi in un particolare linguaggio di programmazione per una specifica architettura PC (piattaforma).

Il sistema di programmazione di solito entra editor di testo Programmi, traduttoreprogrammi, biblioteche Subrogramma I. revisione editor., debugger, I sistemi di riferimento e talvolta vari programmi ausiliari.

Linguaggio di programmazione- Questa è una lingua artificiale, con l'aiuto di cui è registrato l'algoritmo per risolvere il problema nella forma di un PC comprensibile.

Ci sono molti linguaggi di programmazione, e ognuno può avere dozzine di versioni. Ogni programmatore scrive programmi nella lingua che è conveniente per lui, e non esiste un linguaggio di programmazione che è considerato generalmente accettato.

Ma tutti i linguaggi di programmazione hanno una proprietà comune. Sono comprensibili per i programmatori, ma incomprensibili per il processore, poiché il processore può funzionare solo con numeri binari e quindi comprende i programmi registrati solo in codice macchina. Pertanto, i programmi registrati in qualsiasi linguaggio di programmazione prima "Traduci" nella lingua del processore, I.e. Girare nel codice della macchina. Questa traduzione viene eseguita da speciali traduttori del programma. In inglese "La traduzione" è chiamata trasmissione (traduzione), quindi vengono chiamati programmi che traducono i programmi nella lingua del codice della macchina sono chiamati traduttore.

Nel palcoscenico trasmissionela conversione avviene codice sorgenteprogrammi B. codice oggettoche viene elaborato ulteriormente editor di connessioni.Editor di connessione - programma specialeFornire la costruzione modulo di avvioAdatto per l'esecuzione (Fig. 6.2).

Fico. 6.2. Lo schema del processo di creazione di un modulo di avvio del programma

I seguenti tipi di traduttori distinguono: interprete, compilatore.

Interprete Prende il prossimo operatore linguistico dal testo del programma, analizza la sua struttura e si esegue immediatamente. Quindi va al prossimo operatore. Compilatoretraduce l'intero programma in comandi macchina.

I seguenti sono più popolari dai linguaggi di programmazione universali oggi: Basic (Basic), Pascal (Pascal), C ++ (C ++), Java (Java).

Per ognuno di questi linguaggi di programmazione oggi ci sono molti sistemi di programmazione fabbricati da varie aziende e orientati PC e sistemi operativi orientati. I più popolari sono i seguenti ambienti visivi Programmi di design veloce per Windows: Microsoft Visual Basic; Borland Delphi; Borland C ++ Builder; Microsoft Visual Studio (Visual Basic.net, C ++, C #, J #).

Sistemi moderni La programmazione consente di creare programmi chiamati durante la visualizzazione delle pagine Web in Internet globale.

La classe speciale dei sistemi di programmazione è sistemi per la creazione di applicazioni client-server. Questi sistemi ti consentono di creare rapidamente sistemi di informazione Per divisioni e persino grandi imprese. Contengono mezzi per creare interfaccia utente, Descrizioni delle procedure di elaborazione dei dati, spazi vuoti per eseguire azioni standard di elaborazione dei dati, ecc. Questi sistemi tendono a lavorare con il DBMS più diverso - Oracle, Sybase, Microsoft SQL. Server et al. Tra i più sistemi popolari Questo tipo può essere chiamato PowerBuilder dell'azienda Sybase, Delphi Company Borland, Visual Basic Companys of Microsoft. Naturalmente, gli strumenti per la creazione di applicazioni tipo client-server sono anche come parte del DBMS del tipo client-server (Oracle, Sybase, ecc.), Ma sono focalizzati solo su questo DBMS.

1. Classificazione del software

La nomina del computer è l'esecuzione dei programmi. Il programma contiene comandi che determinano la procedura per l'azione del computer. Una combinazione di programmi per computer forme software (software) . La funzione funzionale distingue il software e il software dell'applicazione.

Nella prima approssimazione, tutti i programmi in esecuzione sul computer possono essere suddivisi in tre categorie (vedere la figura):

1. Programmi applicativigarantire direttamente l'esecuzione degli utenti necessari del lavoro;

2. programmi di sistema Esecuzione di varie funzioni ausiliarie, ad esempio:

    gestione delle risorse del computer;

    creando copie di informazioni utilizzate;

    controllo delle prestazioni dei dispositivi informatici;

    emissione informazioni di riferimento sul computer e altri;

3. strumentale sistemi software facilitare il processo di creazione di nuovi programmi software.

Quando si crea una classificazione, è necessario considerare il fatto che il rapido sviluppo attrezzature per computer E l'espansione dell'ambito dell'applicazione del computer ha notevolmente accelerato il processo dell'evoluzione del software.

Se in precedenza è stato possibile elencare le principali categorie di sistemi operativi, traduttori, pacchetti applicativi, ora la situazione è cambiata radicalmente.

Lo sviluppo del software è andato in profondità (nuovi approcci sembravano costruire sistemi operativi, linguaggi di programmazione, ecc.) E Styling (i programmi applicati hanno cessato di essere applicato e acquisito valore indipendente).

Il rapporto tra il software relativo al software e il mercato è disponibile molto rapidamente. Persino i prodotti software classici, come i sistemi operativi, sono continuamente in via di sviluppo e somministrati con funzioni intellettuali, molte delle quali sono state precedentemente trattate solo alle capacità umane intellettuali.

Inoltre, sono apparsi programmi non convenzionali, che sono molto difficili classificare quale in criteri accertati, ed è semplicemente impossibile, come, ad esempio, il programma è un interlocutore elettronico.

Ad oggi, possiamo dire che i seguenti gruppi di software hanno sviluppato più o meno:

    sistemi operativi e conchiglie;

    sistemi di programmazione (traduttori, biblioteche di subroutine, debugger, ecc.);

    sistemi strumentali;

    pacchetti software integrati;

    fogli di calcolo dinamico;

    sistema di grafica della macchina;

    sistemi di gestione del database (DBMS);

    software applicativo.

La struttura del software è mostrata nella figura. Naturalmente, questa classificazione non può essere considerata esauriente, ma riflette più o meno o meno o meno chiaramente le direzioni di miglioramento e sviluppo del software.

Sistema operativo (OS) -System Programmi progettati per gestire i dispositivi del computer, l'elaborazione e la gestione della memorizzazione dei dati, l'interfaccia utente.

Il sistema operativo è solitamente memorizzato in memoria esterna Computer - sul disco. Quando si accende il computer, viene letta dalla memoria del disco e viene posizionata in RAM.
Questo processo è chiamato caricamento sistema operativo.

La funzione del sistema operativo include:

Dialogo di esercizio con l'utente;
Immissione e gestione dei dati;
Pianificazione e organizzazione del processo di elaborazione del programma;
distribuzione delle risorse (RAM e cache, processore, dispositivi esterni);
Avvio di programmi per l'esecuzione;
ogni sorta di operazioni di supporto;
Trasferimento di informazioni tra differenti dispositivi interni;
supporto software Funzionamento dei dispositivi periferici (display, tastiere, unità disco, stampante, ecc.).

A seconda del numero di attività e numeri e numeri elaborati simultaneamente che possono servire il sistema operativo, ci sono quattro principali sistemi operativi:

1. scambio singolo singolo utente, che supporta una tastiera e può funzionare solo con uno (in questo momento) compito;

2. utente singolo svuotato con sigillo di sfondoche consente di avviare un'attività orientata all'attività aggiuntiva oltre all'attività principale, come regola, per emettere informazioni sulla stampa. Accelera il lavoro quando si emette grandi quantità di informazioni sulla stampa;

3. multitasking per utente singoloCiò fornisce un'elaborazione parallela dell'utente di diverse attività. Ad esempio, è possibile collegare più stampanti a un computer, ognuna delle quali funzionerà su "il tuo" compito;

4. multitasking multiplayer.Consentire a un computer di eseguire più attività a più utenti. Questi sistemi operativi sono molto complessi e richiedono risorse macchine significative.

In vari modelli di computer, vengono utilizzati sistemi operativi con diverse architetture e capacità. Richiede risorse diverse da lavorare. Forniscono un diverso grado di servizio per la programmazione e la lavorazione con programmi pronti.

Sistema operativo per personal computerOrientemente orientato, deve contenere i seguenti componenti principali:

Programmi di gestione in ingresso / uscita;
Programmi di file system Manager e lavori di pianificazione per computer;
Il processore di lingua di comando che accetta, analizza ed esegue comandi indirizzati al sistema operativo.
Ogni sistema operativo ha il proprio linguaggio di comando che consente all'utente di eseguire determinate azioni:
Contatta il catalogo;
Eseguire markup. vettori esterni;
eseguire programmi;
... altre azioni.

Analisi ed esecuzione dei comandi utente, incluso il download del software pronto da file in ram E il loro lancio, esegue il processore di comando del sistema operativo.

I programmi di sistema speciali sono utilizzati per gestire dispositivi informatici esterni, vengono utilizzati driver. I driver del dispositivo standard sono formati dal sistema I / O di base (BIOS), che viene solitamente inserito in un computer costante.

I moderni sistemi operativi per PEVM differiscono l'uno dall'altro, principalmente l'orientamento delle macchine di una certa classe, supportata dalle modalità di trasformazione fornite dalle funzionalità di servizio. Esempi di sistema operativo per PEVM sono CP / M, MS DOS, OS / 2 Warp (IBM), Windows 95 (Microsoft).

Strumentale software - Questi sono programmi utilizzati durante lo sviluppo, la regolazione o lo sviluppo di altri programmi applicati o di sistema.

Nel suo scopo previsto, sono vicini ai sistemi di programmazione. Ai programmi strumentali, ad esempio, appartengono:

    redattori;

    mezzi di programmi di layout;

    debug Programs, I.e. programmi per aiutare a trovare ed eliminare gli errori nel programma;

    programmi ausiliari che implementano frequentemente utilizzati azioni del sistema;

    pacchetti grafici Programmi, ecc.

Il software strumentale può aiutare in tutte le fasi dello sviluppo del software.

Sulla base delle attività impostate prima del software dell'utensile, è possibile distinguere un numero elevato di diversi tipi di software dello strumento:

1) Editor di testo

2) Ambienti di sviluppo integrati

4) Compilatori

5) Interpreti

6) Lynolovers.

7) I giocatori del giocatore di parser (vedi JAVACC)

8) Assemblei.

9) Debugger

10) Profilizers.

11) Generatori di documentazione

12) Analisi della copertura del codice

13) Strumenti di integrazione continua

14) Strumenti di test automatizzati

15) Sistemi di controllo della versione DR.

Va notato che anche le conchiglie per la creazione di applicazioni sono create programmi strumentali E pertanto, può essere attribuito ai programmi applicativi. Considerare brevemente la nomina di alcuni programmi strumentali.

Conclusione

Quindi, riassumendo tutto quanto sopra, va notato che il software strumentale è uno dei tipi di software, che possiede compiti e funzioni comuni.

Tuttavia, essendo un tipo di software altamente specializzato, ha un determinato set di proprietà e funzioni uniche che garantiscono la soluzione delle attività inerenti in esso.

È necessario notare la tendenza emergente per semplificare il processo di programmazione e la creazione di una specifica programmazione della sottoclasse - semi-professionale per scopi applicati.

Ciò consentirà all'utente esperto dell'utente, ma non un programmatore professionale, creare alcune applicazioni e piccoli file eseguiti nell'ambiente Microsoft Office utilizzato principalmente per scopi di gestione contabile e documenti in piccole imprese.

A tal fine, Microsoft è stato sviluppato dal Visual Basic per il pacchetto software per applicazioni, il che rende più facile facilitare il processo di programmazione e ha dato l'opportunità di fornire agli utenti di programmazione delle applicazioni, non i programmatori. Questa funzione è stata implementata principalmente creando una sezione di programma - "Editor script" e la possibilità di registrare ed eseguire "macro" come specie separata moduli graficamente programmabili. Implementato la possibilità di creare applicazioni dall'interfaccia del ramo Mswindows. Anche il vantaggio di questo tipo di software strumentale è EaTersintaxis, Permettendoti di padroneggiare rapidamente la lingua e applicarla per la programmazione in tutto applicazioni standard Microsoft Office.

Pertanto, è difficile sopravvalutare l'importanza del sostegno strumentale in generale, e Visual Basic per la domanda in particolare, sebbene i difetti, sia menzionati in precedenza, avvengono anche. Ma è piuttosto anche aspetti negativi del prodotto e le linee guida per ulteriori miglioramenti del supporto strumentale di fronte alla Visual Basic per l'applicazione.

Elenco delle fonti utilizzate

1. Lingue algoritmiche Tempo reale / ED. Yang S. / 2004

2. Magazine PC Magazine Russian Edition №2 2008. Computer oggi.

3. Informatica. / Ed. Mogilev A.v., Pak n.i., Henner EK / - m.: Academia, 2000.

4. Informatica e tecnologia dell'informazione: manuale / ED. ROMANOVA D.YU. / LLC "Publisher" Eksmo ", 2007.

5. L'enciclopedia più nuova di un personal computer / ed. Leontiev V. / Moscow, 1999. - 271 p.

6. Nuovi linguaggi di programmazione e tendenze nel loro sviluppo / ED. Ushkova V. / 2001

7. PEDAGOGY / ED. Pidciste P.I. / - m.: Società pedagogica, Russia, 2000.

8. Programmazione per Microsoft Excel. 2000 per 21 giorni. / Ed. Harisa M. / - m.: Williams, 2000.

9. Simonovich S. Informatica: corso di base. Studi. Per le università. San Pietroburgo, Peter, 2002

10. Con Excel 2000 senza problemi. / Ed. Kovalski / - m.: Binin, 2000.

11. "Lavoro efficace in Windows 98" / ED. Stinson K. / 2000. - 247 p.

12. Lingue di programmazione. kn.5 / ed. Vauina A.S. / 2003

13. Lingue di programmazione: sviluppo e implementazione / ED. Terrens P. / 2001

14. Libro di testo elettronico di informatica. Alekseev e.g. http://www.stf.mrsu.ru/economic/lib/informatics/text/progr.html.\

Per il software strumentale, entrambi i tipi speciali di software sono caratterizzati da generali e privati

funzioni, nonché per l'intero software nel suo complesso. Le caratteristiche generali sono considerate sopra e funzioni specializzate inerentemente solo questo tipo I programmi sono:

1. Creare il testo del programma sviluppato utilizzando parole di codice appositamente installate (linguaggio di programmazione), nonché un set specifico di caratteri e la loro posizione nella sintassi del programma creata.

2. Traduzione del testo. programma creato Nel codice orientato alla macchina, disponibile per il riconoscimento del computer. In caso di creazione significativa del programma, è diviso in moduli separati e ciascuno dei moduli viene tradotto separatamente.

3. La connessione dei singoli moduli in un unico codice eseguibile, con la conformità con la struttura necessaria, garantendo il coordinamento dell'interazione delle singole parti.

4. Test e controllo del programma creato, identificazione ed eliminazione di formale, logico e errori sintattici, Controllare i programmi per i codici proibiti, nonché la valutazione delle prestazioni e del potenziale del programma creato.

Tipi di software strumentale

Sulla base delle attività impostate prima del software dell'utensile, è possibile distinguere un numero elevato di diversi tipi di software dello strumento:

1) Editor di testo

2) Ambienti di sviluppo integrati

4) Compilatori

5) Interpreti

6) Lynolovers.

7) Parser Parser e Generatori (vedi JAVACC)

8) Assemblei.

9) Debugger

10) Profilizers.

11) Generatori di documentazione

12) Analisi della copertura del codice

13) Strumenti di integrazione continua

14) Strumenti di test automatizzati

15) Sistemi di controllo della versione, ecc.

Va notato che i conchiglie per la creazione di applicazioni sono creati anche da programmi strumentali e quindi possono essere attribuiti a programmi applicati. Considerare brevemente la nomina di alcuni programmi strumentali.

Editor di testo.

Editor di testo -- programma per computerDestinato per l'elaborazione di file di testo come la creazione e l'esecuzione delle modifiche.

Tipi editor di testo..

Assegnazione condizionalmente due tipi di editor: gli editori di testo in streaming einterattivo.

1) Streaming del testo editor

Gli editori di testo del flusso sono programmi per computer che sono destinati al trattamento automatico dei dati del testo di input ottenuti da un file di testo, in conformità con gli utenti predeterminati delle regole. Il più delle volte le regole sono espressioni regolariSu un dialetto specifico del redattore di testo specifico. Un esempio di tale editor di testo può essere l'editor di SED.

2) Editor di testo interattivi

I redattori del testo interattivi sono una famiglia di programmi per computer progettati per apportare modifiche a file di testo nel modalità interattiva. Tali programmi consentono di visualizzare lo stato corrente dei dati del testo nel file e produrre diverse azioni su di esse.

Spesso gli editori di testo interattivi contengono funzionalità aggiuntive significative progettate per automatizzare parte delle azioni di modifica o effettuare una modifica del display dei dati del testo, a seconda della loro semantica. Un esempio della funzionalità dell'ultimo tipo può servire come evidenziazione della sintassi.

Gli editor di testo sono progettati per creare e modificare documenti di testo. MS Word, Lexicon è il più comune. Le funzioni principali degli editor di testo sono:

1) Lavorare con frammenti del documento,

2) Inserisci oggetti creati in altri programmi

3) Documento di testo di rottura sulle pagine

4) Immettere e modificare tabelle

5) Inserisci e modifica le formule

6) Formattazione del paragrafo

7) creazione automatica Elenco

8) Creazione automatica dei contenuti del tavolo.

Sono note dozzine di editor di testo. Il più accessibile è il blocco note (Blocco note), Wordpad, Word. L'editor di testo specifico è solitamente determinato dalle funzioni, lo scopo del quale si riflette nelle voci del menu e nel sistema di guida.

Ambiente di sviluppo integrato

Ambiente di sviluppo integrato, sistema software ISRA utilizzato dai programmatori per lo sviluppo del software (software). Di solito, l'ambiente di sviluppo include:

1) Editor di testo

2) Compilatore e / o interprete

3) Strumenti di automazione di assemblaggio

4) Debugger.

A volte contiene anche strumenti per l'integrazione con i sistemi di controllo della versione e una varietà di strumenti per semplificare la progettazione dell'interfaccia utente grafica. Molti media moderno Gli sviluppi includono anche il browser di classe, l'oggetto dell'oggetto e il grafico della gerarchia delle classi - per l'uso nello sviluppo del software orientato agli oggetti. Sebbene ci siano ambienti di sviluppo destinati a più lingue di programmazione, come Eclipse, Netbeans, Embarcadero Rad Studio, Creatore QT o Microsoft Visual Studio, in genere l'ambiente di sviluppo è destinato a un linguaggio specifico di programmazione, ad esempio, Visual Basic, Delphi, Dev-C ++.

Cassa privata dell'ambiente di sviluppo visivo, che include la possibilità di modificare l'interfaccia del programma.

Sdk. (dal kit di sviluppo software inglese) o "devkit" - un insieme di strumenti di sviluppo che consente agli specialisti del software di creare applicazioni per un pacchetto software specifico, lo sviluppo di base software, la piattaforma hardware, sistema informatico, console di videogiochi, sistemi operativi e altre piattaforme.

Un programmatore di solito ottiene il SDK direttamente dallo sviluppatore della tecnologia o del sistema di destinazione. Spesso l'SDK si applica tramite Internet. Molti SDK sono distribuiti gratuitamente per incoraggiare gli sviluppatori a utilizzare questa tecnologia o piattaforma.

I fornitori di SDK a volte sostituiscono il termine del software nel kit di sviluppo del software di frase per una parola più accurata. Ad esempio, "Microsoft" e "Apple" forniscono kit di sviluppo del driver (DDK) per sviluppare driver di periferica e "Palmsource" chiama il suo toolkit per lo sviluppo del "Kit di sviluppo Palmos (PDK)".

Esempi SDK:

5) Kit di sviluppo Java

6) Dispositivi operai SDK

Compilatori.

Compilatore -

1) programma o rimedio tecnicoCompletamento.

2) Programma macchina utilizzato per la compilazione.

3) Un traduttore che esegue il programma convertito nella lingua di origine nel modulo oggetto.

4) Un programma che traduce il testo di un programma di alto livello in un programma equivalente nel linguaggio della macchina.

5) Un programma progettato per trasmettere la lingua di alto livello in codice assoluto o, a volte, nella lingua dell assemblatore. Inserisci le informazioni per il compilatore ( fonte) È una descrizione dell'algoritmo o di un programma su una lingua orientata al problema e all'uscita del compilatore - una descrizione equivalente dell'algoritmo su una lingua orientata alla macchina (codice oggetto).

Compilazione -

1) Trasmissione di un programma vicino alla macchina.

2) Trasmissione di un programma compilato nella lingua di origine nel modulo oggetto. Eseguito dal compilatore.

Trasmissione della compilazione - condotta programma della macchina Da un linguaggio orientato al problema alla lingua orientata alla macchina.

Tipi di compilatori:

1) Vectorial.. Traderta il codice sorgente nel codice della macchina dei computer dotati di un processore vettoriale.

2) flessibile. Compilato secondo il principio modulare, gestito da tabelle ed è programmato in un linguaggio di alto livello o implementato utilizzando compilatori del compilatore.

3) Dialogo.

4) incrementale. Trasmette ripetutamente i frammenti del programma e le aggiunte ad esso senza ricompilare l'intero programma.

5) Interpretazione (passo dopo passo). Esegue costantemente una compilazione indipendente di ogni singolo operatore (comando) del programma sorgente.

6) Compilatore del compilatore. Un traduttore che percepisce una descrizione formale del linguaggio di programmazione e del compilatore generatore per questa lingua.

7) Debug. Elimina i singoli tipi di errori sintattici.

8) residente. Costantemente è nella memoria principale ed è disponibile per il riutilizzo di molte attività.

9) Auto-compilato. Scritto nella stessa lingua da cui viene eseguita la trasmissione.

10) Universale. Sulla base della descrizione formale della sintassi e della semantica della lingua di input. Componenti Questo compilatore è: kernel, caricatori sintattici e semantici.

Tipi di compilazione:

1) Pacchetto. Compilare più moduli sorgente in un unico elemento.

2) linea.

3) Condizionale. Compilazione in cui il testo tradotto dipende dalle condizioni specificate nel programma originale. Quindi, a seconda del valore di una certa costante, è possibile attivare o disabilitare la trasmissione del testo del programma.

Struttura del compilatore.

Il processo di compilazione è composto dai seguenti passaggi:

1) Analisi lessicale. In questa fase, la sequenza dei simboli del file sorgente viene convertita in una sequenza Lex.

2) Analisi sintattica (grammaticale). La sequenza del Lex viene convertita nell'albero antigas.

3) Analisi semantica. L'albero antigas viene elaborato per stabilire la sua semantica (significato) - ad esempio, identificatori vincolanti alle loro dichiarazioni, tipi, controllo di compatibilità, determinazione dei tipi di espressioni, ecc. Il risultato è solitamente chiamato "rappresentazione / codice intermedio", E può essere un albero di analizzazione aumentato, nuovo albero, un insieme astratto di squadre o qualcos'altro, conveniente per ulteriori elaborazioni.

4) Ottimizzazione. Rimozione di strutture eccessive e semplificare la conservazione del codice del suo significato. L'ottimizzazione può essere a diversi livelli e fasi - ad esempio, sul codice intermedio o sopra il codice della macchina finale.

5) Generazione di codice. Dalla vista intermedia, il codice viene generato sulla lingua di destinazione.

In specifiche implementazioni dei compilatori, queste fasi possono essere divise o combinate in una forma o nell'altra.

Broadcast e layout.

Un'importante caratteristica storica del compilatore, riflessa nel suo nome (inglese Compilare: raccogliere insieme, disegnare), era che potrebbe produrre e layout (cioè, conteneva due parti - un traduttore e un linker). Ciò è dovuto al fatto che la compilazione e il layout separati come stadio di assemblaggio separato sono stati dichiarati molto più tardi della comparsa dei compilatori. A questo proposito, invece del termine "compilatore" a volte usa il termine "traduttore" come è sinonimo: sia nella vecchia letteratura, o quando vogliono sottolineare la sua capacità di tradurre il programma nel codice della macchina (e al contrario , Utilizzare il termine "compilatore" per sottolineare la capacità di raccogliere da molti file uno).

Interpreti.

Interprete (linguaggio di programmazione) -

1) Un programma o mezzo tecnico che esegue interpretazione.

2) La vista del traduttore che esegue l'elaborazione del giocatore (deadosio) e l'esecuzione del programma o della richiesta di origine (al contrario del compilatore che trasmette l'intero programma senza esecuzione).

3) Programma (a volte hardware), analizzare comandi o operatori del programma e li esegue immediatamente.

4) Processore di lingua che riunisce analisi programma di origine E allo stesso tempo, azioni prescritte e non formano un programma compilato nel motore, che viene successivamente implementato.

Tipi di interpreti.

Interprete semplice Analizza e si esegue immediatamente (effettivamente interpretazione), il programma di PodkomandNno (o linea), in quanto il codice sorgente arriva all'input degli interpreti. Il vantaggio di questo approccio è una reazione istantanea. Svantaggio: tale interprete rileva gli errori nel testo del programma solo quando si tenta di eseguire un comando (o una stringa) con un errore.

L'interprete di tipo compile è un sistema di compilatore che traduce il codice sorgente del programma in una rappresentazione intermedia, ad esempio, al codice di byte o al codice P e nell'interprete effettivo che esegue il codice intermedio risultante (la cosiddetta macchina virtuale) . Il vantaggio di tali sistemi è maggiore prestazione dell'attuazione dei programmi (a causa della rimozione dell'analisi del codice sorgente in un passaggio separato, una tantum e riducendo al minimo questa analisi nell'interprete). Svantaggi - più richiesta di risorse e requisiti per la correttezza del codice sorgente. Viene utilizzato in lingue come Java, PHP, Python, Perl (codice byte), rexx (mantiene il risultato del codice sorgente antigas), nonché in vari DBMS (codice P).

In caso di interprete di tipo compilare, i componenti sono ottenuti da un compilatore di lingua e da un semplice interprete con analisi minimizzata del codice sorgente. Inoltre, il codice sorgente per tale interprete non deve avere un formato di testo o essere codice di byte che solo questo interprete comprende, può essere un codice macchina di una piattaforma hardware esistente. Per esempio, macchine virtuali Come Qemu, Boch, VMware include interpreti del codice della macchina dei processori familiari X86.

Alcuni interpreti (ad esempio, per Lisp, Scheme, Python, Beysik e altre lingue) possono funzionare nella modalità di dialogo o nel cosiddetto ciclo di lettura-calcolo (inglese Lettura-eval-print loop, repl). In questa modalità, l'interprete legge il design del linguaggio completato (ad esempio, l'espressione S nel linguaggio Lisp), eseguelo, stampa i risultati, dopo di che si sposta in attesa dell'ingresso dell'utente del prossimo design.

Unico è fuori, che è in grado di lavorare in entrambe le interpretazioni e la compilazione dei dati di input, consentendo di passare da tali modalità su un momento arbitrario, sia durante la trasmissione del codice sorgente che durante il funzionamento dei programmi.

Va notato inoltre che le modalità di interpretazione possono essere trovate non solo nel software, ma anche dell'hardware. Quindi, molti microprocessori interpretano il codice macchina utilizzando il firmware integrato e i processori della famiglia X86 che iniziano con Pentium (ad esempio, su intel Architecture. P6), Durante l'esecuzione del codice della macchina, è precaricato nel formato interno (nella sequenza di microoperazioni).

Algoritmo del semplice interprete:

2. Analizzare le istruzioni e determinare le azioni appropriate;

3. Eseguire le azioni appropriate;

4. Se il programma non viene raggiunto, leggi prossima istruzione E vai alla clausola 2.

Vantaggi e svantaggi degli interpreti.

Vantaggi:

1) Grandeportabilità dei programmi interpretabili - il programma lavorerà su qualsiasi piattaforma su cui esiste un interprete appropriato.

2) In genere, mezzi più avanzati e visivi per diagnosticare errori nei codici sorgente.

3) Semplificare il codice del codice sorgente di debug.

4) Taglie di codice più piccole rispetto al codice della macchina ottenuto dopo i compilatori convenzionali.

Svantaggi:

1) Il programma interpretabile non può essere eseguito separatamente senza un interprete del programma. L'interprete stesso può essere molto compatto.

2) Il programma interpretabile è più lento, poiché l'analisi intermedia del codice sorgente e la pianificazione della sua esecuzione richiedono un tempo aggiuntivo rispetto alle versioni dirette del codice macchina, che il codice sorgente potrebbe essere compilato.

3) Non c'è praticamente alcuna ottimizzazione del codice, che porta a ulteriori perdite alla velocità dei programmi interpretabili.

Linker.

Linker (Inoltre, l'editor di collegamento, il linker) è un programma che produce un layout - assume l'ingresso uno o più moduli oggetto e raccoglie il modulo eseguibile secondo loro.

Per legare i moduli, il linker utilizza i nomi dei nomi creati dal compilatore in ciascuno dei moduli oggetto. Tali nomi possono essere di due tipi:

1) Nomi determinati o esportati: funzioni e variabili definite in questo modulo e fornito per utilizzare altri moduli.

2) Nomi incerti o importati: funzioni e variabili referenziate dal modulo, ma non li determina all'interno di per sé.

Il lavoro del linker è quello di consentire collegamenti a nomi incerti in ciascun modulo. Per ciascun nome importato, la sua definizione è definita in altri moduli, il nome menzione è sostituito dal suo indirizzo.

Il linker di solito non controlla i tipi e il numero di parametri di procedure e funzioni. Se è necessario combinare moduli oggetto oggetto scritti in lingue di digitazione rigorose, i controlli necessari devono essere completati con un'utilità aggiuntiva prima di avviare l'editor di collegamento.

Assemblatore.

Assemblatore (Dall'inglese. Assembler - A Collector) - Un programma per computer, il compilatore di testo sorgente del programma scritto nella lingua dell assemblatore nel linguaggio della macchina.

Come la lingua stessa (assemblatore), gli assemblatori sono solitamente specifici per un'architettura specifica, un sistema operativo e un'opzione di sintassi della lingua. Allo stesso tempo, ci sono moltiplatform o universali (più precisamente, universali universali, poiché nella lingua di basso livello non è possibile scrivere programmi indipendenti dall'hardware) Assembli che possono funzionare su piattaforme e sistemi operativi diversi. Tra questi ultimi, è anche possibile evidenziare un gruppo di assembler incrociato in grado di raccogliere il codice macchina e i moduli eseguibili (file) per altre architetture e sistema operativo.

L'Assemblea potrebbe non essere il primo e non l'ultimo passo sul modo per ottenere il modulo programma eseguibile. Pertanto, molti compilatori di linguaggi di programmazione di alto livello emettono il risultato sotto forma di un programma nel linguaggio Assembler, che l'assemblatore procede in futuro. Inoltre, il risultato di assemblaggio non può essere eseguito e il modulo oggetto contenente parti sparse e non necessarie del codice macchina e dei dati del programma, da cui (o da diversi moduli oggetti), in futuro utilizzando il programma Linker ("Linker ") Può essere organizzato file eseguibile.

Debugger o debugger è un modulo di sviluppo di sviluppo o un'applicazione separata progettata per cercare errori nel programma. Il debugger consente di eseguire tracce, traccia, installare o modificare i valori delle variabili durante l'esecuzione del programma, installare ed eliminare i punti di controllo o le condizioni di arresto, ecc.

Elenco dei debugger.

1) AQTime - Un debugger commerciale per le applicazioni create per .NET Framework versione 1.0, 1.1, 2.0, 3.0, 3.5 (incluse applicazioni ASP.NET), nonché per applicazioni Windows da 32 e 64 bit.

2) DTRACE - Dynamic Trace Framework per Solaris, OpenSolaris, FreeBSD, Mac OS X e QNX.

3) Recinzione elettrica - Debugger di memoria.

4) GNU Debugger (GDB) - Programmi di debugger dal progetto GNU.

5) IDA è un potente disassemblatore e un debugger di basso livello per la famiglia Windows e Linux e i sistemi operativi Linux.

6) Microsoft Visual Studio - Ambiente di sviluppo software che include un debug di Microsoft Corporation.

7) OLLYDBG è un debugger di basso livello gratuito per i sistemi operativi Windows.

8) Softice - Debugger di basso livello per i sistemi operativi Windows.

9) Sun Studio - Ambiente di sviluppo del software, incluso il debugger DBX per Solaris e Linux, da Sun Microsystems.

10) Dr. Watson è un debugger di Windows standard, consente di creare discariche di memoria.

11) Totalview è uno dei debugger commerciali per UNIX.

12) Windbg è un debugger gratuito da Microsoft Corporation.

Il generatore della documentazione è un programma o un pacchetto software che consente di ricevere documentazione per i programmatori (documentazione API) e / o per gli utenti finali del sistema, secondo un codice sorgente appositamente commentato e, in alcuni casi, su moduli eseguibili (ottenuti a l'uscita del compilatore).

Di solito, il generatore analizza il codice sorgente del programma, evidenziando le costruzioni di sintassi corrispondenti a oggetti di programma significativi (tipi, classi e loro membri / proprietà / metodi, procedure / funzioni, ecc.). L'analisi utilizza anche meta-informazione sugli oggetti del programma, presentati sotto forma di documentazione dei commenti. Sulla base di tutte le informazioni raccolte informazioni, è formata la documentazione già pronta, di regola, in uno dei formati generalmente accettati - HTML, HTMLHELP, PDF, RTF e altri.

Documentazione dei commenti.

Il commento di documentazione è uno appositamente decorato

Il software strumentale o il sistema di programmazione è un sistema per automatizzare lo sviluppo di nuovi programmi di programmazione. Nel caso più generale, per creare un programma nel linguaggio di programmazione selezionato (linguaggio di programmazione del sistema), è necessario disporre dei seguenti componenti: 1. Editor di testo per creare un file con il programma di testo sorgente. 2. Compilatore o interprete. Il testo sorgente utilizzando il programma compilatore viene tradotto in un codice oggetto intermedio. Il testo di origine del grande programma è composto da diversi moduli(File con testi di origine). Ogni modulo è compilato in file separato. Con il codice oggetto, che deve quindi combinarsi in uno. 3. L'editor di connessione o il collettore che elenca il legame dei moduli oggetto e genera un'applicazione lavorativa al codice eseguibile in uscita. Il codice eseguibile è un programma completo che può essere avviato su qualsiasi computer in cui è stato installato il sistema operativo per il quale è stato creato questo programma. Di norma, il file finale ha un'estensione. Lee o. 4. Recentemente, sono stati distribuiti metodi di programmazione visiva (utilizzando lingue di descrizione dello scenario), orientato per creare applicazioni Windows. Questo processo è automatizzato in ambienti di design rapido. Questo utilizza componenti visivi pronti configurati utilizzando editor speciali. Gli editori più popolari (sistemi di programmazione software che utilizzano mezzi visivi) Design visivo:

 Borland Delphi - progettato per risolvere quasi qualsiasi compito di programmazione applicata

 Borland C ++ Builder è un dispositivo eccellente per lo sviluppo di DOS e Applicazioni di Windows

 Microsoft Visual Basic è uno strumento popolare per creare programmi Windows

 Microsoft Visual C ++: questo strumento consente di sviluppare qualsiasi applicazione in esecuzione in Microsoft Windows Type OS

1.3.2. File systems.

Tutto il sistema operativo moderno fornisce un file system progettato per memorizzare i dati sui dischi e fornire l'accesso a loro. Le funzioni principali del file system possono essere suddivise in due gruppi:

 Funzioni di funzionamento del file (creazione, eliminazione, rinomina file, ecc.)

 Funzioni per lavorare con i dati memorizzati in file (registrazione, lettura, ricerca dati, ecc.)

È noto che i file vengono utilizzati per organizzare e memorizzare i dati sui supporti della macchina. Un file è una sequenza di un numero arbitrario di byte, che ha un nome univoco o un'area denominata sul supporto della macchina. La strutturazione di un insieme di file su supporti della macchina viene eseguita utilizzando le directory in cui sono memorizzati gli attributi (parametri e dettagli) dei file. La directory può includere una pluralità di sottodirectory, a causa delle quali le strutture di file ramificate sono formate sui dischi. Il file Organizzazione sotto forma di una struttura ad albero è chiamato un file system. Il principio di organizzare un file system è tabulare. I dati su dove viene registrato il file sul disco è memorizzato nella tabella di posizionamento dei file (tabella di assegnazione dei file, grasso). Questa tabella è pubblicata all'inizio del volume. Per proteggere il volume su di esso, sono memorizzate due copie di grasso. In caso di danni alla prima copia del grasso utilità disco Può sfruttare la seconda copia per recuperare Tom. Secondo il principio di costruire un grasso, un contenuto di libri è simile, poiché il sistema operativo lo utilizza per cercare un file e una definizione di cluster che questo file occupa sul disco rigido. La più piccola unità di archiviazione fisica è il settore. Dimensione settore 512 byte. Poiché la dimensione del tavolino è limitata, quindi per i dischi, le cui dimensioni superano 32 MB, per garantire che l'indirizzo a ciascun settore non sia possibile. In connessione con questo, i gruppi settoriali sono convenzionalmente combinati in cluster. Il cluster è l'unità più piccola di indirizzamento ai dati. La dimensione del cluster, in contrasto con le dimensioni del settore, non è fissata e dipende dalla capacità del disco.

Innanzitutto, la versione a 12 bit del grasso (il cosiddetto FAT12) è stato utilizzato per floppy disk e piccoli dischi rigidi (meno di 16 MB). Quindi la versione a 16 bit del grasso è stata introdotta in MS-DOS per dischi più grandi. Sistemi operativi MS DOS, Win 95, Win NT implementa campi a 16 bit nei tavoli della posizione del file. Il file system FAT32 è stato inserito in Windows 95 OSR2 e supportato in Windows 98 e Windows 2000. FAT32 è una versione avanzata del grasso destinato all'uso su volumi che superano i 2 GB. FAT32 fornisce supporto disco per un massimo di 2 TB e uno spazio su disco più efficiente. FAT32 utilizza cluster più piccoli, il che consente di aumentare l'efficienza dell'uso dello spazio su disco. Windows XP utilizza FAT32 e NTFS. Direzione più promettenti nello sviluppo file systems. È diventato la transizione verso NTFS (nuovo file system tecnologico - nuovo file system tecnologico) con nomi di file lunghi e un sistema di sicurezza affidabile. Il volume della sezione NTFS non è limitato. NTFS riduce al minimo la quantità di spazio su disco, perso a causa della registrazione di file piccoli in grandi cluster. Inoltre, NTFS salva lo spazio su disco, spremuta il disco, le cartelle e i file separati.

Con il modo di denominare i file distinguono il nome "corto" e "lungo". Secondo l'accordo adottato in MS-DOS, il metodo dei file di denominazione su IBM PC Computers è stato un accordo 8.3., I.e. Il nome del file è composto da due parti: il nome stesso e l'espansione del nome. 8 caratteri sono assegnati al nome del file e 3 caratteri sono sulla sua estensione. Il nome dall'espansione è separato da un punto. Sia il nome che l'espansione possono includere solo simboli alfabeticamente digitali dell'alfabeto latino. I nomi dei file registrati in conformità con l'accordo 8.3 sono considerati brevi. Con l'aspetto del sistema operativo Windows 95, è stato introdotto il concetto di un nome "lungo". Tale nome può contenere fino a 256 caratteri. Questo è sufficiente per creare nomi di file significativi. Il nome "lungo" può contenere qualsiasi personaggio tranne nove speciali: \\ /: *? "< > | Il nome è autorizzato a utilizzare spazi e diversi punti. Il nome del file termina con un'estensione composta da tre caratteri. L'estensione viene utilizzata per classificare i file per tipo. L'unicità del nome del file è assicurata dal fatto che il nome del file completo è considerato il nome del file completo insieme ad accesso ad esso. Percorso di accesso ai file Inizia con il nome del dispositivo e include tutti i nomi delle directory (cartelle) attraverso il quale passa. Come separatore, viene utilizzato il simbolo "\\" (Flash inverso - Flash retromarcia). Ad esempio: D: \\ Documents and Settings \\ TV \\ Documenti \\ Lessons-TVA \\ robots.txt Nonostante il fatto che i dati della posizione siano memorizzati In tabulare la struttura, all'utente, vengono presentate sotto forma di una struttura gerarchica - le persone sono così convenienti e tutte le trasformazioni necessarie presuppone il sistema operativo. Le funzioni della struttura dei file includono le seguenti operazioni che si verificano sotto il controllo del sistema operativo:

 Creazione di file e assegnarli nomi;

 Creazione di directory (cartelle) e assegnarli nomi;

 Rinominare file e directory (cartelle);

 copia e spostare i file tra i dischi del computer e tra le directory (cartelle) di un disco;

 Elimina file e directory (cartelle);

 navigazione sulla struttura del file per accedere a un determinato file, directory (cartella);

 Gestione dell'attributo file.

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