Componente principale della maggior parte dei sistemi operativi, il kernel gestisce la maggior parte delle comunicazioni di un computer tra hardware e software. In genere, il kernel è il livello più basso di astrazione che un programmatore può avere su una risorsa.