Vad är systemprogrammering?

Alla programmerare skriver körbar kod för datorer, men det som skiljer systemprogrammerare från applikationsprogrammerare är syftet med programvaran de skriver. Applikationsprogrammering producerar programvara som gör att en dators hårdvara genererar något för användaren, vare sig det är ett kalkylblad eller grafik för ett spel. Systemprogrammering producerar programvara som åtkomst till och kontrollerar den inre funktionen i en dators hårdvara och operativsystem.

Applikationsprogrammering innebär i allmänhet att man utfärdar systemkommandon för att använda de grundläggande funktionerna i en dators hårdvara och operativsystem, till exempel att lagra en viss databit i datorns fysiska minne eller en fil på hårdheten. Dessa typer av program handlar inte om detaljer om hur hårddisken eller det fysiska minnet fungerar. Omvänt berör systemprogrammerare sig detaljerna om hur ett operativsystem och hårdvarukomponenter fungerar. Detta gör att de kan bygga mjukvaran som defragments hARD driver och kontrollerar integriteten i en dators fysiska minne.

Förutom att de kan bygga sådana verktyg, är systemprogrammerare vanligtvis experter i kärnfunktionen hos operativsystem. Alla programmerare är bekanta med systemsamtal, trådhantering och input/utgångshantering, men systemprogrammering kräver att programvaruingenjören kan manipulera dessa operativsystemmekanismer. Detta gör att en systemprogrammerare kan utföra specialiserade installationer och automatisera systemunderhållsuppgifter.

Kunskap om operativsystemets kärna är också nödvändig för att maximera en applikations prestanda på en viss hårdvarukonfiguration. Till exempel behöver mycket upptagna online -återförsäljare sina webbplatser och transaktionsbehandlingssystem för att köras så effektivt och pålitligt som möjligt. Använda sin kunskap om operativsystemens interna mekanikre -komponenter, till exempel hur man gör ett visst operativsystem optimerar sin trådhantering eller vilka algoritmer som kör snabbast på vilka hårdvarukomponenter, en systemprogrammerare kan hjälpa till att finjustera en applikations prestanda.

Denna detaljerade åtkomst till den inre funktionen av hårdvara och operativsystemkomponenter kräver att systemprogrammering ska göras på ett språk som tillåter denna typ av låg nivå hårdvaruåtkomst. Språk som Java®, Python ™ eller Ruby on Rails® är vad programmerare kallar språk på hög nivå. Detta innebär att de underlättar applikationsprogrammering genom att inte göra programmeraren hantera de fina detaljerna i hårdvaruthantering. Systemprogrammering kräver exakt denna typ av åtkomst, så systemprogrammerare använder ett lågnivåspråk som C eller C ++.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?