: 'kernel' would be the core part of a program (be it an OS or not). Granted, not all program designs have this kind of a separation, but a typical example would be a program designed with a plugin-like architecture - you'd have a 'core' (aka kernel) part and the plugins.
:
: This is an usual misunderstanding. Kernel means "the central, substantial or essential part of anything" (webster quote). It's not limited to operating systems.
:
But the question is abiguous at best (and I would probably call it misleading.) In the context of CS, a kernel is almost always associated with an OS. I've had quite a bit of experience programming, including a lot of reading of newsgroups, magazines, and books. Using the word "kernel" for an application is just not commonly used.
Matt.