0

DISCLAIMER: I have been a Windows guy for as long as I can remember, but I now slowly moving to Linux, Docker and Kubernetes (oh, boy!).

On Windows I developed and administered commercial applications and seen large-scale solutions. I have never explicitly gone out of the OS user mode/space and into anything from the kernel mode.

Can someone explain why is there so much talk and development surrounding Linux kernels? Are there any basic things that I need to be aware of when I am developing and deploying applicaitons on Linux distributions?

For example: I participate in the development and deployment of Java, nodeJS and Python modules and the deployment of relevant middleware such as Redis, PostgreSQL and nginx.

Borislav T
  • 178
  • 1
  • 1
  • 6
  • I think there are both cultural and technical factors contributing to the popularity of Linux. While others might comment/answer more on the technical side, you might read articles on open source movement to gain more cultural insights, https://www.oreilly.com/openbook/opensources/book/ – Lex Li Jul 31 '20 at 14:47

1 Answers1

2

It depends on what you are doing.

With things like Docker and Kubernetes, you are creating environments for other applications to run in, so these are a bit tighter integrated into the kernel than regular applications that do things on their own and just use a few system functions.

You would also touch lower-level subsystems when there is a good reason to do so for extra performance. One thing I'm currently looking into on Windows is Offloaded Data Transfer between virtual machines that run on the same physical machine -- and suddenly I find myself wading through Windows kernel internals.

So my interpretation would be that the applications you are looking at are different than the ones you are used to, so you are now looking at subsystems you would not have been looking at before.

Simon Richter
  • 3,317
  • 19
  • 19