BIZIT 11 - prvi dan

Linux Torvalds planira tranziciju Linux kernela na moderniji C

Linux kernel je napisan u C-u i to u njegovoj „prastaroj“ verziji iz 1989. godine (standard C89), koji je takođe poznat i kao ANSI X3.159-1989, ili ANSI C. Linus Torvalds je uočio problem prilikom kompajliranja ispravke za jedan potencijalni sigurnosni problem u kernelu. Naime, ta ispravka je prouzrokovala novi problem koji se ispoljavao samo prilikom kompajliranja sa C89 verzijom kompajlera. Na novijoj verziji kompajlera, C99 (iz 1999. godine), to se nije dešavalo.

linux

S obzirom da bi takvi problemi mogli da se pojavljuju i u budućnosti, on je rešio da izvrši tranziciju na pomenutu C99 verziju, bez obzira što je i ona starija više od dve decenije. To neće biti teško da se uradi, jer C89 standard i dalje ima univerzalnu podršku. C kompajleri su unazad kompatibilni sa starijim verzijama, pa tako ni najnoviji C11 kompajler (iz 2011. godine) bez problema može da kompajlira izvorni kod napisan u C89 dijalektu.

Linux kernel developer, Arnd Bergman smatra da je to dobar potez, ali smatra da bi bilo još bolje da se tranzicija izvrši na trenutno aktuelnu verziju standarda, C11. Njegov argument je da C99 nije toliko popularan kao C11, kao i da najnoviji standard donosi standardizovanu multhitreading podršku, što prethodna verzija nema. To bi trebalo da bude potpuno neprimetna tranzicija, jer Linux kernel C kompajler GCC u verziji 5.1 već ima podršku za C11. Zato je na kraju Torvalds „prelomio“ i odlučio da od kernel verzije 5.18 pređu na C11 kompajler, što će se desiti najverovatnije tokom marta.

Pročitajte i:  Azure Linux 3 postaje dostupna - ali ne očekujte dodatke

Izvor: ZDNet

Facebook komentari:
Računari i Galaksija
Tagovi: , , ,