Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 1 Apr 2010 13:36:33 +0200
From:      Gary Jennejohn <gary.jennejohn@freenet.de>
To:        Daniel Rodrick <daniel.rodrick@gmail.com>
Cc:        freebsd-hackers@freebsd.org, freebsd-drivers@freebsd.org, freebsd-arch@freebsd.org
Subject:   Re: Newbie question: kernel image a dynamically linked binary?
Message-ID:  <20100401133633.23c7b1fd@ernst.jennejohn.org>
In-Reply-To: <l2r292693081004010323j42d1ef20k6bcc3ef31a8e440a@mail.gmail.com>
References:  <l2r292693081004010323j42d1ef20k6bcc3ef31a8e440a@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 1 Apr 2010 15:53:50 +0530
Daniel Rodrick <daniel.rodrick@gmail.com> wrote:

> Hello List,
> 
> I'm a newbie and coming from Linux background, and am trying to learn
> FreeBSD now. The first thing I find a little confusing is that the
> final FreeBSD kernel image is shown as a DYNAMICALLY LINKED binary:
> 
> $
> $ pwd
> /boot/kernel
> $
> $ file kernel
> kernel: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD),
> dynamically linked (uses shared libs), not stripped
> $
> 
> How can the kernel image use shared libraries? And which ones does it
> use, if any?
> 
> Also, I cannot find out the libraries the image uses using the
> traditional ldd command:
> 
> $ ldd kernel
> kernel:
> kernel: signal 6
> $
> 
> Can some please throw some light?
> 

file is confused.  FreeBSD uses a monolithic kernel and no shared
libraries are involved.  However, it is possible to dynamically load
modules using kldload.  See the appropriate man page.

--
Gary Jennejohn



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100401133633.23c7b1fd>