:

Szerző: Ady Krisztián

2001. november 20. 02:53

Továbbfejlesztett C programozási nyelv -- nyelv, mellyel nem hibázhatunk

Ha Mohamed nem megy a hegyhez, a hegy megy Mohamedhez. Ha a programozók nem képesek hibamentes programot írni, segítsen nekik a programozási nyelv. Az amerikai kutatók által kifejlesztett új programozási nyelv lehetetlenné teszi olyan szarvashibák elkövetését, melyek biztonsági lyukakat, váratlan programhibákat, fagyást okozhatnak. Legalábbis ezt állítják a kutatásban résztvevő tudósok.

Ha Mohamed nem megy a hegyhez, a hegy megy Mohamedhez. Ha a programozók nem képesek hibamentes programot írni, segítsen nekik a programozási nyelv. Az amerikai kutatók által kifejlesztett új programozási nyelv lehetetlenné teszi olyan szarvashibák elkövetését, melyek biztonsági lyukakat, váratlan programhibákat, fagyást okozhatnak. Legalábbis ezt állítják a kutatásban résztvevő tudósok.

A Cyclone névre keresztelt programozási nyelvet a Cornell Egyetem és az AT&T New York-i laboratóriumának munkatársai fejlesztik. A Cyclone a közkedvelten használt C programozási nyelv egy újratervezett és újraírt változata. A Cyclone programnyelvet úgy tervezték, hogy szinte lehetetlen olyan alapvető bugokat, hibákat létrehozni, melyek az alkalmazás működését veszélyeztetik.

"A C programnyelv egy igen erős nyelv, de ennyi erővel fel is akaszthatjuk magunkat," - nyilatkozta Graham Hutton, a nottinghami Egyetem szakértője. "[A fejlesztők] megpróbálják ezt az erőt tovább növelni, ám kicsit alaposabb ellenőrzést végezve, alapvetően biztonságosabbá téve a nyelv használatát -- ez egy nagyon jó dolog."

A kutatók szerint a C nyelven programozók gyakran készítenek olyan kódot, mely olyan alapvető hibákkal van tele, melyek csak a teljes program elkészültekor bukkannak fel. Ezeket a hibákat nehéz előre megjósolni, s a programok totális működésképtelenségéhez, esetenként részleges hibás működéséhez vezethetnek. Sokszor biztonsági lyukakat is nyújthatnak, ezeket előszeretettek használják fel jóindulatú elemek, ha módjuk van rá.

A Cyclone fordítóprogramja, compilerje a kód olyan szegmenseinek felismerésére képes "type-checking engine" motorjának segítségével, melyek később gondot okozhatnak. Ez a motor nem csak a kód nyelvi helyességét ellenőrzi, hanem analizálja és a várható felhasználási célt elemezve kiemeli azon részleteket, melyek potenciális veszélyforrást nyújthatnak. A "Buffer overrun" hiba az egyik leggyakoribb ilyen hiba. Rossz memóriahasználatot okozhat, s olyan memóriaterületekhez férhetnek hozzá a bug kihasználásával, melyek esetleg nem tartoznak avatatlan szemekre.

A Cyclone compilerje újraírja a hibás kódot, vagy különböző megoldásokat javasol a rossz kód helyett. Amennyiben a hiba mégis bekövetkezne a program futtatásakor, a program biztonsággal leállítható fagyás vagy a rendszer összeomlása nélkül is.

Az új nyelv nagyon hasonló a C-hez, ezért a meglévő programok forráskódjuk segítségével könnyedén, minimális munkával átültethetők a Cyclone nyelvre. A kutatók egy alapszintű webszerver alkalmazást is írtak a Cyclone segítségével, mely immunis az általános támadásokra, s mentes az általánosabb hibáktól.

A Cyclone programnyelvet a 2002 júniusában Németországban megrendezendő "Programming Language Design and Implementation Conference" rendezvényen is bemutatják.

A most először, április 24-én Budapestre érkező nemzetközi Kubernetes Community Day programja immár elérhető. A programba kerülő 26 előadást a világ minden tájáról beérkezett, több mint 100 pályázat közül választottuk ki. Figyelem, a rendezvényre már csak 30 jegy elérhető!

a címlapról

1000

2

Millenniumhoz ért a Yettel

2025. március 11. 12:01

A cég a napokban kapcsolja be az ezredik 5G-s állomását, a hálózat minden második magyarhoz elér.