The JIT is probably half of the VM and is written in C++.
Github [1] says (for the whole JDK, not just the VM): Java 75.1% C++ 13.4% C 7.4% Assembly 2.3% Objective-C 0.4%
Graal doesn't affect memory management. It's a JIT compiler, not a GC. Although there's a relatively simple GC written in SystemJava for native images, G1, ZGC and Parallel will continue to be the standard GCs in the regular JVM for the foreseeable future and they are all written in C++.
If you do not count the standard library as part of the JVM (but part of the JDK), then the JVM is written mostly in C++.
I work at a company with one large C++ codebase, and also many Go projects where C and C++ knowledge are helpful. We have trouble hiring good C++ developers, because our candidate pool starts as "people who want to write application servers".
But if you're already restricted to people who want to work on an extremely mature compiler, VM, and JIT - is lack of C knowledge really what's making it hard to hire people? These are people who are likely to end up reading kernel code and C-defined ABI documentation and etc. etc. even if the codebase is 100% Java...
Also there is a large chunk of people (like me) who don't care about Java (the language) but very much about the JVM (and to some degree also about the Java ecosystem). I'm a Scala developer. But I'm also interested lately in Rust (and to some degree C++, as both languages are related), 'cause, you know, max performance and full control, and such.
So at least when it comes to interests there is some pool of people for sure who would like to look into the low-level JVM internals.
You have trouble hiring good C++ developers, because you don’t pay enough.
How much is a good salary for that if you're remote (but US based) and have about 10 years of decent experience (plus a PhD in CS).
Parent is just talking out of his/her ass.
The embedded and systems space are hard and require special talent and knowledge. You can't just take some front-end React developer and get them writing quality systems C code in a weekend... people spend entire careers in that space, and the number of people interested in that work shrinks by the year (look at all developer surveys).
I think the language difference is a red herring.
I always felt they were hostile to understanding OSes and problems/solutions they provide and thereby limiting themselves to mostly junior C devs who didn't rock the boat by making real OS features for the JVM.
That's the extreme opposite of raw C (or raw JavaScript, etc.) in which it's very easy to believe that you have solved an issue, only to realize much later that you've been entirely misunderstanding some constructions of the language and (if your code somehow managed to land) you have made the entire product unstable or insecure without realizing it.
Of course, there are tradeoffs to each approach. But I believe that investing in Rust was a great initiative from Mozilla.
I don't think C is special in this regard.
Most developers you see/hear/interact with are not C developers - rather they use higher level languages mostly to build web apps and mobile apps.
I believe this is still incorrect. GraalVM is HotSpot with the Graal JIT compiler and the truffle languages.
If they also decide to merge support for other languages (including WASM and LLVM) we will be able to run everything that compiles to WASM and to LLVM on the same runtime - in the same JVM. So we will get another "Docker Without Containers"...