Et annet grunnleggende konsept er . Åpning og lukking, sletting og skriving av filer styres av OSet. De fleste operativsystemer i dag støtter er for å gruppere filer sammen. Både prosessene og filene er gruppert hierarkisk, men mens filene har lang levetid (dager, måneder og år), så blir prosesser ofte skapt og destruert innenfor sekunder. Hver prosess har sitt eget arbeidsområde, altså den katalogen prosessen i utgangspunktet ser etter filer som ikke har et fullstendig filnavn i. OSet holder også rede på tilstanden til filene i tillegg til selve innholdet og plasseringen. For eksempel har filer i Unix et sett med boolske tilstander kalt RWX, hvor R er rett til å lese filen, W er rett til å skrive til filen og X er rett til å kjøre filen (altså om den anses som et program). For kataloger betyr X rett til å liste opp innhold. Filer eies av en eier og en gruppe, og det er et sett med RWX-tilstander for eieren, gruppen, andre enn disse, samt et sett som angir eventuelle spesialegenskaper. Slik sikres forskjellige brukere og deres prosesser fra å tråkke hverandre på tærne. Ofte er eksterne enheter også representert som filer, for å gjøre jobben til programmererne lettere. To typer slike filer finnes, med og . Blokkskriving brukes til å modellere enheter hvor man kan bevege seg fram og tilbake og lese og skrive vilkårlig, slik som en harddisk. Tegnskriving innebærer at man må lese og skrive i en bestemt rekkefølge, slik som til en skriver. Den siste spesialfilen er en (engelsk for ). Denne kobler sammen to prosesser, slik at mens én prosess skriver til pipen som om det var en fil, leser en annen prosess fra den, også som om det var en fil.