# kernel size

## bjlockie

Did the kernel get alot bigger?

It is 3M now and it used to be under 2M.

----------

## Letharion

The kernels source code grows a lot with every version, but your compiled kernel should only grow in size if you compile in more options.

You must have added something, device drivers, a new filesystem, network stacks etc.

----------

## d2_racing

In fact, maybe you should double check if some option can become module instead of being inside the kernel.

----------

## KarlisRepsons

What is the problem for you, if kernel is 1, 2 or 4MB? Doing something embedded?

----------

## bjlockie

 *KarlisRepsons wrote:*   

> What is the problem for you, if kernel is 1, 2 or 4MB? Doing something embedded?

 

No problem, I was just commenting.

----------

## Carnildo

 *Letharion wrote:*   

> The kernels source code grows a lot with every version, but your compiled kernel should only grow in size if you compile in more options.

 

Actually, the kernel grows slowly over time even without adding new options: the 2.4-series kernel one of my servers is running is about 750KB, while an equivalent 2.6-series kernel would be 950KB.  That said, a 1MB jump usually means a major change in the kernel configuration.

----------

## Letharion

 *Carnildo wrote:*   

>  *Letharion wrote:*   The kernels source code grows a lot with every version, but your compiled kernel should only grow in size if you compile in more options. 
> 
> Actually, the kernel grows slowly over time even without adding new options: the 2.4-series kernel one of my servers is running is about 750KB, while an equivalent 2.6-series kernel would be 950KB.  That said, a 1MB jump usually means a major change in the kernel configuration.

 

That being true, I still imagine the difference between a 2.6.x and a 2.6.x+1 is very small. I suppose a lot of structural change happended between 2.4 and 2.6, but not so much between the 6.x versions?

----------

## zyko

A larger kernel image could be caused by one of the more recent versions of gcc. It looks like gcc-4.x has several regressions which blow up code size compared to good old gcc-3. The last couple of kernel releases have also introduced some new interactions with gcc-4's optimization features. This is a worrisome development, since reliance on compiler-specific features usually leads to bad, unportable code.

----------

