From owner-freebsd-embedded@freebsd.org Tue Mar 8 23:14:57 2016 Return-Path: Delivered-To: freebsd-embedded@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BB41AAC74B8 for ; Tue, 8 Mar 2016 23:14:57 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1b.ore.mailhop.org (outbound1b.ore.mailhop.org [54.200.247.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 90DD68D5 for ; Tue, 8 Mar 2016 23:14:57 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: a94924a9-e583-11e5-8dfb-c75234cc769e X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.34.117.227 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.34.117.227]) by outbound1.ore.mailhop.org (Halon Mail Gateway) with ESMTPSA; Tue, 8 Mar 2016 23:15:34 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.14.9) with ESMTP id u28NEn0G005120; Tue, 8 Mar 2016 16:14:49 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1457478889.1406.50.camel@freebsd.org> Subject: Re: ? about kernel size.. From: Ian Lepore To: John Clark , Markus Hitter Cc: freebsd-embedded@freebsd.org Date: Tue, 08 Mar 2016 16:14:49 -0700 In-Reply-To: <938133EE-CCEE-4F08-BB78-8227D9D0C6EC@aim.com> References: <1457473674.1406.46.camel@freebsd.org> <56DF513E.9000405@jump-ing.de> <938133EE-CCEE-4F08-BB78-8227D9D0C6EC@aim.com> Content-Type: text/plain; charset="windows-1251" X-Mailer: Evolution 3.16.5 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-embedded@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Dedicated and Embedded Systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Mar 2016 23:14:57 -0000 Jeez, really? This thread is going to be hijacked to discuss the theoretical possiblity of running on 40 year old hardware? Unbelievable. -- Ian On Tue, 2016-03-08 at 15:09 -0800, John Clark via freebsd-embedded wrote: > Not to barge in to your discussion… but yes there were Unix variants > that worked on the 286. Xenix was one such OS. Xenix being > Microsoft’s idea of avoiding the Unix name… > > Originally Xenix ran on PDP-11, and was ported to other machines that > have long passed into the oblivion of technological Hell. > > As for ‘preemetive multitasking… of course one can run a preemptive > scheduler on almost any CPU that has a clock interrupt. > > I wrote one for the 286 based on the kernel described in Douglas > Comer’s “Xinu” book. > > Products with that hack where produced for about 8 years… in the > early-mid-80s. I wrote it such that it would run in a DOS box and > allow for machine control of various robotic systems for industrial > inspection machines. > > In any case one can develop a multitasking kernel to run in a non-MMU > based system… just lends itself to crapping out on the least > provocation… > > What an MMU provides is hardware ‘address translation’ such that the > application can run in an ‘virtual absolute’ addressing space, > have memory protection such that errant code can’t clobber other > tasks or the kernel, and also given appropriate devices, > have ‘swapping’ for larger than real memory applications. > > The 286 ‘segment’ registers gave a bit of ‘translation’ capability in > that one could address relative to the segment registers, and so, > code and data could be place in available member and context switched > would update the segment registers. > > The segment registers were a crappy way of accessing memory if one > had long linear arrays of data to process… such as image processing… > which happened to be the application of my work at the time… > > And one could always implement an external MMU which was popular with > the Motorola M68K which was sort of the contemporary alternative to > the Intel x86 line. > > John Clark. > > On Mar 8, 2016, at 2:25 PM, Markus Hitter wrote: > > > Am 08.03.2016 um 22:56 schrieb Brad Walker: > > > But, are you saying that no engineering has been done on this yet > > > OR no > > > amount of engineering could make it work? > > > > If I recall correctly from some 25 years ago, memory address > > mapping > > (which is what a MMU does) is mandatory for preemtive multitasking. > > An > > i286 can't run a Unix-like OS either. > > > > > > In 2008 I tried to get FreeBSD down to its minimum, too. The > > success > > post is about all what's left today: > > > > https://lists.freebsd.org/pipermail/freebsd-embedded/2008-October/0 > > 00604.html > > > > The task to get there is simple and straightforward, but time > > consuming: > > go step by step through the kernel configuration to disable > > whatever you > > can spare. Configure, build, try, repeat. If you need a small > > entire > > system, do the same for packages and every single file you copy > > into > > your system image. > > > > > > Markus > >