LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vorresti leggere La campana
Niente spam

La maggior parte degli utenti dei moderni sistemi informatici, in un modo o nell'altro, si trovano ad affrontare programmi in esecuzione, che per la maggior parte si riducono all'esecuzione di un file eseguibile. In parole povere, in tutti i programmi, viene utilizzato un oggetto in formato EXE per avviare l'applicazione principale. Ma non è sempre così.

Nei vecchi sistemi operativi come DOS o non Windows, tali file possono avere un'estensione completamente diversa, sebbene il principio di avvio rimanga assolutamente invariato.

Eseguire un file eseguibile: cosa significa?

Per comprendere appieno l'essenza di ciò che sta accadendo, devi prima capire qual è il processo di avvio di un'applicazione. Lo stesso file eseguibile di Navitel o di qualsiasi altro programma è una sorta di applet in cui viene scritto il codice di avvio, riconosciuto dal sistema operativo o da applicazioni aggiuntive progettate per questo. Ma qui vale la pena capire che i programmi costituiti esclusivamente da un file eseguibile sono oggi irrilevanti. Di norma, il pacchetto include anche un numero enorme di componenti correlati sotto forma delle stesse librerie dinamiche con estensione DLL. Allo stesso modo, senza di loro, non è sempre possibile eseguire un file eseguibile.

La conclusione è che all'avvio del modulo principale del pacchetto software, che consiste nell'avvio del file EXE, alcune applicazioni richiedono il “caricamento” di moduli aggiuntivi, che sono appunto i file delle impostazioni di configurazione (config) o le stesse librerie dinamiche che contengono dati sul programma.

A proposito, a volte le stesse librerie dinamiche sono in grado di svolgere il ruolo di programmi. Quindi, ad esempio, l'inizio di qualsiasi strumento VST in uno studio moderno (DAW) segue questo principio. Il programma in quanto tale nella forma della versione Standalone potrebbe essere assente, ma il plug-in nella forma del suo analogo con l'estensione DLL è riconosciuto da qualsiasi programma.

Programmi eseguibili: tipi

Ma non è tutto. L'estensione dei file eseguibili oggi non è così facile da determinare, per non parlare dei file in formato EXE o COM. Separatamente, vale la pena notare non solo gli standard sopra menzionati, ma anche i dati d'archivio.

Infatti, gli archivi SFX (Self-Extracting) sono dati autoestraenti basati sull'algoritmo di decompressione. questo tipo è facile. Basta fare un doppio clic e l'operazione verrà eseguita automaticamente al momento della scelta della posizione di estrazione. Sui dispositivi mobili, formati come JAR, JAD APK, ecc. vengono utilizzati come programmi di installazione.

È possibile aprire file eseguibili?

Molti utenti sono interessati alla questione della modifica dei file eseguibili. Immediatamente sconvolgere tutti. Il fatto è che gli stessi "eseguibili" sono programmi compilati, il cui codice sorgente è solitamente impossibile da visualizzare. Ovviamente puoi usare utilità come Disassembler, ma esse, a condizione che l'applicazione sia stata originariamente scritta in C++, potrebbero non dare questo risultato.

Come effettuare semplici modifiche?

Come è già chiaro, è impossibile aprire un file EXE nella sua forma leggibile, poiché il programma stesso può essere scritto in diversi linguaggi di programmazione. Lo stesso vale per le librerie dinamiche. Ma i file di configurazione possono essere aperti anche nel Blocco note standard. E se lo esegui come amministratore, puoi persino impostare restrizioni di accesso ad alcuni siti su Internet, quindi salvare la configurazione, cosa che non è possibile in modalità normale. Le stesse "configurazioni" vengono modificate in modo elementare.

È possibile rendere eseguibile qualche file?

In linea di principio, qualsiasi file sul disco rigido è eseguibile. Più precisamente, eseguire un file eseguibile significa lanciare l'applicazione preposta ad aprirlo. Anche nel caricamento automatico, è abbastanza elementare avviare un file all'avvio del sistema.

È sufficiente aggiungere il processo all'elenco e specificare un oggetto di accompagnamento che verrà caricato immediatamente (ad esempio l'apertura di un documento di Office). Rendere eseguibile il file è tutt'altro che la cosa più importante.

Riepilogo

Pertanto, completando l'argomento, vale la pena notare che i file o gli oggetti responsabili dell'avvio di un'applicazione possono essere aperti nella versione standard solo facendo doppio clic. Ma non è possibile modificarli. È vero, se i programmi hanno lo stato di distribuzione gratuita con licenza GNU, è molto facile apportare modifiche al codice del programma delle applicazioni.

Ma questo è un caso speciale, che, in generale, non è collegato all'argomento principale. Un'altra cosa è il lancio di un file eseguibile, di cui l'utente non ha idea. In questo caso, l'accento dovrebbe essere posto sui virus che possono presentarsi sotto forma degli stessi allegati di posta elettronica. Se vedi che il file allegato non ha un'icona, non provare ad aprirlo. Anche se questo vale anche per i virus che si travestono da tali messaggi. In questo caso, il malware sarà in grado di eseguire il file eseguibile o il codice incorporato in esso abbastanza facilmente, e quindi ci saranno un'enorme pila di problemi.

E la chiamata (lancio) del file eseguibile in questo caso potrebbe non dipendere più dall'utente stesso, poiché il virus ha invaso il sistema. Resta solo da fare affidamento su programmi universali sotto forma di versioni portatili o su utilità di modifica del disco di soccorso con caricamento e controllo del sistema anche prima dell'avvio di Windows.

Il file eseguibile in quanto tale, che è il più interessante, non è nel bootloader. Ma c'è un configuratore BIN, che è responsabile dell'avvio del sistema. Inoltre, nelle versioni precedenti di Windows, puoi anche trovare cartelle come i386, che contengono driver e alcune altre utilità correlate. Ma nelle nuove versioni del sistema non ci sono tali oggetti.

Qualsiasi utente di un sistema informatico, in un modo o nell'altro, si è imbattuto nel concetto di file di programma eseguibile. E non sempre (anche se molto spesso) i file eseguibili hanno l'estensione EXE, che è comune per i sistemi Windows. Per comprendere il problema delle estensioni, diamo un'occhiata alle informazioni generali su tali oggetti e su alcuni dei loro tipi principali.

Differenze tra file eseguibili e altri oggetti

Prima di affermare che il file eseguibile di un programma ha un'estensione di un solo tipo particolare, è necessario capire come distinguere un tale oggetto dagli altri.

Infatti, tra le principali differenze tra file eseguibili e altri dati informativi, ce ne sono alcune principali:

  • l'estensione stessa, che indica il contenuto nel file del bytecode della macchina o della macchina virtuale;
  • firma (contenuto sotto forma di sequenze di byte univoche);
  • attributi nel file system (esegui, ecc.).

Sfortunatamente, anche se sai che i file eseguibili hanno un'estensione del nome come EXE, non sarai in grado di visualizzare il contenuto con mezzi normali, perché tali oggetti hanno contenuto compilato che, una volta visualizzato, viene visualizzato come un insieme di caratteri privo di significato . Nella migliore delle ipotesi, dovrai utilizzare gli strumenti Disassembler o qualcos'altro che ti permetta di decompilare. Ma ora non si tratta di questo.

Struttura dei file eseguibili

Per quanto riguarda la costruzione di file di questo tipo, di norma contengono intestazioni (esecuzione prevista di istruzioni, parametri, formati di codice), istruzioni stesse (macchina, sorgente o bytecode).

A volte la struttura può includere descrizioni dell'ambiente, dati di debug, requisiti del sistema operativo, elenchi di librerie correlate, immagini, suoni, grafica, icone di collegamento, ecc. A proposito, molte persone probabilmente hanno notato che per la maggior parte in ogni sistema operativo tale un file ha inizialmente un'icona (a condizione che dovrebbe funzionare al suo interno dall'inizio).

Principio di funzionamento

In realtà, nonostante i file eseguibili abbiano un diverso tipo di estensione, funzionano in modo simile.

All'avvio, il file eseguibile viene caricato nella memoria del computer. Allo stesso tempo, l'ambiente viene inizializzato e configurato, vengono "richiamate" librerie aggiuntive se l'uso di tali è previsto dal programma, vengono configurate alcune operazioni aggiuntive e le istruzioni vengono eseguite con i metodi specificati nel file.

Qual è l'estensione dei file di programma eseguibili?

Veniamo ora direttamente alla questione delle estensioni. Inutile dire che assolutamente tutto non funzionerà (ci vorrà troppo tempo). D'altra parte, possiamo notare il più popolare e il più comune.

Quindi, a seconda del tipo di contenuto, l'estensione è impostata. Ad esempio, su Windows, i file eseguibili più comuni hanno l'estensione EXE. Questo vale per tutti i programmi progettati per essere eseguiti su questi sistemi operativi. Tali oggetti contengono file BIN molto simili (contenenti anche tali codici).

Gli oggetti batch come CMD, BAT e COM sono un altro tipo di eseguibile, con il primo tipo che è Windows e il secondo e il terzo sono sistemi DOS.

Probabilmente, molti hanno incontrato file MSI e MSU. Può essere un programma di installazione di Windows "nativo" o un programma di installazione dell'aggiornamento di sistema.

Tra le altre cose, script e macro (VB, VBS, VBE, SCR, JS, JSE) formano una categoria separata. Ancora spesso ci sono file come JAR e JAD, progettati per installare applicazioni su gadget mobili o utilizzare in un ambiente JAVA. Tutti questi oggetti nel contenuto non hanno più codici macchina, ma codici di macchine virtuali.

Che estensione hanno i file eseguibili su sistemi diversi?

Se guardi da vicino, noterai che in alcuni sistemi ci sono componenti abbastanza specifici. Ad esempio, Windows ha una categoria speciale di componenti eseguibili (PS1 per l'eseguibile di PowerShell, PIF per le informazioni sull'applicazione, WSF per il file di script e così via).

In generale, in qualsiasi sistema si possono trovare componenti sia standard che speciali. Tuttavia, ci sono alcuni formati comuni (ad esempio, HTA - un documento HTML eseguibile) che funzionano ovunque e indipendentemente dal sistema operativo utilizzato.

Come per altri sistemi, ad esempio, nei Mac i file eseguibili hanno estensione APP se sono programmi, e PKG se sono distribuzioni.

Ma con i sistemi Linux, la situazione è alquanto diversa. Il fatto è che non hanno il concetto di estensione in quanto tale. Un file eseguibile può essere riconosciuto solo dagli attributi (nascosto, di sola lettura, di sistema, ecc.). Così, anche il problema di cambiare le estensioni per eseguire o leggere il file che stai cercando scompare.

Tuttavia, in qualsiasi sistema o anche nei gadget mobili, puoi trovare un numero enorme di oggetti di questo tipo. Non devi andare lontano. Nello stesso sistema operativo Android, il file eseguibile del programma di installazione ha l'estensione APK e nei dispositivi "apple" si tratta di file IPA.

Conclusione

Questo è tutto in poche parole sulle estensioni dei file eseguibili. Naturalmente, in questo caso, l'enfasi è stata principalmente sugli oggetti presenti nei sistemi Windows, e il resto è stato toccato di sfuggita e, per così dire, per uno sviluppo generale. E, come è già chiaro, la varietà di oggetti di tipo eseguibile è così grande che semplicemente non è possibile portare una sorta di tabella riepilogativa che indichi assolutamente tutte le estensioni, quindi ci siamo limitati ai formati più comuni.

Il sistema operativo Linux, a differenza di Windows, determina quali file sono programmi non per estensione, ma per uno speciale flag eseguibile. Ogni file ha tre flag principali, leggi, scrivi ed esegui. Determinano cosa può fare il sistema con questo file.

Quando scarichi vari programmi di installazione di software da Internet o ne esegui uno script in un editor di testo, vengono impostati sui flag predefiniti di sola lettura e di sola scrittura. Non sarai in grado di eseguire un file del genere come programma, c'è qualcos'altro che devi fare con esso. In questo articolo, vedremo come rendere eseguibile un file su Linux.

Molto è già stato scritto su come impostare il flag eseguibile. Ma cosa succede al file durante questo, cos'è l'eseguibilità e come funziona?

Un programma è un insieme di istruzioni che il processore esegue a turno sui dati per ottenere un risultato specifico. Ma probabilmente lo sai già.

Infatti, per il processore, non c'è differenza tra dati e istruzioni. Sia quelli che gli altri sono costituiti da byte, in altre parole, numeri. Una volta era stato convenuto che determinate combinazioni di numeri avrebbero significato l'una o l'altra azione del processore, ma per tutti gli altri sono gli stessi dati. Pertanto, per il processore non c'è differenza su cosa eseguire: un file eseguibile Linux o un file di testo normale. Entrambi possono essere eseguiti con successo, solo nella seconda versione le istruzioni non hanno alcun senso.

Affinché il sistema possa determinare quali file devono essere eseguiti e quali è meglio no, è stato inventato il flag eseguibile. In effetti, il flag eseguibile è costituito da pochi byte nel file system che dicono se il file deve essere eseguito o meno, il contenuto del file stesso non cambia in alcun modo. Con gli script, tutto funziona esattamente allo stesso modo, solo i comandi del file vengono eseguiti non dal processore, ma dall'interprete, ad esempio, negli script bash, la shell bash stessa. Sì, e anche i programmi ordinari hanno il proprio bootloader: questo è ld-linux.so.2.

Come rendere eseguibile un file in Linux?

Sul sistema operativo Linux, l'utilità chmod viene utilizzata per gestire i flag di file. Sintassi della chiamata di utilità:

  • Categoria- I flag possono essere impostati per tre categorie: proprietario del file, gruppo di file e tutti gli altri utenti. Nel comando sono indicati rispettivamente dai caratteri u (utente) g (gruppo) o (altro).
  • Azione- può essere + (più), che significherebbe impostare la bandiera o - (meno) abbattere la bandiera.
  • Bandiera- uno dei flag disponibili - r (leggi), w (scrivi), x (esegui).

Ad esempio, per creare uno script eseguibile su Linux per il proprietario del file, basta eseguire:

chmod u+x nomefile

Questo è sufficiente nella maggior parte dei casi, ma se vogliamo che altri utenti possano eseguire il file, dobbiamo specificare anche altre categorie: g e o:

chmod ugo+x nomefile

Puoi visualizzare i flag nel terminale usando l'utilità ls:

ls -l directory_con_file

Ciò significa che tutti i flag sono abilitati per tutte le categorie. Il primo rwx sono le flag del proprietario, il secondo sono i gruppi e il terzo è per tutti gli altri. Se la bandiera non è impostata, al suo posto apparirà un trattino.

Rimuovere il flag eseguibile è molto semplice. Lo stesso comando viene utilizzato solo con il segno meno:

chmod u-x nomefile

Come impostare il flag eseguibile nella GUI

Puoi rendere eseguibile un file su Linux non solo tramite il terminale. Questa funzionalità è disponibile in tutti i file manager. All'inizio potrebbe essere più facile per te. Considera l'esempio del file manager GNOME, Nautilus. Fare clic con il pulsante destro del mouse sul nostro programma o file di script per aprire il menu contestuale, quindi selezionare le proprietà:

Quindi vai alla scheda Autorizzazioni e seleziona la casella Consenti al file di essere eseguito come programma:

Fatto, l'eseguibile linux può essere eseguito dal sistema, direttamente dal file manager.

conclusioni

Questo è tutto, ora sai come rendere eseguibile un file in Linux. E se hai bisogno di eseguire uno script o un programma di installazione da Internet, non avrai problemi. Se avete domande, chiedete nei commenti!

Molti utenti di sistemi informatici si sono probabilmente imbattuti nel concetto di file di programma eseguibile in un modo o nell'altro. I file eseguibili non sempre, ma abbastanza spesso, hanno l'estensione EXE, generalmente accettata per i sistemi operativi della famiglia Windows. Per fare un po' di luce sull'argomento delle estensioni, esamineremo alcune informazioni generali su questi oggetti e esamineremo anche alcuni tipi di estensioni di base.

In che modo i file eseguibili differiscono da altri oggetti

Prima di sostenere che un file eseguibile di un programma può avere un'estensione di un solo tipo particolare, è necessario capire come distinguere un tale oggetto dagli altri. Le principali differenze tra file eseguibili e altri dati informativi includono i seguenti fattori: l'estensione stessa, che indica il contenuto nel file del codice macchina o del codice byte della macchina virtuale, la firma e gli attributi nel file system . Tuttavia, anche se l'utente sa che i file eseguibili hanno un'estensione del nome di tipo EXE, i normali mezzi non saranno in grado di visualizzare il contenuto, poiché tali oggetti hanno contenuto compilato che viene visualizzato come un insieme di caratteri senza significato quando viene visualizzato. In generale, l'utente dovrà utilizzare lo strumento Disassembler, o qualcosa di simile, per consentire la decompilazione. Ma non è di questo che stiamo parlando.

Eseguibili: struttura

Per quanto riguarda la costruzione di file eseguibili, questi devono contenere le intestazioni (l'esecuzione prevista di istruzioni, parametri e formati di codice) e le istruzioni stesse (sorgente, macchina o bytecode). In alcuni casi, la struttura può includere dati di debug, descrizioni dell'ambiente, requisiti del sistema operativo, elenchi di librerie rilevanti, suoni, grafica, immagini, icone di collegamento e simili. Molti di voi probabilmente hanno prestato attenzione al fatto che per la maggior parte ciascuno di questi file nel sistema operativo ha inizialmente un'icona.

Principio di funzionamento

Sebbene i file eseguibili possano avere diversi tipi di estensioni, funzionano secondo lo stesso principio. Il file eseguibile viene caricato nella memoria del computer all'avvio. Allo stesso tempo, l'ambiente viene configurato e inizializzato, vengono richiamate librerie aggiuntive se il loro utilizzo è previsto dal programma. Anche in questa fase vengono configurate alcune operazioni aggiuntive e le istruzioni vengono eseguite con i metodi che vengono scritti direttamente nel file.

File eseguibili del programma: che estensione hanno?

Passiamo ora alla questione delle estensioni. Naturalmente, non funzionerà per considerare assolutamente tutti i tipi, ci vorrà molto tempo. Prenderemo nota solo delle opzioni più comuni e popolari. Quindi, l'estensione viene impostata in base al tipo di contenuto. Quindi, ad esempio, in un sistema operativo come Windows, i file eseguibili più comuni hanno l'estensione EXE. Questo vale per tutti i programmi progettati per funzionare nell'ambiente di questi sistemi operativi. Tali oggetti contengono codici macchina. I file BIN sono molto simili. I file batch come CMD, BAT e COM sono un altro tipo di file eseguibili. Il primo tipo in questo caso è un file batch di Windows. I file del secondo e terzo tipo appartengono ai sistemi operativi della famiglia DOS. Molti di voi probabilmente si sono imbattuti in file come MSI e MSU. Può essere un programma di installazione dell'aggiornamento di sistema o un programma di installazione nativo per il sistema operativo Windows. Una categoria separata di file sono le macro e gli script. Questi sono file con estensioni JSE, JS, SCR, VBE, VBS, VB. Spesso ci sono anche file JAD e JAR, che sono progettati per installare applicazioni su dispositivi mobili o utilizzare in un ambiente JAVA. Nel loro contenuto, tali oggetti non hanno più codici macchina, ma codici di macchine virtuali.

Qual è l'estensione dei file eseguibili in diversi sistemi operativi?

Se guardi da vicino, noterai che in alcuni sistemi operativi ci sono componenti abbastanza specifici. Ad esempio, il sistema operativo Windows ha una categoria speciale di file eseguibili. In generale, in qualsiasi sistema operativo, puoi trovare componenti sia standard che speciali. Tuttavia, esistono alcuni formati comuni, come HTA, un documento HTML eseguibile. Funzionano quasi ovunque, indipendentemente dal tipo di sistema operativo utilizzato. Come per altri tipi di sistemi, ad esempio, in "poppies" i file eseguibili hanno l'estensione APP per i programmi e PKG per le distribuzioni. Nei sistemi operativi della famiglia Linux, le cose sono leggermente diverse. Il problema è che in tali sistemi operativi il concetto di estensione è del tutto assente. È possibile riconoscere un file eseguibile dai suoi attributi, come sistema, nascosto, di sola lettura e così via. Di conseguenza, il problema della modifica dell'estensione per eseguire o leggere il file che stai cercando scompare. Tuttavia, in qualsiasi sistema operativo, anche su dispositivi mobili, puoi trovare un numero enorme di oggetti di questo tipo. Non devi andare lontano. Sullo stesso sistema operativo della famiglia Android, il file eseguibile dell'installer ha estensione APK. Sui dispositivi Apple, i file eseguibili hanno l'estensione IPA.

Conclusione

Riassumiamo la nostra breve recensione sull'estensione dei file eseguibili. L'enfasi in questo caso è stata principalmente sugli oggetti presenti nei sistemi operativi della famiglia Windows. Il resto dei sistemi operativi è stato toccato solo di sfuggita per lo sviluppo generale. Come è già diventato chiaro, la varietà di file eseguibili è molto ampia. È impossibile fornire una sorta di tabella pivot che indichi assolutamente tutti i tipi di estensioni. Pertanto, in questo articolo, ci siamo limitati ai soli formati più comuni.

Vkontakte è senza dubbio un social network molto comune in cui le persone non solo corrispondono tra loro, ma si scambiano anche vari file. A questo proposito, molti utenti di questo social network incontrano spesso un problema quando, durante il tentativo di allegare un file a un messaggio, viene visualizzato un errore con il testo “Impossibile caricare il file. Il file non deve essere eseguibile e la sua dimensione non deve superare i 200 MB."

Se tutto è chiaro con la dimensione del file, non tutti sanno cosa significa "Il file non dovrebbe essere eseguibile".

In questo articolo spiegheremo cos'è un file eseguibile e cosa fare per aggirare questo avviso.

File eseguibile - che cos'è?

Un file eseguibile è un file che contiene un set già pronto di comandi per il computer, che può essere immediatamente caricato in memoria e avviato all'esecuzione.

Di norma, si tratta di file con estensione .exe, .bat, .com.

Inoltre, a volte VKontakte non vuole scaricare archivi in ​​cui sono compressi i file .exe, riferendosi allo stesso errore.

Ciò è dovuto a problemi di sicurezza, perché i file .exe sono i primi per popolarità nella classifica di esposizione ai virus. E per almeno in qualche modo ridurre il rischio di diffusione di virus informatici tramite VKontakte, gli sviluppatori hanno deciso semplicemente di vietare il trasferimento reciproco del tipo di file più suscettibile: un file eseguibile.

Come aggirare l'errore?

È abbastanza facile aggirare questa limitazione. Devi solo inviare uno di quelli consentiti, ad esempio .doc, al destinatario e dirgli di riportare l'estensione a quella che aveva originariamente il file dopo aver scaricato il file.

Modifica dell'estensione del file

Tra i metodi alternativi, si può notare il download di un file che rifiuta di essere scaricato da VKontakte su qualsiasi cloud storage come il disco Yandex o il disco Google, e quindi l'invio di un collegamento ad esso al destinatario VKontakte.


Il modo migliore per ringraziare l'autore dell'articolo è ripubblicare sulla tua pagina

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vorresti leggere La campana
Niente spam