/home/unix Личенен блог на Радослав Панев

5апр/110

pcc (Portable C Compiler) 1.0

През 70-те години на XX век разработчиците на Unix отделят голяма част от времето си да адаптират операционната система към най-различни платформи. Оказва се, обаче, че най-трудоемкото в този процес не е пренаписването на машинно зависимите части от програмния код на системата, а адаптирането на самия език C към различния хардуер. Така започва работата по първия преносим компилатор - Portable C Compiler (pcc) на Стивън Джонсън. Сега, повече от 30 години по-късно, pcc достигна своята версия 1.0.

Още с появата си pcc оказва огромно влияние върху C и Unix и за съвсем кратко време става модел за подражание. За първи път излиза през 1979 година в Unix Version 7, а после става незименна част от BSD клона чак до 1994 година, когато в 4.4BSD е заменен от gcc, като така и не успява да достигне официална 1.X версия. Освен концепцията за максимална независимост от конкретната платформа, комбиниран с yacc и lint, компилаторът въвежда практиката за сканиране и предупреждение за синтактично правилни конструкции, които може да са потенциални грешки. В началото на 80-те години на XX век почти всички съществуващи компилатори са базирани на pcc. През 2007 година Андерс Магнусон (познат още като Ragge) обявява в мейл листата на NetBSD, че проектът по осъвременяване на оригиналния компилатор pcc, с който се занимава вече пета година в свободното си време, започва да дава задоволителни резултати и има реален потенциал да стане сериозен и конкурентноспособен софтуер. Версията, която е представена тогава, е под номер 0.9.8. Финансирана от BSD Fund, разработката на компилатора върви уверено напред - довършва се имплементацията на стандарта C99, прави се версия не само за i386, а и за amd64 процесори, поддържа се съвместимост с gcc. И така на 1 април 2011 година, съвсем насериозно, версия 1.0 на първия в историята преносим компилатор за C вече е факт. Спрямо оригинала е пренаписанa около 50% от frontend частта и около 80% от backend частта. А основните качества, които трябва да привлекат потребителите, са производителността, която е била поставена като основна цел от самото начало, и либералният BSD лиценз.

Сподели с приятели:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • blogmarks
  • MySpace
  • PDF
  • RSS
  • Socialogs
  • Webnews.de
  • Add to favorites
  • Live
  • MyShare
Коментари (0) Връзки за обратно следене (0)

Няма все още коментари.


Leave a comment

(required)

Все още няма връзки за обратно следене.