To nije tačno.
Ne postoji "simulator" linux kernela.
ELF programi koji rade pod windowsom, kada im treba da pozovu linux kernel (syscall komanda), predaju neizmenjen poziv sistemske rutine host operativnom sistemu (Windows 10 ili Windows server). Taj poziv presreću drajveri lxss.sys i lxcore.sys, pa onda to pretumbavaju u odgovarajući poziv windows kernel poziva.
Povratnu vrednost poziva ponovo pretvaraju u ono što očekuje ELF program.
Recimo, da bi obrisao fajl sa diska, linux ELF program poziva unlink sistemski poziv i predaje kao parametar putanju do fajla. Gore navedeni servisi pretvore Linux path u Windows path (ili sam drajver za emuaciju fajl sistema to protumači), pozovu windows ekvivalent unlink sistemskog poziva, prihvate povratnu vrednost i pretvore je u vrednost koju očekuje ELF.
Za neke linux sistemske pozive ne postoji ekvivalent u Windowsu. Negde sam pročitao da fork kao takav ne postoji i on je implementiran u navedenim drajverima, ali većina sistemski poziva ima Win ekvivalent.
https://blogs.msdn.microsoft.com/wsl/2016/06/08/wsl-system-calls/