Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 06 Aug 1999 00:05:04 -0700
From:      Mike Smith <mike@smith.net.au>
To:        Arun Sharma <adsharma@home.com>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Excessive assembly code ? 
Message-ID:  <199908060705.AAA00655@dingo.cdrom.com>
In-Reply-To: Your message of "Thu, 05 Aug 1999 23:35:54 PDT." <19990805233554.A1698@home.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
> 
> I wonder if so much assembly code is really necessary for FreeBSD. One
> argument for minimal usage of assembly code is that it is easier to code
> non trivial algorithms in C.
> 
> One such example is the scheduler. Since the decision about which process
> is going to run next is decided in assembly code, it is restricted to a
> relatively dumb algorithm of scanning the runqs and picking one. If the
> mechanism (i.e nuts and bolts of the context switch) is coded in assembly
> and the policy (which process to pick next) is done in C, the code would
> be much more maintainable, IMO.
> 
> How do people feel about it here ?

I've been studying this just recently.  The "pick the next proc" code 
really should be MI and written carefully in C, yes.  But if you look 
at the code surrounding it, for example, it needs some very careful 
thought.

Much of the assembly code actually in use is there for performance or 
architecture-related reasons; in many cases if you were to rewrite in C 
you would just end up with a lot of asm() macros...

-- 
\\  The mind's the standard       \\  Mike Smith
\\  of the man.                   \\  msmith@freebsd.org
\\    -- Joseph Merrick           \\  msmith@cdrom.com




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




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