A game kernel contains all the necessary routines to handle the core of the game. By having a complete game kernel available to you, you will be able to concentrate on your game coding, and not on the most basic core of it, like drawing a sprite, loading images, etc... A good game kernel must also contain specialized functions to take care of the input devices such as the keyboard, the mouse and the joystick. In brief, the game kernel most also handle all the user interactions. With such a kernel available to you, you only write the code relevent to your game. This makes developement a lot easier and faster.