Android'de her uygulama ayrı bir kullanıcı olarak çalışır. Linux çekirdeğinde, her işlem tek bir kullanıcıya aittir, bu nedenle tek bir Linux işleminde birden fazla Dalvik uygulaması çalıştırmak mümkün değildir.
Birden fazla Dalvik VM örneği çalıştırmanın yükü hafiftir, çünkü Linux fork()
sistem çağrısı yazma üzerine kopyalanır, paylaşılan bir COW sayfasına yazmak "sayfa hatasına" neden olur ve bu sayfa kopyalanır; bu nedenle, VM'nin RAM'deki bellek bölgesinin çoğu paylaşılsa bile, VM'ler arasında "paylaşılan durum" yoktur.
Forking süreçleri sadece devlet izolasyonu sağlar, ancak ayrıcalık izolasyonu sağlamaz.
dalvik vm bir güvenlik sınırı olarak görülmemelidir
Bunun nedeni, VM'nin bir güvenlik sınırını zorlayamamasıdır. VM kullanıcı modunda (yürüttüğü programla aynı modda) çalışıyor, yani VM'deki bir hata uygulamanın VM durumunu amaçlanmayan bir şekilde değiştirmesine izin verebilir; ancak çekirdek ayrıcalıklı modda çalışır ve güvenlik sınırını zorlayabilir.