From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!news.glorb.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!buffer1.nntp.dca1.giganews.com!buffer2.nntp.dca1.giganews.com!nntp.earthlink.com!news.earthlink.com.POSTED!not-for-mail NNTP-Posting-Date: Fri, 30 Jun 2017 10:17:06 -0500 From: Dennis Lee Bieber Newsgroups: comp.lang.ada Subject: Re: R/W hardware registers ? Date: Fri, 30 Jun 2017 11:17:05 -0400 Organization: IISS Elusive Unicorn Message-ID: References: <87zicpykz3.fsf@jacob-sparre.dk> User-Agent: ForteAgent/8.00.32.1272 X-No-Archive: YES MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Usenet-Provider: http://www.giganews.com NNTP-Posting-Host: 108.68.176.100 X-Trace: sv3-v2yxAYp/m33d4aGmo+xb/gjA32tdb9jaDsQvMGjNvD0XjHkMhqijcUKq6DtwIbETceIm5fjDIqmXaz2!OY/csxoaIopI3Ign/woNkTjZxnTad2aKSaC508tDJVHZp7msMxcfj9XFoMvJg0y3BoeZM+D9wSih!9F1Kx6ZZtx/TCDXidK8fUU3oXZuZ X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.40 X-Original-Bytes: 2951 X-Received-Bytes: 3073 X-Received-Body-CRC: 2594710886 Xref: news.eternal-september.org comp.lang.ada:47234 Date: 2017-06-30T11:17:05-04:00 List-Id: On Fri, 30 Jun 2017 06:11:09 -0700 (PDT), patrick@spellingbeewinnars.org declaimed the following: >Thanks for answering my post. I am pretty sure you are right. I knew that DOS pretty much only has a root user and that user can access parallel ports and such and I knew that regular Posix users could not access hardware like this but I thought it could be by-passed with root access. > >However, if that was the case, people could still set pointers to hardware addresses in C and skip the use of outb(and similar calls). > And you will find such restrictions in /any/ modern general purpose multi-tasking OS* as they are designed to isolate the hardware from the user. You have to descend to the realm of embedded RTOS to get direct hardware access (and at that level, you likely have to write your own device drivers anyway -- so getting close to creating a Linux kernel module/driver to allow access from user-space). * AmigaOS was a mixed blessing/bane -- it did not use memory protection, all processes shared a flat memory space. This made it easy for a mis-behaving process to kill the system, but it also made the IPC (message ports => linked lists often carrying pointers to the data being passed) very efficient -- and it needed to be as practically everything in the OS went through message ports (opening a file sent IPC to file-handler process [which new the filesystem] which sent IPC to device handler [low-level device access], etc.). Upgrading AmigaOS to use memory protection/virtual memory would have required lots of overhead in copying/remapping IPC data between the various processes. -- Wulfraed Dennis Lee Bieber AF6VN wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/