А что за виртуальная машина, если это native?
У большинства ЯП есть своя виртуальная машина. Даже если ЯП компилируемый, VM будет внутри бинарника.
Думаешь, почему ОС пишут только на С? Потому что С - это один из немногих языков без виртуальной машины. В те времена статический анализ был не таким крутым, из-за этого и типичные баги С: переполнение буфера, выход за пределы массива и т.д. Даже в С++ уже есть виртуальная машина.
Сейчас набирает популярность Rust - язык без vm с очень мощным статическим анализатором. Его поддержку даже хотят в ядро линукса добавить.