Controllato C: estensione OpenSource C di Microsoft

L'amore di Microsoft per la comunità open source sembra aumentare di giorno in giorno. Dopo la dichiarazione del CEO di Microsoft Satya Nadella l'anno scorso, proclamando -

"Microsoft ♥ Linux"

Microsoft ha presentato molti contributi a Linux e alla comunità open source. Alcuni dei quali sono, distribuzione .NET per Linux e Mac, Visual Studio Code per Linux, Javascript Engine ChakraCore, SQL Server per Linux, Bash su Ubuntu su Windows, Immagine FreeBSD su Azure, ecc.

E l'ultima aggiunta è Checked C, una versione estesa del linguaggio di programmazione C che offre un'esperienza più affidabile e sicura ai programmatori.

Controllato C

Checked C era inizialmente un progetto di ricerca Microsoft con l'obiettivo di implementare il controllo dei limiti su C, per rilevare e prevenire errori di programmazione comuni come sovraccarichi del buffer, accessi di memoria fuori limite e cast di tipo errato. Ora che Microsoft lo ha reso open source, l'ultima versione di Checked C e le sue specifiche sono disponibili nella sua pagina di rilascio del repository GitHub.

In che modo è migliorato questo Checked C?

Il linguaggio di programmazione C utilizza un concetto speciale per accedere ai puntatori di dati. Un puntatore è l'indirizzo di una cella di memoria. Usare i puntatori può essere complicato e persino i programmatori esperti possono a volte commettere errori quando lavorano con esso. Che a sua volta può causare l'arresto anomalo dei programmi, il comportamento anomalo o l'esposizione a vulnerabilità.

Controllato C fornisce ai programmatori le opzioni per descrivere meglio i loro puntatori usati e come intendono usarli. Usando queste informazioni, usa il metodo di controllo dei limiti per verificare che i dati siano accessibili entro i limiti previsti. E secondo Microsoft,

Il nome Checked C riflette il fatto che il controllo statico e dinamico viene aggiunto a C.

E per errori di programmazione come overrun del buffer e cast di tipi errati, Checked C consentirà ai programmatori di aggiungere il controllo ai loro programmi per rilevare questo tipo di errori quando un programma viene eseguito o mentre viene scritto. Con queste estensioni, Checked C sarà in grado di evitare vulnerabilità di sicurezza o problemi di affidabilità del software.

La maggior parte dei software di sistema è scritta in linguaggio di programmazione C o C ++. Il problema con il software di scrittura è che il programmatore ha bisogno di un controllo preciso sulle funzionalità del programma. E con questo in mente, Checked C significherà sicuramente un grande aiuto per i programmatori di sistema.

E i codici C esistenti?

Non c'è bisogno di preoccuparsi! Checked C è completamente compatibile con le versioni precedenti. Questa è solo un'estensione per il linguaggio C esistente. Quindi, i codici C esistenti funzioneranno correttamente con Checked C. E può essere modificato approfittare delle funzionalità estese. Come descritto nella pagina del progetto Checked C,

Il software di sistema esistente può essere modificato in modo incrementale in modo compatibile con le versioni precedenti per ottenere questo controllo.

Cosa ne pensi di Checked C? Sei un programmatore C? Quando hai intenzione di provare Checked C?

Raccomandato

Programma di contabilità open source rilasciato GnuCash 3.0 con un nuovo strumento di importazione CSV Riscritto in C ++
2019
8 consigli e trucchi Vim che ti renderanno un utente Pro
2019
Come cambiare le applicazioni predefinite in Ubuntu
2019