Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!rutgers!seismo!mcvax!botter!ast From: ast@botter.UUCP Newsgroups: comp.os.minix Subject: Re: More on polled keyboards Message-ID: <1071@botter.cs.vu.nl> Date: Tue, 17-Feb-87 14:35:07 EST Article-I.D.: botter.1071 Posted: Tue Feb 17 14:35:07 1987 Date-Received: Thu, 19-Feb-87 06:23:45 EST References: <1070@botter.cs.vu.nl> <1236@husc6.UUCP> Reply-To: ast@cs.vu.nl (Andy Tanenbaum) Distribution: world Organization: VU Informatica, Amsterdam Lines: 12 I would be curious to know what kind of kludge is needed to make the following work in the normal way. When the operating system wants to read a disk block, it calls the BIOS. The BIOS then issues a disk command. The question is how does the operating system arrange for the BIOS to release control so that the OS can switch to another process while the operation is being carried out? This is the essence of multiprogramming, after all. In the IBM Technical Reference Manual BIOS listing, after the BIOS has issued a hardware command, it goes to line 2916 where it sits in a tight little loop (lines 2916 to 2927) until the interrupt happens. It does not give control back to the operating system so that another process can be run while waiting for the interrupt. Andy Tanenbaum