From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from minnie.tuhs.org (minnie.tuhs.org [45.79.103.53]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id e0c22395 for ; Wed, 17 Apr 2019 18:27:15 +0000 (UTC) Received: by minnie.tuhs.org (Postfix, from userid 112) id 4FC4194C15; Thu, 18 Apr 2019 04:27:13 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 0241094B4E; Thu, 18 Apr 2019 04:26:32 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=pass (2048-bit key; unprotected) header.d=bsdimp-com.20150623.gappssmtp.com header.i=@bsdimp-com.20150623.gappssmtp.com header.b="d7Y1wJHY"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id E6EFF94B4E; Thu, 18 Apr 2019 04:26:29 +1000 (AEST) Received: from mail-qt1-f182.google.com (mail-qt1-f182.google.com [209.85.160.182]) by minnie.tuhs.org (Postfix) with ESMTPS id 2CE7894B4D for ; Thu, 18 Apr 2019 04:26:29 +1000 (AEST) Received: by mail-qt1-f182.google.com with SMTP id v32so28447777qtc.10 for ; Wed, 17 Apr 2019 11:26:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=fpnb+osckYyh73/4dyBJOWIEYr7Btyzd+Axdfx+V/oQ=; b=d7Y1wJHYZdqbqOJCOkJaVit9LIuJZqW4qA4irHAGWFBd+KcvKvsKiwx5s8vD4ACQfz Wdeg0onm8fZ3ue1J3gG4X1n/IhQanJbUMDtY2d3v+hz9MsWQ+0V2RXDGEO9Rv1sAeVWE 9VQc3syfT7qk0gHLPH+rSbPz4LBSAzd1VP1pNsQl2hjtBJX/AEYg7+omqQGUf9jRM4gn Lk+1cnOLYwnTvh3BQ83ePyNJC1ces6OH0d6wN/Zq/fFIFbOvltolScsZJ7zSRuTZJmAa 3XUoDUEdi2xhOjFoUb8gfDRp4CigdHt4RzORxn1b45OIl9UKca/Nk6jt/l/IdqB4QTAM 89mQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=fpnb+osckYyh73/4dyBJOWIEYr7Btyzd+Axdfx+V/oQ=; b=Ln41HEvLepyVNeI8rvPNMXkueQa/iZ984x5GgqcYTNoDTbYhGbjG4UFX62JsgVpMfr kfTtwanoguzLuE6E7RamGL4piNjnAqChXPDf+y+RrOxQrrbYWN2GFDm+E4p1Q45nXzqV LeT2aO9BvtCPi3wAj2wVE/wjphxcQZh2wFuOBp7YD7S/+n/mzxkthgJjWlltWtCXWEEO va+ZPvLsr7KWH24+nrLtWItVwikgujapOL3WK6phcwJhuLFfH18ogNSDvw/MzYKJx4H+ 5GI5q8ELb8gyYwxeyp5vh6g0DXdZCSsdkGrX/pGitZY+k9xtDZkiNFwEgWExs/YJStR/ z76w== X-Gm-Message-State: APjAAAWbORMn4WSviXEC9RgRTXFGEW1rC3q+uU89siP9Sz6ZlRyQbMSf dGB8YuxAbo3UBd2rWVgWP+FGKCxXLHbFo0enHa08Fw== X-Google-Smtp-Source: APXvYqzJaSbpbDlnxkD7EZlB/Ga2XVBRGCVoqrAA1hXkc39GdiwJebpg/6hBPiTyysWbOLG3tqDKlRndihOkvQlyj7I= X-Received: by 2002:ac8:38b6:: with SMTP id f51mr73716405qtc.33.1555525588141; Wed, 17 Apr 2019 11:26:28 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Warner Losh Date: Wed, 17 Apr 2019 12:26:17 -0600 Message-ID: To: Paul Ruizendaal Content-Type: multipart/alternative; boundary="0000000000001eea660586be06de" Subject: Re: [TUHS] Paper discussing Unix boot process? X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: TUHS main list Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --0000000000001eea660586be06de Content-Type: text/plain; charset="UTF-8" On Tue, Apr 16, 2019 at 11:43 PM Paul Ruizendaal wrote: > Maybe xv6 has an explanation of the boot process that is of use to the > original poster: > > https://pdos.csail.mit.edu/6.828/2018/xv6.html If you are looking for a generic answer, it goes something like this: 1. Power is applied to the system 2. Support circuits initialize (details vary widely, may include initializing memory controllers and loading microcode into the CPU) 3. CPU comes out of reset and jumps to a well known location (that's either initialized by 2 or is ROM of some flavor) 4. The initial boot code confirms this is a power-on reset (and not a wakeup from sleeping or other condition) and loads the next boot loader from some media like tape, disk or network 5. The loader then loads the next stage loader, if any. Repeat 5 as many times as needed to get to loading the kernel. Loader constructs metadata about the system and passes that to the kernel. 6. Once the kernel is loaded, execution is passed off to the kernel which looks at the loader metadata to know what's it needs to about the system that it can't easily get by other means. 6a. Memory is partitions, VM system booted, MMU comes on line, devices initialized, root is mounted and control passes to init which forks /etc/rc to bring the sytem up For most people, this is a sufficient level of detail, unless they are trying to debug one of the steps then the actual details matter. :) Warner --0000000000001eea660586be06de Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Tue, Apr 16, 2019 at 11:43 PM Paul= Ruizendaal <pnr@planet.nl> wrot= e:
Maybe xv6 has= an explanation of the boot process that is of use to the original poster:<= br>
https://pdos.csail.mit.edu/6.828/2018/xv6.html

If you are looking for a generic answer, it go= es something like this:

1. Power is applied to the= system
2. Support circuits initialize (details vary widely, may = include initializing memory controllers and loading microcode into the CPU)=
3. CPU comes out of reset and jumps to a well known location (th= at's either initialized by 2 or is ROM of some flavor)
4. The= initial boot code confirms this is a power-on reset (and not a wakeup from= sleeping or other condition) and loads the next boot loader from some medi= a like tape, disk or network
5. The loader then loads the next st= age loader, if any. Repeat 5 as many times as needed to get to loading the = kernel. Loader constructs metadata about the system and passes that to the = kernel.
6. Once the kernel is loaded, execution is passed off to = the kernel which looks at the loader metadata to know what's it needs t= o about the system that it can't easily get by other means.
6= a. Memory is partitions, VM system booted, MMU comes on line, devices initi= alized, root is mounted and control passes to init which forks /etc/rc to b= ring the sytem up

For most people, this is a suffi= cient level of detail, unless they are trying to debug one of the steps the= n the actual details matter. :)

Warner
=
--0000000000001eea660586be06de--