Bærbar C Compiler

Henry Thomsen August 8, 2016 B 0 0
FONT SIZE:
fontsize_dec
fontsize_inc

Den bærbare C Compiler er en tidlig compiler for programmeringssproget C skrevet af Stephen C. Johnson fra Bell Labs i midten af ​​1970'erne, delvist baseret på ideer af Alan Snyder foreslået i 1973, og "distribueret som C compiler ved Bell Labs ... med velsignelse fra Dennis Ritchie. "

En af de første compilere, der let kunne tilpasses til output kode til forskellige edb arkitekturer, compileren havde en lang levetid. Det debuterede i syvende udgave Unix og leveres med BSD Unix indtil udgivelsen af ​​4.4BSD i 1994, hvor den blev erstattet af GNU C compiler. Det var meget indflydelsesrig i sin dag, så meget, at der i begyndelsen af ​​1980'erne blev størstedelen af ​​C-compilere baseret på det. Anders Magnusson og Peter A Jonsson genstartet udvikling af PCC i 2007, omskrive det i udstrakt grad at støtte C99 standarden.

Egenskaber

Nøglerne til succes for PCC var dens portabilitet og forbedrede diagnostiske muligheder. Compileren er designet således, at kun et par af sine kildefiler var maskinafhængig. Det var relativt robust over for syntaksfejl og udførte mere grundige gyldighedskontroller end sine jævnaldrende.

Den første C-compiler, som er skrevet af Dennis Ritchie, brugte en rekursiv nedstigning parser, indarbejdet specifik viden om PDP-11, og har påberåbt sig en valgfri maskine-specifikke optimizer for at forbedre assembler kode det genererede. I modsætning hertil blev Johnsons PCCM baseret på en yacc-genereret parser og brugte en mere generel målsætning maskine model. Begge compilere produceret målspecifik assembler kode, som de derefter samles for at producere sammenknyttes objekt moduler.

Nyere versioner af PCC, kendt inden for Bell Labs som "QCC" og "RCC", støttet andre mål arkitektur-modeller.

Det sprog, PCC implementeret var en udvidet version af K & amp; RC, at Bjarne Stroustrup har kaldt "Classic C", der inkorporerer den returtypen, opregninger og struktur opgave.

Nuværende version

En ny version af PCC, baseret på den oprindelige af Steve Johnson, er nu vedligeholdes af Anders Magnusson. Den compiler leveres under BSD-licensen og dets udvikling er finansieret af en non-profit organisation kaldet BSD Fund. Ifølge Magnusson:

Denne nye version blev tilføjet til NetBSD pkgsrc og OpenBSD kilde træer i september 2007, og senere i de vigtigste NetBSD kildetræ. Der har været nogle spekulationer om, at det i sidste ende kan bruges til at fortrænge GNU C Compiler på BSD-baserede operativsystemer, selvom Theo de Raadt hævder, at PCC er ikke klar endnu til at være en gcc udskiftning og bortskaffelse af gcc er ikke topprioritet . Den December 29, 2009 PCC blev i stand til at opbygge en funktionel x86 OpenBSD kernel image.

"Ny" PCC version 1.0 blev frigivet den 1. april 2011. Som i denne udgivelse, compileren understøtter x86 og x64 processor arkitekturer og kører på NetBSD, OpenBSD, FreeBSD, diverse Linux-distributioner, og Microsoft Windows. Videreudvikling, herunder støtte til flere arkitekturer, og FORTRAN 77 og C ++ frontends, fortsætter.

PCC blev fjernet fra OpenBSD kildetræ i 2012. Udvikling på det havde gået i stå, og ingen vedligeholder havde optrappet til at udvikle det til noget, der kunne gøre et praktisk alternativ til GNU Compiler Collection.

  Like 0   Dislike 0
Forrige artikel Victoria United
Næste artikel Sev
Kommentarer (0)
Ingen kommentar

Tilføj en kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Tegn tilbage: 3000
captcha