{"id":394,"date":"2020-08-18T19:23:47","date_gmt":"2020-08-18T20:23:47","guid":{"rendered":"http:\/\/www.linux-tutorial.info\/?page_id=77"},"modified":"2020-08-22T19:26:01","modified_gmt":"2020-08-22T20:26:01","slug":"this-is-the-page-title-toplevel-227","status":"publish","type":"page","link":"http:\/\/www.linux-tutorial.info\/?page_id=394","title":{"rendered":"Hardware Basics"},"content":{"rendered":"\n<title>Hardware Basics<\/title>\n<p>\nAn operating system has to work closely with the hardware system that acts as\nits foundations. The operating system needs certain services that can only\nbe provided by the hardware.\nIn order to fully understand the Linux operating system, you need to\nunderstand the basics of the underlying hardware.\nThis section gives a brief introduction to that hardware: the modern PC.\n<p>\nNote that some of this material is a repeat of what you will find in the\n<site id=106>section on hardware<\/site>. However, it is important to talk\nabout it in the context of the interaction with the operating system. Hence the need\nto repeat a little of it here.\n<p>\nWhen the &#8220;Popular Electronics&#8221; magazine for January 1975 was printed with an\nillustration of the Altair 8800 on its front cover, a revolution started.\nThe Altair 8800, named after the destination of an early Star Trek episode,\ncould be assembled by home electronics enthusiasts for a mere $397.\nWith its Intel 8800 processor and 256 bytes of memory but no screen or\nkeyboard, it was puny by today&#8217;s standards.\nIts inventor, Ed Roberts, coined the term &#8220;personal computer&#8221; to describe\nhis new invention, but the term PC is now used to refer to almost any computer that\nyou can pick up without needing help.\nBy this definition, even some of the very powerful Alpha AXP systems are PCs.\n<p>\nEnthusiastic hackers saw the Altair&#8217;s potential and started to write software and\nbuild hardware for it.\nTo these pioneers it represented freedom; the freedom from huge batch\nprocessing mainframe systems run and guarded by an elite priesthood.\nOvernight fortunes were made by college dropouts fascinated by this new\nphenomenon, a computer that you could have at home on your kitchen table.\nA lot of hardware appeared, all different to some degree, and software hackers\nwere happy to write software for these new machines.\nParadoxically it was IBM who firmly cast the mould of the modern PC by\nannouncing the IBM PC in 1981 and shipping it to customers early in 1982.\nWith its Intel 8088 processor, 64K of memory (expandable to 256K), two\nfloppy disks and an 80 character by 25 line Colour Graphics Adapter (CGA)\nit was not very powerful by today&#8217;s standards but it sold well.\nIt was followed, in 1983, by the IBM PC-XT which had the luxury of a\n10Mbyte hard drive.\nIt was not long before IBM PC clones were being produced by a host of companies\nsuch as Compaq, and the architecture of the PC became a de-facto standard.\nThis de-facto standard helped a multitude of hardware companies to compete\nin a growing market which, happily for consumers, kept prices low.\nMany of the system architectural features of these early PCs have carried over\ninto the modern PC.  For example, even the most powerful Intel Pentium\nPro based system starts running in the Intel 8086&#8217;s addressing mode.\nIn the early 1990&#8217;s, when Linus Torvalds started writing what was to become Linux, he picked\nthe most plentiful and reasonably priced hardware, an Intel 80386 PC.\n<p>\n<p>\n<img decoding=\"async\" src=\"board.gif\"><br \/>\n<p>\n<icaption>Figure: A typical PC motherboard.<\/icaption>\n<p>\n<p>Looking at a PC from the outside, the most obvious components are a\nsystem box, a keyboard, a mouse and a video monitor.   On the front of\nthe system box are some buttons, a little display showing some numbers and a\nfloppy drive. Most systems these days have a DVD drive, or at the very least\na CD ROM. If you feel that\nyou have to protect your data, then there will also be a tape drive for\nbackups (although generally only on server machines).\nThese devices are collectively known as the peripherals.\n<p>\nAlthough the <glossary>CPU<\/glossary> is in overall control of the system, it is\nnot the only intelligent device.  All of the peripheral controllers, for example\nthe <glossary>IDE<\/glossary> controller, have some level of intelligence.\nInside the PC\n(Figure&nbsp;<a href=\"#motherboard-figure\"> 1.1<\/a>) you will see a motherboard\ncontaining the <glossary>CPU<\/glossary> or microprocessor, the memory and a number\nof slots for the ISA or PCI peripheral controllers. Some of the controllers, for\nexample the <glossary>IDE<\/glossary> disk controller may be built directly onto\nthe system board.\n<p>\nAlthough all controllers are different, they usually act in accordance with\ninformation stored in registers, a kind of dedicated, quickly accessed memory\nlocation.\nSoftware running on the <glossary>CPU<\/glossary> must be able to read and write those\ncontrolling registers. One register might contain status describing an error.\nAnother might be used for control purposes such as changing the mode of the controller.\nEach controller on a bus can be individually addressed by the <glossary>CPU<\/glossary>.\nThis is so that the software device driver can write to its registers and thus\ncontrol it. The <glossary>IDE<\/glossary> ribbon is a good example, as it gives you the ability to access\neach drive on the bus separately.\nAnother good example is the <glossary>PCI<\/glossary> bus which allows each device (for example a\ngraphics card) to be accessed independently.\n<p>\nThere are times when controllers need to read or write large amounts of data\ndirectly to or from system memory, for example when user data is being written\nto the hard disk. In this case,\nDirect Memory Access (<glossary>DMA<\/glossary>) controllers are used to allow\nhardware peripherals to directly access system memory. However, this access is under\nstrict control and supervision of the <glossary>CPU<\/glossary>.\n","protected":false},"excerpt":{"rendered":"<p>Hardware Basics An operating system has to work closely with the hardware system that acts as its foundations. The operating system needs certain services that can only be provided by the hardware. In order to fully understand the Linux operating &hellip; <a href=\"http:\/\/www.linux-tutorial.info\/?page_id=394\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-394","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/394","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=394"}],"version-history":[{"count":1,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/394\/revisions"}],"predecessor-version":[{"id":572,"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=\/wp\/v2\/pages\/394\/revisions\/572"}],"wp:attachment":[{"href":"http:\/\/www.linux-tutorial.info\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=394"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}