I wouldn't expect any intern to be thoroughly familiar with those topics. Each one is an entirely different specialization that goes extremely deep.
If you need someone to write a network stack and a concurrent database system, you don't need an intern, you need an engineer.
Interns are generally students. Sometimes they're still in school. If they had skills in these kinds of deep topics, they would be applying for full time engineering roles, not internships.
People apply to internships because they lack experience and skills. It's your job to mentor them and expose them to these kinds of specialized roles so that they can decide in what direction to start their career. Interns come to you to learn and gain experience they couldn't otherwise.
Interns aren't workers, they're apprentices. Once you treat them that way, you'll have a much more rewarding relationship. They're there for you to teach, not to do an engineer's job for a fraction of the pay.
If you need someone to write a network stack and a concurrent database system, you don't need an intern, you need an engineer.
Interns are generally students. Sometimes they're still in school. If they had skills in these kinds of deep topics, they would be applying for full time engineering roles, not internships.
People apply to internships because they lack experience and skills. It's your job to mentor them and expose them to these kinds of specialized roles so that they can decide in what direction to start their career. Interns come to you to learn and gain experience they couldn't otherwise.
Interns aren't workers, they're apprentices. Once you treat them that way, you'll have a much more rewarding relationship. They're there for you to teach, not to do an engineer's job for a fraction of the pay.