Che cos'è il formato di file SYM?
Un file .sym contiene una tabella dei simboli - una mappatura dagli indirizzi di memoria binari o offset a identificatori leggibili dall'uomo come nomi di funzioni, nomi di variabili, tipi di dati e numeri di riga del codice sorgente. L'estensione è un termine generico usato da molte toolchain non correlate; il layout binario o testuale effettivo dipende interamente dall'ambiente che lo ha prodotto.
Le varianti comuni includono i file .sym di Windows CodeView 4 (binario strutturato, magic bytes 0x4E 0x52 / NR), che precedono il formato .PDB Program Database introdotto in Visual Studio 4.0 (1995); informazioni di debug binarie Palm OS / CodeWarrior; definizioni di simboli schematici gEDA/KiCad (testo semplice UTF-8 con coppie attributo-valore e definizioni dei pin); esportazioni di simboli PLC CODESYS (XML); e mappe di simboli di vecchie toolchain DOS/Win16. Un file .sym di una toolchain non è interpretabile da un'altra.
Nel contesto del debugging, i file .sym consentono ai debugger e agli strumenti di analisi dei crash di tradurre gli indirizzi grezzi in una traccia dello stack o in un core dump in riferimenti significativi al codice sorgente - un processo chiamato «symbolication». Senza di essi, il debugging post-mortem restituisce solo indirizzi esadecimali.
Lo sviluppo moderno su Windows utilizza invece i file .pdb; Linux e macOS incorporano sezioni di debug DWARF nei binari ELF e Mach-O o utilizzano bundle .dSYM sulle piattaforme Apple. L'estensione .sym sopravvive principalmente nei sistemi embedded, nelle toolchain legacy, nella progettazione PCB gEDA e nelle applicazioni EDA dove le librerie di simboli schematici portano naturalmente questo nome.
Sicurezza e incolumità
RISCHIO: LOWUn file di simboli di debug contiene solo mappature nome/indirizzo e informazioni sui tipi - nessun codice eseguibile. Aprirne uno non può danneggiare il sistema. L'unica preoccupazione è la divulgazione di informazioni: i file .sym per software commerciale possono rivelare nomi interni di funzioni/variabili che non erano destinati alla distribuzione pubblica.
Dettagli del formato
in sintesi- Simbolo schematico gEDA - File di testo semplice che definisce un simbolo di componente elettronico per l'acquisizione schematica gschem.
- Libreria di simboli SolidWorks - Libreria binaria di simboli di disegno/annotazione utilizzata nel CAD SolidWorks.
- Simbolo EDA P-CAD / Altium - File di definizione del simbolo del componente utilizzato nei vecchi strumenti di progettazione PCB P-CAD e Altium.
Programmi che aprono file SYM
Dettagli tecnici
specifiche approfondite| Tipo di formato | Tabella dei simboli (mappatura indirizzo-identificatore); il layout esatto è specifico della toolchain |
| Codifica | Binario o testo semplice - dipende dalla toolchain di origine |
| Ordine dei byte | Little-endian (maggior parte delle varianti binarie); N/D per le varianti testo e XML |
| Dimensione tipica del file | 1 KB - 50 MB (i binari di grandi dimensioni producono tabelle di simboli estese) |
| Variante binaria (Windows) | CodeView 4 - record binari strutturati, magic bytes 0x4E 0x52 («NR») |
| Variante testo (EDA) | Simboli schematici gEDA/KiCad - coppie attributo-valore UTF-8 con definizioni dei pin |
| Variante XML | Esportazione simboli PLC CODESYS - XML strutturato |
| Piattaforma | Windows, Linux, macOS, ambienti embedded/RTOS |
| Sostituito da (Windows) | .pdb (Program Database, Visual Studio 4.0, 1995) |
| Sostituito da (Linux/macOS) | Sezioni DWARF nei binari ELF/Mach-O; bundle .dSYM sulle piattaforme Apple |
| Interoperabilità | Nessuna - i file .sym di diverse toolchain sono reciprocamente incompatibili |
| Rilasciato | 1980s (varies by toolchain) |
Conversioni SYM
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file SYM.