<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6531068449294892699</id><updated>2011-04-21T14:55:50.439-07:00</updated><title type='text'>IT 222 - Operating System</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://rojiealpas.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://rojiealpas.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rojie Urbane Alpas</name><uri>http://www.blogger.com/profile/03042561036462295120</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://th229.photobucket.com/albums/ee29/giaracame027/gif%20images/th_e879e4ff801ccbe6c9a6c710e09b0389.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>5</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6531068449294892699.post-7970706861185858683</id><published>2008-03-09T04:41:00.000-07:00</published><updated>2008-03-09T05:14:24.231-07:00</updated><title type='text'>QUIZ 1 - IT 222</title><content type='html'>&lt;div align="justify"&gt;&lt;strong&gt;&lt;span style="color:#33ff33;"&gt;1. Contact the network expert at your school or place of work. Find out which topology, communication links, and configuration are used in the network. IS it a LAN, MAN, or WAN?&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;     - The topology, communication links and configuration used in our school is the LAN or the Local Area Network because it only covers small geographical areas like schools.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#33ff33;"&gt;2. Discuss the primary diference between a bridge and a gateway and give real life example that uses each one?&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;     - A &lt;u&gt;bridge&lt;/u&gt; connects multiple &lt;/span&gt;&lt;a title="Network segment" href="http://en.wikipedia.org/wiki/Network_segment"&gt;&lt;span style="color:#33ff33;"&gt;network segments&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; at the &lt;/span&gt;&lt;a title="Data link layer" href="http://en.wikipedia.org/wiki/Data_link_layer"&gt;&lt;span style="color:#33ff33;"&gt;data link layer&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; (layer 2) of the &lt;/span&gt;&lt;a title="OSI model" href="http://en.wikipedia.org/wiki/OSI_model"&gt;&lt;span style="color:#33ff33;"&gt;OSI model&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, and the term layer 2 switch is often used interchangeably with bridge. Bridges are similar to &lt;/span&gt;&lt;a title="Repeater" href="http://en.wikipedia.org/wiki/Repeater"&gt;&lt;span style="color:#33ff33;"&gt;repeaters&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; or &lt;/span&gt;&lt;a title="Network hub" href="http://en.wikipedia.org/wiki/Network_hub"&gt;&lt;span style="color:#33ff33;"&gt;network hubs&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, devices that connect network segments at the &lt;/span&gt;&lt;a title="Physical layer" href="http://en.wikipedia.org/wiki/Physical_layer"&gt;&lt;span style="color:#33ff33;"&gt;physical layer&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, however a bridge works by using &lt;/span&gt;&lt;a title="Bridging (networking)" href="http://en.wikipedia.org/wiki/Bridging_%28networking%29"&gt;&lt;span style="color:#33ff33;"&gt;bridging&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; where traffic from one network is managed rather than simply rebroadcast to adjacent network segments. In Ethernet networks, the term "bridge" formally means a device that behaves according to the &lt;/span&gt;&lt;a title="IEEE 802.1D" href="http://en.wikipedia.org/wiki/IEEE_802.1D"&gt;&lt;span style="color:#33ff33;"&gt;IEEE 802.1D&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; standard—this is most often referred to as a &lt;/span&gt;&lt;a title="Network switch" href="http://en.wikipedia.org/wiki/Network_switch"&gt;&lt;span style="color:#33ff33;"&gt;network switch&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; in marketing literature. A &lt;u&gt;gateway&lt;/u&gt; may contain devices such as &lt;/span&gt;&lt;a title="Communications protocol" href="http://en.wikipedia.org/wiki/Communications_protocol"&gt;&lt;span style="color:#33ff33;"&gt;protocol&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; translators, &lt;/span&gt;&lt;a title="Impedance matching" href="http://en.wikipedia.org/wiki/Impedance_matching"&gt;&lt;span style="color:#33ff33;"&gt;impedance matching&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; devices, rate converters, &lt;/span&gt;&lt;a title="Fault (technology)" href="http://en.wikipedia.org/wiki/Fault_%28technology%29"&gt;&lt;span style="color:#33ff33;"&gt;fault&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; isolators, or &lt;/span&gt;&lt;a class="mw-redirect" title="Signalling (telecommunication)" href="http://en.wikipedia.org/wiki/Signalling_%28telecommunication%29"&gt;&lt;span style="color:#33ff33;"&gt;signal&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; translators as necessary to provide &lt;/span&gt;&lt;a title="System" href="http://en.wikipedia.org/wiki/System"&gt;&lt;span style="color:#33ff33;"&gt;system&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; &lt;/span&gt;&lt;a title="Interoperability" href="http://en.wikipedia.org/wiki/Interoperability"&gt;&lt;span style="color:#33ff33;"&gt;interoperability&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. It also requires the establishment of mutually acceptable administrative procedures between both networks. &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;  *Example of bridge in real life is use in &lt;/span&gt;&lt;a title="Packet switching" href="http://en.wikipedia.org/wiki/Packet_switching"&gt;&lt;span style="color:#33ff33;"&gt;packet-switched&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; &lt;/span&gt;&lt;a title="Computer network" href="http://en.wikipedia.org/wiki/Computer_network"&gt;&lt;span style="color:#33ff33;"&gt;computer networks&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and for gateway is use for connecting a &lt;/span&gt;&lt;a class="mw-redirect" title="Local Area Network" href="http://en.wikipedia.org/wiki/Local_Area_Network"&gt;&lt;span style="color:#33ff33;"&gt;Local Area Network&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; or &lt;/span&gt;&lt;a title="Wireless LAN" href="http://en.wikipedia.org/wiki/Wireless_LAN"&gt;&lt;span style="color:#33ff33;"&gt;Wireless LAN&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; to the &lt;/span&gt;&lt;a title="Internet" href="http://en.wikipedia.org/wiki/Internet"&gt;&lt;span style="color:#33ff33;"&gt;Internet&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; or other &lt;/span&gt;&lt;a class="mw-redirect" title="Wide Area Network" href="http://en.wikipedia.org/wiki/Wide_Area_Network"&gt;&lt;span style="color:#33ff33;"&gt;Wide Area Network&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#33ff33;"&gt;3. Name three commercially-available operating systems for LANs and their vendor names. Explain the topology that each designed to manage and describe the access protocol it uses.&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;     - Three commercially-available operating systems for LANs are the Windows 98, XP and Vista. This operating systems are created by the Microsoft Windows Corporation.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;     - Windows 98 was the first operating system to use the &lt;/span&gt;&lt;a title="Windows Driver Model" href="http://en.wikipedia.org/wiki/Windows_Driver_Model"&gt;&lt;span style="color:#33ff33;"&gt;Windows Driver Model&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; (WDM). This fact was not well published when Windows 98 was released and most hardware producers continued to develop drivers for the older driver standard, &lt;/span&gt;&lt;a title="VxD" href="http://en.wikipedia.org/wiki/VxD"&gt;&lt;span style="color:#33ff33;"&gt;VxD&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. Windows Vista networking stack supports the dual &lt;/span&gt;&lt;a title="Internet Protocol" href="http://en.wikipedia.org/wiki/Internet_Protocol"&gt;&lt;span style="color:#33ff33;"&gt;Internet Protocol&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; (IP) layer architecture in which the &lt;/span&gt;&lt;a title="IPv4" href="http://en.wikipedia.org/wiki/IPv4"&gt;&lt;span style="color:#33ff33;"&gt;IPv4&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and &lt;/span&gt;&lt;a title="IPv6" href="http://en.wikipedia.org/wiki/IPv6"&gt;&lt;span style="color:#33ff33;"&gt;IPv6&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; implementations share common &lt;/span&gt;&lt;a title="Transport layer" href="http://en.wikipedia.org/wiki/Transport_layer"&gt;&lt;span style="color:#33ff33;"&gt;Transport&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and &lt;/span&gt;&lt;a title="Data link layer" href="http://en.wikipedia.org/wiki/Data_link_layer"&gt;&lt;span style="color:#33ff33;"&gt;Framing&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; layers. Windows Vista provides a &lt;/span&gt;&lt;a title="Graphical user interface" href="http://en.wikipedia.org/wiki/Graphical_user_interface"&gt;&lt;span style="color:#33ff33;"&gt;GUI&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; for configuration of both IPv4 and IPv6 properties. &lt;/span&gt;&lt;a title="IPv6" href="http://en.wikipedia.org/wiki/IPv6"&gt;&lt;span style="color:#33ff33;"&gt;IPv6&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; is now supported by all networking components and services.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;span style="color:#33ff33;"&gt; &lt;strong&gt;4. Explain the similarities and differences between a file infector virus and a macro virus, including the types of files each infects.&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;     - File infector viruses are the 'classic' form of &lt;/span&gt;&lt;a class="glossary" title="Virus: Program that infects other files" href="http://www.virusbtn.com/resources/glossary/virus.xml"&gt;&lt;span style="color:#33ff33;"&gt;virus&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, those to which the term is most commonly and, along with &lt;/span&gt;&lt;a class="glossary" title="Boot sector virus: Virus spreading on disks" href="http://www.virusbtn.com/resources/glossary/boot_sector_virus.xml"&gt;&lt;span style="color:#33ff33;"&gt;boot sector viruses&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, most appropriately applied. A macro virus is a &lt;/span&gt;&lt;a title="Computer virus" href="http://en.wikipedia.org/wiki/Computer_virus"&gt;&lt;span style="color:#33ff33;"&gt;virus&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; that is written in a &lt;/span&gt;&lt;a title="Macro (computer science)" href="http://en.wikipedia.org/wiki/Macro_%28computer_science%29"&gt;&lt;span style="color:#33ff33;"&gt;macro&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; &lt;/span&gt;&lt;a title="Programming language" href="http://en.wikipedia.org/wiki/Programming_language"&gt;&lt;span style="color:#33ff33;"&gt;language&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;: that is to say, a language built into a software application such as a word processor. This viruses infects document files on a network or a system.&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;  &lt;br /&gt;&lt;strong&gt;5. Give three examples of inadequate passwords and explain why each would be a poor choice to protect a system from unauthorized users.&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;     - Example of this is the &lt;/span&gt;&lt;a title="Export of cryptography" href="http://en.wikipedia.org/wiki/Export_of_cryptography"&gt;&lt;span style="color:#33ff33;"&gt;restrictions on the export of cryptography&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; that uses short or weak keys or passwords. The weak key is fed through an algorithm that takes a known constant time to apply.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531068449294892699-7970706861185858683?l=rojiealpas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rojiealpas.blogspot.com/feeds/7970706861185858683/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6531068449294892699&amp;postID=7970706861185858683' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/7970706861185858683'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/7970706861185858683'/><link rel='alternate' type='text/html' href='http://rojiealpas.blogspot.com/2008/03/quiz-1-it-222.html' title='QUIZ 1 - IT 222'/><author><name>Rojie Urbane Alpas</name><uri>http://www.blogger.com/profile/03042561036462295120</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://th229.photobucket.com/albums/ee29/giaracame027/gif%20images/th_e879e4ff801ccbe6c9a6c710e09b0389.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531068449294892699.post-616437829152080561</id><published>2008-01-15T05:02:00.000-08:00</published><updated>2008-01-15T05:38:54.859-08:00</updated><title type='text'>Exercises #1-6</title><content type='html'>&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;1.&lt;strong&gt; Deadlock&lt;/strong&gt; a problem occuring when the resources needed by some jobs to finish execution      are held by other jobs , which, in turn, are waiting for other resources to become available. Also called deadly embrace. &lt;strong&gt;Starvation &lt;/strong&gt;the result of conservative allocation of resources in which a single job is prevented from execution because it's kept waiting for resources that never become available. &lt;strong&gt;Race &lt;/strong&gt;a synchronization problem between two processes vying for the same resource.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;2. *&lt;strong&gt;Deadlock example &lt;/strong&gt;- a traffic cituation of vehicles in a highway.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;    *&lt;strong&gt;Starvation example &lt;/strong&gt;- a cituation in a dining table with one food served to 5 people using 5 utensils only but 2 utensils each. This results to the starvation of some people.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;    &lt;strong&gt;*Race &lt;/strong&gt;example - a cituation that has a competition between 2 persons for only one source of food.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;3. &lt;strong&gt;Four Necessary Conditions for Deadlock: &lt;/strong&gt;The presence of deadlock in a systems is characterized by these four necessary conditions. The term necessary means that if there is deadlock then all four must be present.a. Mutual exclusive resource access - A resource acquired is held exclusively, i.e., it is not shared by other processes.b. No preemption - A process' resources cannot be taken away from it. Only the process can give up its resources.c. Hold and Wait - A process has some resources and is blocked requesting more.d. Circularity - This means that there is a circular chain of two or more processes in which the resources needed by one process are held by the next process.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;4.  &lt;strong&gt;Algorithm for prevention of deadlock and starvation: &lt;/strong&gt;public boolean tryAcquire( int n0, int n1, ... ) { if ( for all i: ni ≤ availi ) { // successful acquisition availi -= ni for all i; return true; // indicate success } else return false; // indicate failure}init) Semaphore s = new Semaphore(1,1);Thread A Thread B-------- --------s.acquire(1,0); s.acquire(0,1);s.acquire(0,1); s.acquire(1,0);Thread B--------while(true) {s.acquire(0,1);if ( s.tryAcquire(1,0) ) // if second acquisition succeedsbreak; // leave the loopelse {s.release(0,1); // release what is heldsleep( SOME_AMOUNT); // pause a bit before trying again}}run action s.value--- ------ -------(1,1)A s.acquire(1,0) (0,1)B s.acquire(0,1) (0,0)A s.acquire(0,1) A blocks on secondB s.tryAcquire(1,0) =&gt; falseB s.release(0,1) (0,1)A s.acquire(0,1) (0,0) A succeeds on second. &lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;5. a. Based on the figure, deadlock may occur.It can be happen when traffic controllers who control the traffic lights will be out of control that may result to a traffic or in a computer environment, a deadlock.  &lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;     b. It can be detected if cars passing on both roads are stock that they cannot move.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;     c. To prevent a deadlock, traffic controllers must asure the controls of the traffic lights to be clear and fine. &lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;6. a. This is not a deadlocked.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;    b. There is no blocked processes.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;    c. P2 can freely request on R1 and R2.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;    d. P1 can freely request on R1 and R2.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#ff6666;"&gt;    e. Both P1 and P2 have requested R2.1. P1 will wait after the request of P2.2. P2 will wait after  the request of P1.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531068449294892699-616437829152080561?l=rojiealpas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rojiealpas.blogspot.com/feeds/616437829152080561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6531068449294892699&amp;postID=616437829152080561' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/616437829152080561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/616437829152080561'/><link rel='alternate' type='text/html' href='http://rojiealpas.blogspot.com/2008/01/exercises-1-6.html' title='Exercises #1-6'/><author><name>Rojie Urbane Alpas</name><uri>http://www.blogger.com/profile/03042561036462295120</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://th229.photobucket.com/albums/ee29/giaracame027/gif%20images/th_e879e4ff801ccbe6c9a6c710e09b0389.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531068449294892699.post-4902784071706246678</id><published>2007-12-13T04:25:00.000-08:00</published><updated>2007-12-13T05:10:49.076-08:00</updated><title type='text'>Memory Management in Linux</title><content type='html'>&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Linux&lt;/span&gt;&lt;/span&gt; is a &lt;a style="color: rgb(255, 204, 102);" href="http://en.wikipedia.org/wiki/Unix-like" title="Unix-like"&gt;Unix-like&lt;/a&gt; computer &lt;a href="http://en.wikipedia.org/wiki/Operating_system" title="Operating system"&gt;operating system&lt;/a&gt;. Linux is one of the most prominent examples of &lt;a href="http://en.wikipedia.org/wiki/Free_software" title="Free software"&gt;free software&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Open_source" title="Open source"&gt;open source&lt;/a&gt; development; typically all underlying &lt;a href="http://en.wikipedia.org/wiki/Source_code" title="Source code"&gt;source code&lt;/a&gt; can be freely modified, used, and redistributed by anyone.&lt;/p&gt;&lt;div style="text-align: justify; color: rgb(255, 204, 102);"&gt; &lt;/div&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;The &lt;a href="http://en.wikipedia.org/wiki/Linux_kernel" title="Linux kernel"&gt;Linux kernel&lt;/a&gt; was first released to the public on &lt;a href="http://en.wikipedia.org/wiki/September_17" title="September 17"&gt;17 September&lt;/a&gt; &lt;a href="http://en.wikipedia.org/wiki/1991" title="1991"&gt;1991&lt;/a&gt;, for the &lt;a href="http://en.wikipedia.org/wiki/X86_architecture" title="X86 architecture"&gt;Intel x86&lt;/a&gt; PC architecture. The kernel was augmented with &lt;a href="http://en.wikipedia.org/wiki/System_utility" title="System utility"&gt;system utilities&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Library_%28computer_science%29" title="Library (computer science)"&gt;libraries&lt;/a&gt; from the &lt;a href="http://en.wikipedia.org/wiki/GNU" title="GNU"&gt;GNU&lt;/a&gt; project to create a usable operating system, which &lt;a href="http://en.wikipedia.org/wiki/GNU/Linux_naming_controversy" title="GNU/Linux naming controversy"&gt;led to an alternative term&lt;/a&gt;, &lt;b&gt;GNU/Linux&lt;/b&gt;. Linux is packaged for different uses in &lt;a href="http://en.wikipedia.org/wiki/Linux_distribution" title="Linux distribution"&gt;Linux distributions&lt;/a&gt;, which contain the sometimes modified kernel along with a variety of other software packages tailored to different requirements.&lt;/p&gt;&lt;div style="text-align: justify; color: rgb(255, 204, 102);"&gt; &lt;/div&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;Predominantly known for its use in &lt;a href="http://en.wikipedia.org/wiki/Server_%28computing%29" title="Server (computing)"&gt;servers&lt;/a&gt;, Linux is supported by corporations such as &lt;a href="http://en.wikipedia.org/wiki/Dell" title="Dell"&gt;Dell&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Hewlett-Packard" title="Hewlett-Packard"&gt;Hewlett-Packard&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/IBM" title="IBM"&gt;IBM&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Novell" title="Novell"&gt;Novell&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Oracle_Corporation" title="Oracle Corporation"&gt;Oracle Corporation&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Red_Hat" title="Red Hat"&gt;Red Hat&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/Sun_Microsystems" title="Sun Microsystems"&gt;Sun Microsystems&lt;/a&gt;. It is used as an operating system for a wide variety of computer &lt;a href="http://en.wikipedia.org/wiki/Hardware" title="Hardware"&gt;hardware&lt;/a&gt;, including &lt;a href="http://en.wikipedia.org/wiki/Desktop_computer" title="Desktop computer"&gt;desktop computers&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Supercomputers" title="Supercomputers"&gt;supercomputers&lt;/a&gt;, game systems, such as &lt;a href="http://en.wikipedia.org/wiki/PlayStation_2" title="PlayStation 2"&gt;PlayStation 2&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/PlayStation_3" title="PlayStation 3"&gt;3&lt;/a&gt;, several &lt;a href="http://en.wikipedia.org/wiki/Arcade_games" title="Arcade games"&gt;arcade games&lt;/a&gt;, and &lt;a href="http://en.wikipedia.org/wiki/Embedded_devices" title="Embedded devices"&gt;embedded devices&lt;/a&gt;, such as &lt;a href="http://en.wikipedia.org/wiki/Mobile_phone" title="Mobile phone"&gt;mobile phones&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Routers" title="Routers"&gt;routers&lt;/a&gt;.&lt;/p&gt;&lt;h3 style="color: rgb(255, 204, 102); text-align: justify;"&gt;Linux Memory Management&lt;/h3&gt;&lt;div style="text-align: justify; color: rgb(255, 204, 102);"&gt;  &lt;/div&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;The Linux memory manager implements demand paging with a copy-on-write strategy relying on the 386's paging support. A process acquires its page tables from its parent (during a &lt;tt&gt;fork()&lt;/tt&gt;) with the entries marked as read-only or swapped.  Then, if the process tries to write to that memory space, and the page is a copy-on-write page, it is copied, and the page is marked read-write.  An &lt;tt&gt;exec()&lt;/tt&gt; results in the reading in of a page or so from the executable.  The process then faults in any other pages it needs.  &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;Each process has a page directory which means it can access 1 KB of page tables pointing to 1 MB of 4 KB pages which is 4 GB of memory.  A process' page directory is initialized during a fork by &lt;tt&gt;copy_page_tables()&lt;/tt&gt;.  The idle process has its page directory initialized during the initialization sequence.  &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;Each user process has a local descriptor table that contains a code segment and data-stack segment. These user segments extend from 0 to 3 GB (0xc0000000).  In user space, linear addresses and logical addresses are identical.  &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;On the 80386, linear address run from 0GB to 4GB.  A linear address points to a particular memory location within this space.  A linear address is &lt;b&gt;not&lt;/b&gt; a physical address--it is a virtual address. A logical address consists of a selector and an offset.  The selector points to a segment and the offset tells how far into that segment the address is located)  &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;The kernel code and data segments are privileged segments defined in the global descriptor table and extend from 3 GB to 4 GB.  The swapper page directory (&lt;tt&gt;swapper_page_dir&lt;/tt&gt; is set up so that logical addresses and physical addresses are identical in kernel space.  &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;The space above 3 GB appears in a process' page directory as pointers to kernel page tables. This space is invisible to the process in user mode but the mapping becomes relevant when privileged mode is entered, for example, to handle a system call.  Supervisor mode is entered within the context of the current process so address translation occurs with respect to the process' page directory but using kernel segments. This is identically the mapping produced by using the &lt;tt&gt;swapper_pg_dir&lt;/tt&gt; and kernel segments as both page directories use the same page tables in this space. Only &lt;tt&gt;task[0]&lt;/tt&gt; (the idle task, sometimes called the swapper task for historical reasons, even though it has nothing to do with swapping in the Linux implementation) uses the &lt;tt&gt;swapper_pg_dir&lt;/tt&gt; directly. &lt;/p&gt;&lt;ul style="color: rgb(255, 204, 102); text-align: justify;"&gt;&lt;li&gt;The user process' &lt;tt&gt;segment_base&lt;/tt&gt; = 0x00, &lt;tt&gt;page_dir&lt;/tt&gt; private to the process.  &lt;/li&gt;&lt;li&gt;user process makes a system call: &lt;tt&gt;segment_base&lt;/tt&gt;=0xc0000000 &lt;tt&gt;page_dir&lt;/tt&gt; = same user &lt;tt&gt;page_dir&lt;/tt&gt;. &lt;/li&gt;&lt;li&gt;&lt;tt&gt;swapper_pg_dir&lt;/tt&gt; contains a mapping for all physical pages from 0xc0000000 to 0xc0000000 + &lt;tt&gt;end_mem&lt;/tt&gt;, so the first 768 entries in &lt;tt&gt;swapper_pg_dir&lt;/tt&gt; are 0's, and then there are 4 or more that point to kernel page tables. &lt;/li&gt;&lt;li&gt;The user page directories have the same entries as &lt;tt&gt;swapper_pg_dir&lt;/tt&gt; above 768. The first 768 entries map the user space. &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify; color: rgb(255, 204, 102);"&gt; The upshot is that whenever the linear address is above 0xc0000000 everything uses the same kernel page tables.  &lt;/div&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;The user stack sits at the top of the user data segment and grows down. The kernel stack is not a pretty data structure or segment that I can point to with a ``yon lies the kernel stack.'' A &lt;tt&gt;kernel_stack_frame&lt;/tt&gt; (a page) is associated with each newly created process and is used whenever the kernel operates within the context of that process. Bad things would happen if the kernel stack were to grow below its current stack frame.   &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;User pages can be stolen or swapped.  A user page is one that is mapped below 3 GB in a user page table.  This region does not contain page directories or page tables.  Only dirty pages are swapped.  &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102); text-align: justify;"&gt;Minor alterations are needed in some places (tests for process memory limits comes to mind) to provide support for programmer defined segments.&lt;/p&gt;&lt;span style="color: rgb(255, 204, 102);font-family:verdana;font-size:130%;"  &gt;&lt;span style="font-weight: bold;"&gt;Linux Virtual memory&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;h3 style="font-weight: bold; color: rgb(255, 204, 102);"&gt; &lt;span style="font-size:100%;"&gt;&lt;span class="mw-headline"&gt;Introduction&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt; &lt;p style="color: rgb(255, 204, 102);"&gt;The Linux philosophy regarding memory usage is that “unused memory is wasted memory”. So what does that mean when you look at the free list when using the top utility or vmstat? It means that top is showing you wasted memory, or rather, memory that is not currently needed. Looking at the free column alone to determine current memory usage is misleading, in that it gives you an incomplete view of the whole memory picture. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;In this paper I will try to provide a more complete view of Linux memory management and highlight a few tools that will help reach this goal. I will also outline a method for quickly determining a Linux system's memory use, which should prove handy when you need to eliminate possible contributors to bad performance or chase down memory related errors. The tools and methods I will use in the examples have been chosen due to their availability and ease of use, and can be applied to any Linux system if you want to re-create the scenarios on your own equipment. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;First off, we should get some terms defined that appear throughout this document. Particular focus will be paid to the Page Cache throughout this paper. The reason for this, is that the page cache is where it seems all our memory winds up. &lt;/p&gt; &lt;a style="color: rgb(255, 204, 102);" name="Definitions"&gt;&lt;/a&gt;&lt;h3 style="font-weight: bold; color: rgb(255, 204, 102);"&gt; &lt;span style="font-size:100%;"&gt;&lt;span class="mw-headline"&gt;Definitions&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt; &lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Page&lt;/b&gt; - a discrete unit of memory that is manipulated by the Linux kernel. In systems that utilize Intel 32 bit processors, a page is 4096 bytes, or 4 kilobytes (KB). &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Anonymous memory&lt;/b&gt; - when a process requests memory from the kernel via the malloc() system call, the process is assigned memory that has no file backing on disk. This is why it is called "anonymous". When this memory is allocated, a reservation is taken against physical swap space on disk. This way, when the kernel needs to free up memory (due to pressure from processes that need more memory or when new processes start), this area will be used to write out the changed pages. The kernel will then add these reclaimed pages to the free list. When a process tries to access pages that have since been paged to the swap area, those pages need to be read back from disk and written into memory. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Buffer cache&lt;/b&gt; - The buffer cache is the area of memory set aside to buffer blocks read from or written to disk. This disk activity is known as disk I/O, or disk input and output. Buffer cache also contains filesystem metadata, such as directory structure data and filesystem journaling information. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Page cache&lt;/b&gt; - The area of memory set aside for filesystem and process pages that have been read in from disk, or pages that have no file backing. If the kernel needs to allocate memory to a process, and it finds the pages here, there will be no disk I/O operation. The page cache contains anonymous memory pages, processes' executable pages and pages of regular files open for reading and writing. The Linux kernel tries to keep this as large as possible to maintain fast file operations. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Paging&lt;/b&gt; - The act of moving pages of memory in to and out from disk. Paging in refers to loading a process's executable image and associated data into memory at startup. It also refers to loading pages into memory that were previously written to swap. Paging out occurs when pages are written to disk in order to free memory. This paging out can be either to its file backing on the filesystem or to disk based swap. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Free list&lt;/b&gt; - The pool from which memory allocations are satisfied. The Linux kernel tries to keep the free list at a certain size so that allocations need not always be satisfied from cache. The kernel uses a method of aging where the least recently used pages eventually filter down through different states and are then candidates for being placed here. &lt;/p&gt;&lt;p style="color: rgb(255, 204, 102);"&gt;&lt;b&gt;Cache hit rate&lt;/b&gt; - the rate at which a system can find a page in cache. A miss indicates a read from disk for the requested page, which is slow and needs to be avoided. &lt;/p&gt;&lt;br /&gt;&lt;div style="text-align: justify; color: rgb(255, 204, 102);"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531068449294892699-4902784071706246678?l=rojiealpas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rojiealpas.blogspot.com/feeds/4902784071706246678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6531068449294892699&amp;postID=4902784071706246678' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/4902784071706246678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/4902784071706246678'/><link rel='alternate' type='text/html' href='http://rojiealpas.blogspot.com/2007/12/linux-is-unix-like-computer-operating.html' title='Memory Management in Linux'/><author><name>Rojie Urbane Alpas</name><uri>http://www.blogger.com/profile/03042561036462295120</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://th229.photobucket.com/albums/ee29/giaracame027/gif%20images/th_e879e4ff801ccbe6c9a6c710e09b0389.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531068449294892699.post-8652465444415336319</id><published>2007-11-28T16:27:00.000-08:00</published><updated>2007-11-29T23:42:05.222-08:00</updated><title type='text'>Research Topics 2</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_eX3T3ZS3Qrs/R0--dGblemI/AAAAAAAAAAU/j33bV24EUkU/s1600-R/aa.jpg"&gt;&lt;img style="cursor: pointer; width: 171px; height: 219px;" src="http://3.bp.blogspot.com/_eX3T3ZS3Qrs/R0--dGblemI/AAAAAAAAAAU/HDULAeG0fNc/s320/aa.jpg" alt="" id="BLOGGER_PHOTO_ID_5138535107004824162" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_eX3T3ZS3Qrs/R0--DWblelI/AAAAAAAAAAM/mecRRfK22g4/s1600-R/aaaaaa.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_eX3T3ZS3Qrs/R0--DWblelI/AAAAAAAAAAM/s6l0VSNLtfI/s320/aaaaaa.jpg" alt="" id="BLOGGER_PHOTO_ID_5138534664623192658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify; color: rgb(0, 0, 0);"&gt;&lt;strong style="color: rgb(0, 0, 0); font-family: georgia; font-weight: normal;"&gt;&lt;span style="color: rgb(255, 204, 204);font-size:130%;" &gt;&lt;u&gt;&lt;br /&gt;&lt;br /&gt;Virtual memory in UNIX&lt;/u&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="color: rgb(255, 204, 204); text-align: justify;"&gt;&lt;span style="color: rgb(255, 204, 204);"&gt;     Virtual memory is an internal “trick” that relies on the fact that not every executing task is always referencing it’s RAM memory region. Since all RAM regions are not constantly in-use, UNIX has developed a paging algorithm that move RAM memory pages to the swap disk when it appears that they will not be needed in the immediate future.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="color: rgb(255, 204, 204); text-align: justify;"&gt; &lt;/div&gt;&lt;div style="color: rgb(255, 204, 204); text-align: justify;"&gt;&lt;strong&gt;&lt;span style="color: rgb(255, 204, 204);"&gt;&lt;em&gt;&lt;span style="font-weight: bold;font-family:trebuchet ms;" &gt;RAM demand paging in UNIX;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/em&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;div style="color: rgb(0, 0, 0); text-align: justify;"&gt;&lt;span style="color: rgb(255, 204, 204);"&gt;     As memory regions are created, UNIX will not refuse a new task whose RAM requests exceeds the amount of RAM. Rather, UNIX will page out the least recently referenced RAM memory page to the swap disk to make room for the incoming request. When the physical limit of the RAM is exceeded UNIX can wipe-out RAM regions because they have already been written to the swap disk. When the RAM region is been removed to swap, any subsequent references by the originating program require UNIX copy page in the RAM region to make the memory accessible. UNIX page in operations involve disk I/O and are a source of slow performance. Hence, avoiding UNIX page in operations is an important concern for the Oracle DBA.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p style="color: rgb(255, 204, 204);"&gt;&lt;span style="color: rgb(255, 204, 204);font-size:130%;" &gt;&lt;b&gt;Memory management&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="color: rgb(255, 204, 204);"&gt;Memory management is the act of managing &lt;a href="http://en.wikipedia.org/wiki/Computer_memory" title="Computer memory"&gt;computer memory&lt;/a&gt;. In its simpler forms, this involves providing ways to allocate portions of memory to programs at their request, and freeing it for reuse when no longer needed.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a href="http://en.wikipedia.org/wiki/Virtual_memory" title="Virtual memory"&gt;Virtual memory&lt;/a&gt; systems separate the memory addresses used by a process from actual physical addresses, allowing separation of processes and increasing the effectively available amount of RAM using &lt;a href="http://en.wikipedia.org/wiki/Virtual_memory" title="Virtual memory"&gt;disk swapping&lt;/a&gt;. The quality of the virtual memory manager can have a big impact on overall system performance.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a href="http://en.wikipedia.org/wiki/Garbage_collection_%28computer_science%29" title="Garbage collection (computer science)"&gt;Garbage collection&lt;/a&gt; is the automated allocation, and deallocation of computer memory resources for a program. This is generally implemented at the programming language level and is in opposition to &lt;a href="http://en.wikipedia.org/wiki/Manual_memory_management" title="Manual memory management"&gt;manual memory management&lt;/a&gt;, the explicit allocation and deallocation of computer memory resources.&lt;/p&gt;&lt;h3 style="color: rgb(255, 204, 204);"&gt;&lt;span class="mw-headline"&gt;Relocation&lt;/span&gt;&lt;/h3&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;In systems with &lt;a href="http://en.wikipedia.org/wiki/Virtual_memory" title="Virtual memory"&gt;virtual memory&lt;/a&gt;, programs in memory must be able to reside in different parts of the memory at different times. This is because when the program is swapped back into memory after being swapped out for a while it can not always be placed in the same location. Memory management in the operating system should therefore be able to relocate programs in memory and handle memory references in the code of the program so that they always point to the right location in memory.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a name="Protection" id="Protection"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3 style="color: rgb(255, 204, 204);"&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span class="mw-headline"&gt;Protection&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p style="color: rgb(255, 204, 204);"&gt;Processes should not be able to reference the memory for another process without permission. This is called &lt;a href="http://en.wikipedia.org/wiki/Memory_protection" title="Memory protection"&gt;memory protection&lt;/a&gt;, and prevents malicious or malfunctioning code in one program from interfering with the operation of other running programs.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a name="Sharing" id="Sharing"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3 style="color: rgb(255, 204, 204);"&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span class="mw-headline"&gt;Sharing&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;p style="color: rgb(255, 204, 204);"&gt;Even though the memory for different processes is protected from each other different processes should be able to share information and therefore access the same part of memory.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a name="Logical_organization" id="Logical_organization"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3 style="color: rgb(255, 204, 204);"&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span class="mw-headline"&gt;Logical organization&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;Programs are often organized in modules. Some of these modules could be shared between different programs, some are read only and some contain data that can be modified. The memory management is responsible for handling this logical organization that is different from the physical linear address space. One way to arrange this organization is &lt;a href="http://en.wikipedia.org/wiki/Segmentation_%28memory%29" title="Segmentation (memory)"&gt;segmentation&lt;/a&gt;.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a name="Physical_organization" id="Physical_organization"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3 style="color: rgb(255, 204, 204);"&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span class="mw-headline"&gt;Physical organization&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;Memory is usually divided into fast &lt;a href="http://en.wikipedia.org/wiki/Primary_storage" title="Primary storage"&gt;primary storage&lt;/a&gt; and slow &lt;a href="http://en.wikipedia.org/wiki/Secondary_storage" title="Secondary storage"&gt;secondary storage&lt;/a&gt;. Memory management in the operating system handles moving information between these two levels of memory.&lt;/p&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;&lt;a name="DOS_memory_managers" id="DOS_memory_managers"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h2 style="color: rgb(255, 204, 204);"&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;span class="mw-headline"&gt;DOS memory managers&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt; &lt;p style="color: rgb(255, 204, 204);"&gt;In addition to standard memory management, the 640 KB barrier of &lt;a href="http://en.wikipedia.org/wiki/MS-DOS" title="MS-DOS"&gt;MS-DOS&lt;/a&gt; and compatible systems led to the development of programs known as &lt;a href="http://en.wikipedia.org/wiki/Memory_manager" title="Memory manager"&gt;memory managers&lt;/a&gt; when PC main memories started to be routinely larger than 640 KB in the late 1980s (see &lt;a href="http://en.wikipedia.org/wiki/Conventional_memory" title="Conventional memory"&gt;conventional memory&lt;/a&gt;). These move portions of the operating system outside their normal locations in order to increase the amount of conventional or quasi-conventional memory available to other applications. Examples are &lt;a href="http://en.wikipedia.org/wiki/EMM386" title="EMM386"&gt;EMM386&lt;/a&gt;, which was part of the standard installation in DOS's later versions, and &lt;a href="http://en.wikipedia.org/wiki/QEMM" title="QEMM"&gt;QEMM&lt;/a&gt;. These allowed use of memory above the 640 KB barrier, where memory was normally reserved for RAMs, and high and upper memory.&lt;/p&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531068449294892699-8652465444415336319?l=rojiealpas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rojiealpas.blogspot.com/feeds/8652465444415336319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6531068449294892699&amp;postID=8652465444415336319' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/8652465444415336319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/8652465444415336319'/><link rel='alternate' type='text/html' href='http://rojiealpas.blogspot.com/2007/11/research-topics-2.html' title='Research Topics 2'/><author><name>Rojie Urbane Alpas</name><uri>http://www.blogger.com/profile/03042561036462295120</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://th229.photobucket.com/albums/ee29/giaracame027/gif%20images/th_e879e4ff801ccbe6c9a6c710e09b0389.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_eX3T3ZS3Qrs/R0--dGblemI/AAAAAAAAAAU/HDULAeG0fNc/s72-c/aa.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6531068449294892699.post-6429582222669121848</id><published>2007-11-22T03:08:00.000-08:00</published><updated>2007-11-22T04:00:08.557-08:00</updated><title type='text'>Research Topics</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-size:130%;color:#33ff33;"&gt;&lt;strong&gt;1. Review article about Operating System&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;a href="http://www.webopedia.com/FIG/OPER-SYS.gif"&gt;&lt;span style="color:#33ff33;"&gt;&lt;img style="WIDTH: 320px; CURSOR: hand" alt="" src="http://www.webopedia.com/FIG/OPER-SYS.gif" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;An operating system (OS) is the software that manages the sharing of the &lt;/span&gt;&lt;a title="Resource (computer science)" href="http://en.wikipedia.org/wiki/Resource_(computer_science)"&gt;&lt;span style="color:#33ff33;"&gt;resources&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; of a &lt;/span&gt;&lt;a title="Computer" href="http://en.wikipedia.org/wiki/Computer"&gt;&lt;span style="color:#33ff33;"&gt;computer&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and provides &lt;/span&gt;&lt;a title="Programmers" href="http://en.wikipedia.org/wiki/Programmers"&gt;&lt;span style="color:#33ff33;"&gt;programmers&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; with an interface used to access those resources. An operating system processes system data and user input, and responds by allocating and managing tasks and internal system resources as a service to users and programs of the system. At the foundation of all system software, an operating system performs basic tasks such as controlling and allocating &lt;/span&gt;&lt;a title="Memory (computers)" href="http://en.wikipedia.org/wiki/Memory_(computers)"&gt;&lt;span style="color:#33ff33;"&gt;memory&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, prioritizing system requests, controlling input and output devices, facilitating &lt;/span&gt;&lt;a title="Computer networking" href="http://en.wikipedia.org/wiki/Computer_networking"&gt;&lt;span style="color:#33ff33;"&gt;networking&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and managing &lt;/span&gt;&lt;a title="File system" href="http://en.wikipedia.org/wiki/File_system"&gt;&lt;span style="color:#33ff33;"&gt;file systems&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. Most operating systems come with an application that provides a &lt;/span&gt;&lt;a title="User interface" href="http://en.wikipedia.org/wiki/User_interface"&gt;&lt;span style="color:#33ff33;"&gt;user interface&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; for managing the operating system, such as a &lt;/span&gt;&lt;a title="Command line interpreter" href="http://en.wikipedia.org/wiki/Command_line_interpreter"&gt;&lt;span style="color:#33ff33;"&gt;command line interpreter&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; or &lt;/span&gt;&lt;a title="Graphical user interface" href="http://en.wikipedia.org/wiki/Graphical_user_interface"&gt;&lt;span style="color:#33ff33;"&gt;graphical user interface&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. The operating system forms a &lt;/span&gt;&lt;a title="Platform (computing)" href="http://en.wikipedia.org/wiki/Platform_(computing)"&gt;&lt;span style="color:#33ff33;"&gt;platform&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; for other &lt;/span&gt;&lt;a title="System software" href="http://en.wikipedia.org/wiki/System_software"&gt;&lt;span style="color:#33ff33;"&gt;system software&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and for &lt;/span&gt;&lt;a title="Application software" href="http://en.wikipedia.org/wiki/Application_software"&gt;&lt;span style="color:#33ff33;"&gt;application software&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;.&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="color:#33ff33;"&gt;The most important &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/program.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;program&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; that &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/run.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;runs&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; on a &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/computer.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;computer&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. Every general-purpose computer must have an &lt;/span&gt;&lt;a class="kLink" id="KonaLink0" href="http://www.webopedia.com/TERM/o/operating_system.html#" target="_top"&gt;&lt;span style="color:#33ff33;"&gt;operating system&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; to run other programs. Operating systems perform basic tasks, such as recognizing &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/input.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;input&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; from the &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/keyboard.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;keyboard&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, sending &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/output.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;output&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; to the &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/display_screen.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;display screen&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, keeping track of &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/file.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;files&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/directory.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;directories&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; on the &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/disk.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;disk&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, and controlling &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/peripheral_device.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;peripheral devices&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; such as &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/disk_drive.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;disk drives&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; and &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/printer.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;printers&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;.&lt;br /&gt;For large systems, the operating system has even greater responsibilities and powers. It is like a traffic cop -- it makes sure that different programs and &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/user.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;users&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; running at the same time do not interfere with each other. The operating system is also responsible for &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/security.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;security&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, ensuring that unauthorized users do not &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/access.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;access&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; the system. &lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#33ff33;"&gt;Operating systems can be classified as follows:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#33ff33;"&gt;&lt;strong&gt;&gt; &lt;/strong&gt;&lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/multi_user.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;multi-user&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; : Allows two or more users to run programs at the same time. Some operating systems permit hundreds or even thousands of concurrent users.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#33ff33;"&gt;&lt;strong&gt;&gt;&lt;/strong&gt; &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/multiprocessing.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;multiprocessing&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; : &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/support.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;Supports&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; running a program on more than one &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/CPU.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;CPU&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#33ff33;"&gt;&lt;strong&gt;&gt;&lt;/strong&gt; &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/multitasking.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;multitasking&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; : Allows more than one program to run concurrently.&lt;br /&gt;&lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/multithreading.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;multithreading&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; : Allows different parts of a single program to run concurrently. &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#33ff33;"&gt;&lt;strong&gt;&gt;&lt;/strong&gt; &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/real_time.html" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;real time&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;: Responds to input instantly. General-purpose operating systems, such as &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/DOS.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;DOS&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/UNIX.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;UNIX&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, are not real-time. &lt;/span&gt;&lt;/p&gt;&lt;span style="color:#33ff33;"&gt;Operating systems provide a &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/software.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;software&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/platform.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;platform&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; on top of which other programs, called &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/application.htm" qlwhu="2"&gt;&lt;span style="color:#33ff33;"&gt;application&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; programs, can run. The &lt;/span&gt;&lt;a class="kLink" id="KonaLink1" href="http://www.webopedia.com/TERM/o/operating_system.html#" target="_top"&gt;&lt;span style="color:#33ff33;"&gt;application programs&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; must be written to run on top of a particular operating system. Your choice of operating system, therefore, determines to a great extent the &lt;/span&gt;&lt;a class="kLink" id="KonaLink2" href="http://www.webopedia.com/TERM/o/operating_system.html#" target="_top"&gt;&lt;span style="color:#33ff33;"&gt;applications&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; you can run. For &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/PC.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;PCs&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, the most popular operating systems are DOS, &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/OS_2.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;OS/2&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, and &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/Windows.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;Windows&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;, but others are available, such as &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/Linux.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;Linux&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;.&lt;br /&gt;As a user, you normally interact with the operating system through a set of &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/command.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;commands&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt;. For example, the DOS operating system contains commands such as COPY and RENAME for &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/copy.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;copying&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; files and changing the &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/name.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;names&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; of files, respectively. The commands are accepted and &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/execute.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;executed&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; by a part of the operating system called the &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/command_processor.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;command processor&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; or command line interpreter. &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/Graphical_User_Interface_GUI.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;Graphical user interfaces&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; allow you to enter commands by pointing and &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/click.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;clicking&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; at &lt;/span&gt;&lt;a href="http://www.webopedia.com/TERM/o/object.htm" qlwhu="0"&gt;&lt;span style="color:#33ff33;"&gt;objects&lt;/span&gt;&lt;/a&gt;&lt;span style="color:#33ff33;"&gt; that appear on the screen.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;p align="justify"&gt;&lt;span style="color:#33ff33;"&gt;&lt;span style="font-size:130%;"&gt;2. 2 reasons why a regional bank might decide to buy 6 server computers instead of one supercomputer: &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="color:#33ff33;"&gt;&lt;span style="font-size:130%;"&gt;&lt;strong&gt;a&lt;/strong&gt;. &lt;/span&gt;&lt;em&gt;for their files to have a backup in case of errors or troubles that their computer may adapt or acquire.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;em&gt;&lt;span style="color:#33ff33;"&gt;&lt;strong&gt;b&lt;/strong&gt;. &lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="color:#33ff33;"&gt;for them to continue their transactions when other computer units are having their maintenance and repairs.&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6531068449294892699-6429582222669121848?l=rojiealpas.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/6429582222669121848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6531068449294892699/posts/default/6429582222669121848'/><link rel='alternate' type='text/html' href='http://rojiealpas.blogspot.com/2007/11/research-topics.html' title='Research Topics'/><author><name>Rojie Urbane Alpas</name><uri>http://www.blogger.com/profile/03042561036462295120</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://th229.photobucket.com/albums/ee29/giaracame027/gif%20images/th_e879e4ff801ccbe6c9a6c710e09b0389.gif'/></author></entry></feed>
