From owner-freebsd-hackers Thu Jan 14 20:15:50 1999 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id UAA10874 for freebsd-hackers-outgoing; Thu, 14 Jan 1999 20:15:50 -0800 (PST) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from apollo.backplane.com (apollo.backplane.com [209.157.86.2]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id UAA10869 for ; Thu, 14 Jan 1999 20:15:49 -0800 (PST) (envelope-from dillon@apollo.backplane.com) Received: (from dillon@localhost) by apollo.backplane.com (8.9.1/8.9.1) id UAA28638; Thu, 14 Jan 1999 20:08:32 -0800 (PST) (envelope-from dillon) Date: Thu, 14 Jan 1999 20:08:32 -0800 (PST) From: Matthew Dillon Message-Id: <199901150408.UAA28638@apollo.backplane.com> To: "Robert V. Baron" Cc: "Ron G. Minnich" , zhihuizhang , hackers Subject: Re: TSS and context switch Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG :"Ron G. Minnich" writes: : :> I'm assuming you measured all this and determined that TSS was faster? :> :> Ron :Let's make it simpler for him. Why don't you just let him look :in the architecture manual for the 386/486/586 and PII and see :how many cycles the load and save takes compared to what is done :in practice. The Intel TSS stuff is *extremely* *slow* compared to doing it with discrete instructions, especially since many of the major supervisory registers do not change. There are a number of intel instructions which were designed to run fast on a 486, which turn out to be dogs on higher-end cpu's. For example, the ENTER instruction is considerably slower then doing the frame pointer / stack pointer manipulation manually. There are many others. -Matt Matthew Dillon To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message