I believe it depends of the software architecture but operating system knowledge would not be sufficient.
I believe DevOps engineers should be the ones that have a lot of experience in software development and also maintained it system wise.
Edit: There is a toolchain given in Wikipedia that summarizes DevOps actions.
- Code – Code development and review, Version control tools, code merging
- Build – continuous integration tools, build status
- Test – Test and results determine performance
- Package – Artifact repository, application pre-deployment staging
- Release – Change management, release approvals, release automation
- Configure – Infrastructure configuration and management, Infrastructure as Code tools
- Monitor – Applications performance monitoring, end user experience