Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Nov 1998 21:03:36 +0000
From:      "Paolo Di Francesco" <paipai@tin.it>
To:        jbg@masterplan.org (Jason George)
Cc:        freebsd-sparc@FreeBSD.ORG
Subject:   Re: [Code writers ONLY] Developer Kit
Message-ID:  <19981124200123.LSAL22050.fep03-svc@winworkstation>
In-Reply-To: <199811241648.JAA01185@gongshow.masterplan.org>

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> Huh?  Mainly using assembly code?  Since when?  Citing pages 22 and 
> 23 of "The Design and Implementation of the 4.4BSD Operating System" by 
> McKusick and others,
> 
> "The software that is machine dependent includes
> 
> o Low-level system-startup actions
> 
> o Trap and fault handling
> 
> o Low-level manipulation of the run-time context of a process
> 
> o Configuration and initialization of hardware devices
> 
> o Run-time support for I/O devices
> 
> ..
> 

I have this book too... It's the "red book" as I call it 8)

I expressed myself not very well...

What we are doind here is the BSD kernel, but I was talking of "another type of 
kernel". NOW, we have to experiment with boot process, and this means write 
many asm line which ARE NOT BSD kernel (maybe they will in the future...).
So what I wanted to say it's if you put this lines of code together, then some 
C lines (which are not necessary for this experiment) you have something 
similar to our BSD kernel from the booting point of view.  
This is not a typical app, but something new, more similar to a kernel (from 
that point of view) because you don't execute this app as usual, writing its 
name or clicking on it under your preferred OperatingSystem because, there's no 
Operating System... 8)

Hope this clarify... ;)


> Virtually all the software in the kernel is written in the C programming 
> language; less than 2 percent is written in assembly language... [T]he 
> machine-dependent software, excluding HP/UX and device support, accounts 
> for a minuscule 6.9 percent of the kernel."
> 

Yes, I read those statistics...

> Now McKusick was referring to the HP300 port, and the exact percentages 
> will be different within this context, but the relative proportions 
> should remain fairly consistent given any other port.
> 

This depends on the implementation. But I think we will be below the 
10%...maybe below 5%

> All you need assembly for is to setup the manipulation of the 5 points 
> listed above.  

Teorically, yes. For a minimal working kernel, yes. We can do a second step 
kernel in September 13th 1999 (when the Alpha station on the moon will be 
isolated from Earth... someone remembers?) doing some nice tricks with assebly 
code.

>The assembly code is then wrapped in a C wrapper, and you 
> then forget about the assembly code.  That's the design abstraction that 
> allows pretty much anything to be ported with the least amount of 
> effort. 
> 

Yes, I know. Good thing abstraction. 8)

> I'm not trying to trivialize the low-level work to be done here.  
> Effective and efficient assembly is non-trivial to code, but we're not 
> writing some high-speed microkernel or executive here.  We're writing, 
> heck, largely only _recoding_, an architecture for a different 
> implementation.
> 

Can I repeat: I was NOT talking of our BSD kernel, but "something it's not an 
app and which is more similar to a kernel from our point of view"

Thanks, for you patience. ^___^


P.S. This message is sent to FreeBSD-Sparc.




Ciao Ciao
       Paolo Di Francesco
   _
 ->B<-   All Recycled Bytes Message ...
   ~

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-sparc" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19981124200123.LSAL22050.fep03-svc>