From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Cross Message-Id: <200102061701.MAA25139@augusta.math.psu.edu> To: 9fans@cse.psu.edu Subject: Re: [9fans] azerty [french] keyboard support In-Reply-To: <05c401c0902c$457489c0$0ab9c6d4@cybercable.fr> References: <20010206020645.7213119A01@mail.cse.psu.edu> Cc: Date: Tue, 6 Feb 2001 12:01:14 -0500 Topicbox-Message-UUID: 5b2ec200-eac9-11e9-9e20-41e7f4b1d025 In article <05c401c0902c$457489c0$0ab9c6d4@cybercable.fr> you write: >that's a really bad idea. 2 context switches per character typed when >all that's required is one translation table in the most extreme case >(64k runes * 2 bytes = 128k). obvious that sort of a table is ridiculous, >even though 128k now isn't much, but all you need is a table (or >set of tables) that cover all the possible scan code and store the >matching rune. Yeah, I thought about the context switch thing, but mentally justified it to myself by way of figuring that keyboard input is so relatively infrequent that it wouldn't be a big deal. The problem with the tables in their present form is that they're not very flexible; to change the meaning of a key, one has to rebuild the kernel. Well, that sucks, but the only two solutions are to add some sort of way to change the translation tables in the kernel, or to move keyboard processing into user land. I'm not sure that the added complexity in the kernel is justified by saving a couple of context switches, bearing in mind that a few million instructions will go by between every keystroke. Then again, I'm sure the code that Charles sent you doesn't add much complexity to the kernel. My fear, however, is that bloat will eventually creep in if a bunch of such things, each not very complex in and of itself, is added to the kernel....this is what I feel happened to Unix. - Dan C.