<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Zhangqi</id>
	<title>Soma-notes - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Zhangqi"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php/Special:Contributions/Zhangqi"/>
	<updated>2026-04-11T05:39:15Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_2_2010_Question_8&amp;diff=6002</id>
		<title>COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_2_2010_Question_8&amp;diff=6002"/>
		<updated>2010-12-01T23:35:19Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Contribution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones=&lt;br /&gt;
&#039;&#039;&#039;Authors:&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
* William Enck, Patrick McDaniel &#039;&#039;The Pennsylvania State University&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
* Peter Gilbert, Landon P. Cox &#039;&#039;Duke University&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
* Byung-Gon Chun, Jaeyeon Jung Anmol N. Sheth &#039;&#039;Intel Labs&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[http://appanalysis.org/tdroid10.pdf Direct Link]&lt;br /&gt;
&lt;br /&gt;
[http://www.appanalysis.org/ Official Website]&lt;br /&gt;
&lt;br /&gt;
[http://www.youtube.com/watch?v=qnLujX1Dw4Y Video Demonstration]&lt;br /&gt;
&lt;br /&gt;
=Background Concepts=&lt;br /&gt;
To follow these ideas in this paper, the ideas which form the basis of this theory have to be understood. All in all, the following two concepts can be said to be central to understanding this paper.&amp;lt;br&amp;gt;&lt;br /&gt;
==Information Flow==&lt;br /&gt;
Information flow as the name suggests is the transfer of information. This transfer of information can be between two processes or within a given process, for example, between variables. [http://www.cs.georgetown.edu/~denning/infosec/lattice76.pdf 1] Information Flow Theory tries to quantify this flow of information into a mathematical model.&amp;lt;br&amp;gt; &lt;br /&gt;
In a security model the information flow can be categorized into:&amp;lt;br&amp;gt; &lt;br /&gt;
===Explicit Flow===&lt;br /&gt;
Explicit flow is when information subject to security classifications is transferred to a variable or process which is not subject to the same or higher level of security, causing a security breach. [http://www.cs.georgetown.edu/~denning/infosec/lattice76.pdf 1] The breach occurs because information is now more visible than it was intended to be. An example of explicit flow is shown below:&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;PRIVATE VAR &amp;lt;big&amp;gt;secure&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
PUBLIC VAR &amp;lt;big&amp;gt;notsecure&amp;lt;br&amp;gt;&lt;br /&gt;
notsecure = secure&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The information in &amp;lt;i&amp;gt;&#039;secure&#039;&amp;lt;/i&amp;gt; which is PRIVATE is transferred to &amp;lt;i&amp;gt;&#039;notsecure&#039;&amp;lt;/i&amp;gt; which is PUBLIC which is an information leak. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Implicit Flow===&lt;br /&gt;
Implicit Flow is when information subject to security classifications is deduced indirectly. This the leakage of information occurs through the program control flow. [http://www.cs.georgetown.edu/~denning/infosec/lattice76.pdf 1] Depending on the flow of the program the secure information can be compromised, as shown below&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;PRIVATE VAR &amp;lt;big&amp;gt;secure&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
PUBLIC VAR &amp;lt;big&amp;gt;notsecure&amp;lt;br&amp;gt;&lt;br /&gt;
if secure=&amp;quot;blah blah&amp;quot; then:&amp;lt;br&amp;gt;&lt;br /&gt;
insecure=1&amp;lt;br&amp;gt;&lt;br /&gt;
else:&amp;lt;br&amp;gt;&lt;br /&gt;
insecure=0&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Since can determine the value of information in &amp;lt;i&amp;gt;secure&amp;lt;/i&amp;gt; using logic statements, we can indirectly access the secure information. Information leak due to implicit flows is much harder to detect and protect from, due to the indirect nature of implicit flows.&lt;br /&gt;
&lt;br /&gt;
==Taint Analysis==&lt;br /&gt;
&lt;br /&gt;
The basic premise of taint analysis is to follow the information flow of &amp;quot;tainted&amp;quot; variables to ensure that they do not create a security breach. Any variable that can be modified directly or indirectly by the user and can become a security vulnerability is &amp;quot;tainted&amp;quot;. Through various operations the &amp;quot;taint&amp;quot; can be passed from variable to variable, propagating it. When a tainted variable is used to execute potentially dangerous commands a breach is logged, allowing detection of possible security concerns. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.3118&amp;amp;rep=rep1&amp;amp;type=pdf 2]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Dynamic Taint Analysis===&lt;br /&gt;
Taint Analysis done at run-time is called as Dynamic Taint Analysis. The approach used in dynamic taint analysis is to label data originating from untrusted sources as tainted. The analysis keeps track of all the tainted data in memory and when such data is used in a potentially dangerous situation, a leak is logged. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf 3]  This approach offers the capabilities to detect most input validation vulnerabilities with a very low false positive rate. However, the execution of the program is slower because of the additional checks being preformed. [http://www.usenix.org/events/sec04/tech/chow/chow_html/index.html#sec 4]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Static Taint Analysis===&lt;br /&gt;
Static taint analysis is the technique used for detecting the over approximation of the set of instructions that are influenced by user input. The set of tainted instructions is computed statically by analyzing the sources of the program. [http://tanalysis.googlecode.com/files/DumitruCeara_BSc.pdf 5] The main advantage for static taint analysis is that it takes into account all the possible execution paths of the program. On the other hand the analysis may not be as accurate as a dynamic analysis because the static analysis does not have access to any additional run-time information of the program. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf 3]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Mathematical Model===&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;lt;code&amp;gt;For all variables V = {T,U} ;T are tainted and U are untainted:&amp;lt;br&amp;gt;&lt;br /&gt;
Using &amp;lt;big&amp;gt;⊕&amp;lt;/big&amp;gt;: V x V -&amp;gt; V, x, y ∈ V &amp;lt;br&amp;gt;&lt;br /&gt;
x&amp;lt;big&amp;gt;⊕&amp;lt;/big&amp;gt;y = T; x = T OR y = T&amp;lt;br&amp;gt;&lt;br /&gt;
x&amp;lt;big&amp;gt;⊕&amp;lt;/big&amp;gt;y = U, if x = U AND y = U&lt;br /&gt;
&amp;lt;/code&amp;gt;&amp;lt;/big&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is now easy to see that whenever a tainted variable is used by another variable, the variable that used the tainted variable becomes tainted as well; the taint is propagated. Taking this further we can see that, if needed, we can tag variables as tainted by attaching to them a tainted tag, which can then be tracked or used as wanted. [http://www.cs.georgetown.edu/~denning/infosec/lattice76.pdf 1]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: The paper talks about Dynamic Taint Analysis. TaintDroid makes ingenious use of &amp;quot;taint&amp;quot; to taint variables that are of value and tracks their progress. Though in the actual context of Taint Analysis &amp;quot;taint&amp;quot; is used for untrusted information however in this case the &amp;quot;taint&amp;quot; variables are infact important private data. &#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Research problem=&lt;br /&gt;
&lt;br /&gt;
In today’s society, smartphones are a prominent new technology. Smartphones, by their nature, are linked into many private details of our lives, including not only classic data like our contact list, but new kinds of data smartphones make available, such as location data. Smartphones also have the ability to download and run third party applications which can connect to the internet; indeed, this is why we call them &amp;quot;smart&amp;quot;. Except for the odd tunnel or elevator, these phones are constantly connected to the internet. When you combine third party applications with an internet connection on a device that stores an immense amount of personal data, you suddenly find yourself unsure of how your data is being used; what is to stop a third party application from disseminating our private information? As it turns out, very little. [http://news.bbc.co.uk/2/hi/technology/8559683.stm 6]&lt;br /&gt;
&lt;br /&gt;
A telling example of this is a wallpaper application that sends your phone number back to the developer.[http://www.pskl.us/wp/wp-content/uploads/2010/09/iPhone-Applications-Privacy-Issues.pdf 7] Once the app is running on your phone, it can typically access any of the information on your phone that it has been given permission to access, and it is not necessarily clear when the application has accessed data, or what it is doing with it.&lt;br /&gt;
&lt;br /&gt;
The authors of this paper set out to try to understand what kind of information is being collected and where that information is being sent, and in order to do that, they first needed to build a means of tracking that information.&lt;br /&gt;
&lt;br /&gt;
The strategy they chose is called Dynamic Taint Analysis, sometimes called Taint Tracking. The basic idea being to mark (or &#039;&#039;taint&#039;&#039;) sensitive information at its source, and to then follow that mark as the data moves through a system. In the context of this paper, if ever we should see marked data leave the network interface of the phone, then we know that some sensitive information has been disseminated.&lt;br /&gt;
&lt;br /&gt;
There are many difficulties associated with implementing such a system on a smartphone. Their design goals were to create a light-weight, minimal overhead, real-time tracking system that runs directly on a real phone, with real applications.  To be really useful, the tracking system must not impact the user experience too heavily.&lt;br /&gt;
&lt;br /&gt;
Some implementation difficulties are:&lt;br /&gt;
* Smart phones are resource constrained. Processing power and memory are limited, and any processing that we do perform will consume battery power. If the tracking system is to be real-time, the phone must be considered &amp;quot;usable&amp;quot; by the end user, and so the system must be truly light weight.[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.3789&amp;amp;rep=rep1&amp;amp;type=pdf 8]&lt;br /&gt;
* Third party applications arrive in a compiled format; we cannot analyze their source code.&lt;br /&gt;
* Applications may do complex things with the sensitive data. It is unlikely that the application will simply read a location from the GPS and dump it straight out over the network. More likely is that the application will use that data in some way, or combine it with other data, before it is sent.  We need to be able to track sensitive data throughout this entire process if we hope to perform any useful analysis.[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.1353&amp;amp;rep=rep1&amp;amp;type=pdf 3]&lt;br /&gt;
* Applications can share information with other applications, meaning that our tracking has to work across multiple processes.[http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-145.pdf 9]&lt;br /&gt;
* The tracking must operate on a real phone, not a simulated one. With a simulated system, where we control the virtual hardware and memory, we can be certain that we can see everything that an application might do. On a real device, how can we get low-level enough to see everything the applications do?[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.74.1478&amp;amp;rep=rep1&amp;amp;type=pdf 10]&lt;br /&gt;
&lt;br /&gt;
=Contribution=&lt;br /&gt;
The main contribution of the TaintDroid paper is not that they achieved information flow tracking, but that they made it efficient enough to run in real time on real constrained hardware devices with minimal overhead. TaintDroid only causes roughly a 14% CPU overhead and approximately 4.4% memory overhead when tracking 32 taint markings per tainted data unit. It should also be noted that the 14% CPU over-head is only in regards to a &amp;quot;CPU-bound micro-benchmark and imposes negligible overhead on interactive third-party applications.&amp;quot;(Enck et al., YEAR, p1)&lt;br /&gt;
&lt;br /&gt;
This low overhead is achieved by modifying the code directly at the Java Virtual Machine (JVM) layer of the Android system to provide variable-level tracking. This allows direct control over how and what private information, such as location details from the GPS, is stored and accessed, as opposed to relying on heuristics or manual labels. [http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-145.pdf 9] Next, they modified the Java Native Interface (JNI) to provide message-level tracking which allows them to monitor inter-process, a.k.a. inter-application, communications. This also allows them to &amp;quot;patch the taint propagation on return.&amp;quot; (Enck et al., YEAR, p3) so they can keep track of information transfer via native code. Finally, by modifying the network interface and secondary storage interfaces they are able to provide file-level taint tracking which enables them to ensure &amp;quot;persistent information conservatively retains its taint markings.&amp;quot; (Enck et al., YEAR, p3).&lt;br /&gt;
&lt;br /&gt;
Another contribution of TaintDroid is accuracy of tracking sensitive data. Unlike existing solutions that rely on heavy-weight, whole-system emulation [http://www.usenix.org/events/sec04/tech/chow/chow_html/ 4], the virtualized architecture of Android allows four levels of taint propagation: variable, method, message, and file. The granularity and flow semantics that TaintDroid offers highly influences the performance and accuracy of TaintDroid. Existing taint tracking approaches, like Panorama Taint System [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.3789&amp;amp;rep=rep1&amp;amp;type=pdf 11], rely on instruction-level dynamic taint analysis using whole system emulation.Panorama Taint System is able to perform OS-aware whloe system taint analysis to detect and analyze malicious code&#039;s information processing behavior.The core feature of this kind of taint analysis is realtime. But this method will lead to the system preforming from 2-20 times slower than normal, which is not suitable at all for the trend of realtime analysis.[http://www.usenix.org/events/sec04/tech/chow/chow_html/index.html 4][http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.3789&amp;amp;rep=rep1&amp;amp;type=pdf 11] Moreover, instruction-level tracking faces a serious problem, taint explosion. When we use some complex instructions such as CMPXCHG, REP MOV,the stack pointer may become falsely tainted or taint loss. [REF] However, TaintDroid solved this problem with the combination of 4 levels of tracking. For example, the variable level allows TaintDroid to provide flow semantics for taint propagation, allowing distinction between different data pointers at different levels to ensure accuracy.&lt;br /&gt;
&lt;br /&gt;
By combining these four levels (variable, method, message and file) of taint tracking, TaintDroid was able to effectively track 30 randomly selected, popular, 3rd party android applications. In doing so TaintDroid correctly flagged 105 instances of tainted information transmission. Of these 105, only 35 were legitimate risks.[http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-145.pdf 9] It also determined that 50% of the applications submitted the users location to advertising servers and 5 of the applications transmitted the users device ID, phone number and SIM card serial number. Clearly, the higher granularity is needed and TaintDroid is providing a step in the right direction, by providing a highly efficient real time tracking system.&lt;br /&gt;
&lt;br /&gt;
=Critique=&lt;br /&gt;
&lt;br /&gt;
This paper has quite a bit of information, but has a very strong structure in explaining what TaintDroid is and what it does, which makes it easy to read. The paper begins with a high-level overview of TaintDroid, then explains the history followed by an explanation of sources that are tracked by TaintDroid and its design. It continues with test results and the strengths and weaknesses of TaintDroid, with references to related work. &lt;br /&gt;
&lt;br /&gt;
Challenges of monitoring network disclosure of privacy sensitive information are well outlined, as are TaintDroid&#039;s workarounds for these challenges. TaintDroid uses dynamic taint analysis to find a way around the challenges, using a taint source as the targeted sensitive information, and a taint marking to identify the information type. It is easy to see that this research was effective, due to the impressive number of information leaks that were found. TaintDroid effectively identifies information misuse at a high percentage. However, while the implementation is strong in that the overhead is so low and accuracy is high, there are trade-offs that were incurred to meet that overhead. &lt;br /&gt;
&lt;br /&gt;
To prevent additional overhead, TaintDroid does not track implicit data flow or control flow. This partially is because the applications being tested are loaded onto the phone as black-box, precompiled binaries; but mostly because the Android JVM does not maintain branch structures, which TaintDroid could use to track implicit flow dynamically. It is presumed that branch structures are maintained at a kernel level, as a static analysis could uncover data leak stemming from implicit data flow, but dynamic analysis such as TaintDroid cannot. This means that applications can bypass the taint analysis by using implicit flow. There are also other issues, particularly in Taint Tag Storage, which are due to the fact that most string objects have the same tag. Because of the similar tags, it is possible for false positives to occur.&lt;br /&gt;
&lt;br /&gt;
Further more, TaintDroid is a firmware modification, not an application which raises the questions of its usability by the average user. Being a firmware modification drastically reduces its usability unless &#039;Android System&#039; itself incorporates these changes which is highly unlikely as the overheads, in this case a memory overhead of 4.4%, an IPC overhead of 27% and an overall 14% overhead, are on the higher side in an already resource constrained smartphone.&lt;br /&gt;
&lt;br /&gt;
Consider a possible alternative implementation of TaintDroid. TaintDroid is incorporated in the firmware and hence incurs an additional overhead as the user uses the phone. Consider the implementation of &#039;TaintCheck&#039; on an x86 platform.[http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf 3] TaintCheck performs dynamic taint analysis on a program by running the program in its own emulation environment. This allows TaintCheck to monitor and control the program’s execution at a fine-grained level. All the TaintCheck needs is the binary which it the rewrites and uses it in its own emulated environment. What this essentially means is that &#039;TaintCheck&#039; is a mechanism that can perform dynamic taint analysis by performing binary rewriting at run time on an emulated envioronment. Taking this further, we can consider an implementation of TaintDroid based on similar lines. One can then envision an application in which you uploaded the &#039;application binary&#039; and then TaintDroid would return a result of whether the application is safe or not. This has the advantage of being needed to run just once before installation and hence the overheads won&#039;t be much of a concern. This can even allow TaintDroid to incorporate signature based detection of &#039;malacious applications&#039;.&lt;br /&gt;
&lt;br /&gt;
=Questions=&lt;br /&gt;
Possible exam questions and brief answers are listed below, along with the section to go to to find more information pertaining to that question.&lt;br /&gt;
&lt;br /&gt;
===Anil&#039;s questions===&lt;br /&gt;
* What is one source of false positives in TaintDroid? (In other words, what kind of code/data behavior leads to false alarms?)&lt;br /&gt;
** Some applications are making legitimate use of sensitive data; for example, Google Maps needs to know your location in order to work, and the use of this data is known by the user.  TaintDroid cannot know whether the user has consented to the use of some data, and so flags it as a leak. (Critique - Content)&lt;br /&gt;
* What part of Android was modified for TaintDroid? Is this part of Android&#039;s kernel? Explain briefly. &lt;br /&gt;
** The Dalvic VM is modified.  Dalvic is the java virtual machine used by Android to run user applications.  Although Dalvic is a core part of the Android operating system, it is not a part of the kernel. Dalvic runs on top of the Android kernel as a user process.  All third party user applications run on top of Dalvic, however, so it is a sufficiently &amp;quot;low-level&amp;quot; point of the system to implement taint tracking. (Contribution)&lt;br /&gt;
&lt;br /&gt;
===Additional questions===&lt;br /&gt;
* Although TaintDroid is adept at catching information leak, there are ways an application can bypass the TaintDroid filter. Describe one. &lt;br /&gt;
** An application could use implicit flow to derive data from tainted objects. TaintDroid has no way to inspect implicit flow dynamically, due to no branch structures being maintained at the JVM layer, where TaintDroid is implemented. Instead, control structures would be part of the pre-compiled application binaries, which, while not entirely black boxes, are impractical to investigate dynamically. Implicit flow data leaks can, however, be caught by a static analysis [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.2676&amp;amp;rep=rep1&amp;amp;type=pdf 11].&lt;br /&gt;
* hmmm&lt;br /&gt;
** words go here&lt;br /&gt;
* hmmmmmmmmmm&lt;br /&gt;
** words go here&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
[1] DENNING, D. E. [http://www.cs.georgetown.edu/~denning/infosec/lattice76.pdf A Lattice Model of Secure Information Flow]. &#039;&#039;Communications of the ACM 19, 5&#039;&#039; (May 1976), 236–243&lt;br /&gt;
&lt;br /&gt;
[2] HALDAR, V., CHANDRA, D., FRANZ, M. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.94.3118&amp;amp;rep=rep1&amp;amp;type=pdf Dynamic Taint Propagation for Java]. &#039;&#039;Twenty-First Annual Computer Security Applications Confrence (ACSAC),&#039;&#039; (2005)&lt;br /&gt;
&lt;br /&gt;
[3] NEWSOME,J.,AND SONG,D. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software] &#039;&#039;Proceedings of the Network and Distributed System Security Symposium&#039;&#039; (NDSS 2005)&lt;br /&gt;
&lt;br /&gt;
[4] CHOW, J., PFAFF, B., GARFINKEL, T., CHRISTOPHER, K., AND ROSENBLUM, M. [http://www.usenix.org/events/sec04/tech/chow/chow_html/ Understanding Data Lifetime via Whole System Simulation]. &#039;&#039;Proceedings of the 13th USENIX Security&lt;br /&gt;
Symposium&#039;&#039; (August 2004).&lt;br /&gt;
&lt;br /&gt;
[5] CEARA, D., POTET, ML., et.al [http://tanalysis.googlecode.com/files/DumitruCeara_BSc.pdf Detecting Software Vulnerabilities Static Taint Analysis] &#039;&#039;GINP ENSIMAG GoogleCode&#039;&#039;(2009)&lt;br /&gt;
&lt;br /&gt;
[6] FITZPATRICK, M. [http://news.bbc.co.uk/2/hi/technology/8559683.stm Mobile that allows bosses to snoop on staff developed]. &#039;&#039;BBC News, Technology&#039;&#039; (March 2010) &lt;br /&gt;
&lt;br /&gt;
[7] SMITH, E. [http://www.pskl.us/wp/wp-content/uploads/2010/09/iPhone-Applications-Privacy-Issues.pdf iPhone Applications &amp;amp; Privacy Issues: An Analysis of Application Transmission of iPhone Unique Device Identifiers (UDIDs).] &#039;&#039;http://pskl.us&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[8] NAIR, S. K., SIMPSON, P. N., CRISPO, B., AND TANENBAUM, [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.2676&amp;amp;rep=rep1&amp;amp;type=pdf A. S. A Virtual Machine Based Information Flow Control Systemfor Policy Enforcement.] &#039;&#039;International Workshop on Run Time Enforcement for Mobile and Distributed Systems&#039;&#039; (REM 2007)&lt;br /&gt;
&lt;br /&gt;
[9] ZHU, Y., JUNG, J., KOHNO, T., WETHERALL, D., [http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-145.pdf Privacy Scope: A Precise Information Flow Tracking System For Finding Application Leaks]. &#039;&#039;Technical Report No. UCB/EECS-2009-145, University of California, Berkeley&#039;&#039; (2009)&lt;br /&gt;
&lt;br /&gt;
[10] CHUNG LAM, L., CHIUEH, T., [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.74.1478&amp;amp;rep=rep1&amp;amp;type=pdf A General Dynamic Information Flow Tracking Framework for Security Applications]. &#039;&#039;Proceedings of the Annual Computer Security Applications Conference (ACSAC)&#039;&#039; (2006)&lt;br /&gt;
&lt;br /&gt;
[11] YIN, H., SONG, D., EGELE, M., KRUEGEL, C., AND KIRDA, E. [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.129.3789&amp;amp;rep=rep1&amp;amp;type=pdf Panorama: Capturing system-wide Information Flow for Malware Detection and Analysis]. In &#039;&#039;Proceedings of ACM Computer and Communications Security&#039;&#039; (2007)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5999</id>
		<title>Talk:COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5999"/>
		<updated>2010-12-01T23:21:04Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Work Plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group Members&lt;br /&gt;
&lt;br /&gt;
Trevor Bonesaw Malone - tmalone@connect.carleton.ca //FIRST POST!&lt;br /&gt;
&lt;br /&gt;
Qi Zhang   - qzhang13@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gregory Bint - gbint@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gautam Akiwate - gakiwate@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Corey Ling - cling@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Sarah Liske&lt;br /&gt;
&lt;br /&gt;
==Relevant Sources==&lt;br /&gt;
*NEWSOME,J.,AND SONG,D.Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software.      [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf Dynamic Taint Analysis for Automatic Detection]&lt;br /&gt;
&amp;lt;u&amp;gt;Seems to be THE Dynamic Taint Analysis Paper.Talks about implementation on TaintCheck. Could be also useful for critique section&amp;lt;/u&amp;gt; -[Gautam]&lt;br /&gt;
&lt;br /&gt;
== Work Plan ==&lt;br /&gt;
&lt;br /&gt;
As Trevor intimated, we should have clear division of work going forward.  This is sort of the break down as I see it.  Please edit as you think of new ideas!&lt;br /&gt;
&lt;br /&gt;
* Background Concepts&lt;br /&gt;
** Information Flow Theory. (Implicit and Explicit Flows.) --Done[--[[User:Gautam|Gautam]] 03:54, 28 November 2010 (UTC)]&lt;br /&gt;
** What is dynamic taint analysis --Done[--[[User:Gautam|Gautam]] 05:07, 28 November 2010 (UTC)]&lt;br /&gt;
** What is the difference between dynamic and static analysis - it&#039;s there, who added it?&lt;br /&gt;
* Research Problem&lt;br /&gt;
** How do we build a DTA engine for a phone? - done, but by who?&lt;br /&gt;
** Why do we want to?  (information misuse) - done, but by who?&lt;br /&gt;
* Contribution&lt;br /&gt;
** How did they implement their DTA engine (Done: --[[User:Cling|Cling]] 04:50, 26 November 2010 (UTC))&lt;br /&gt;
** What did they find about information misuse (Done: --[[User:Cling|Cling]] 04:50, 26 November 2010 (UTC))&lt;br /&gt;
** Compared to the existing taint tracking approaches. [[User:Zhangqi|Zhangqi]] 07:11, 27 November 2010 (UTC)&lt;br /&gt;
** (What else should be in the contributions? Anything need fleshing out?) (Working on that now :) ) sliske&lt;br /&gt;
* Critique&lt;br /&gt;
**Added two paragraphs at the end of the present critique. Please incorporate it into your content as you deem fit.--[[User:Gautam|Gautam]] 09:07, 30 November 2010 (UTC) &lt;br /&gt;
**^ done. fleshed out critique, and added a bit about how taintdroid doesn&#039;t track implicit flow. Also reworded (the entire essay) for clarity where necessary/checked spelling. It would be a good idea for everyone to read it over once for spelling/clarity before thursday, just in case something doesn&#039;t make sense - sliske&lt;br /&gt;
* References&lt;br /&gt;
** The article has 61 references!  We can probably use some of them&lt;br /&gt;
**whee! reading papers and sticking in information as need be. Also working out how to cite properly, as there are two citations used currently&lt;br /&gt;
references added and citations taken care of. will go over fill in a few places where information may be lacking after class sliske&lt;br /&gt;
&lt;br /&gt;
List of information we need to find external sources for:&lt;br /&gt;
* History of taint analysis&lt;br /&gt;
* History of privacy research relating to smart phones&lt;br /&gt;
&lt;br /&gt;
== Work In Progress ==&lt;br /&gt;
&lt;br /&gt;
Log what you are working on *right now* so that other people don&#039;t try to do the same thing.  Make sure to clear your name from here when you are done.&lt;br /&gt;
&lt;br /&gt;
* Gregory Bint:  Research Problem&lt;br /&gt;
** Need to find some history on smart phone security research for the second part.&lt;br /&gt;
&lt;br /&gt;
* Gautam Akiwate:  Background Concepts&lt;br /&gt;
** Any resources on Dynamic taint Analysis would be appreciated!&lt;br /&gt;
&lt;br /&gt;
* Qi Zhang, Corey Ling: Contributions&lt;br /&gt;
&lt;br /&gt;
* Trevor Malone: Critique&lt;br /&gt;
&lt;br /&gt;
* Sarah Liske: References and Questions, Clarity/Spelling.&lt;br /&gt;
&lt;br /&gt;
== Some Notes from the Video ==&lt;br /&gt;
&lt;br /&gt;
Tracking of privacy sensitive data through Dynamic Taint Analysis (aka. Taint Tracking).  The trick is to mark private data as it sourced, and then follow those marks until (unless) they leave the phone.&lt;br /&gt;
	&lt;br /&gt;
Android phones run Java apps, which are compiled into DEX, and then run on top of the Dalvik VM.  It is this VM that we modify so that we can support the storage and tracking of taint tags.&lt;br /&gt;
&lt;br /&gt;
Taint sources&lt;br /&gt;
* low -bandwidth sensors&lt;br /&gt;
** Location&lt;br /&gt;
** Accelerometer&lt;br /&gt;
* High-bandwidth sensors&lt;br /&gt;
** Mic&lt;br /&gt;
** Camera&lt;br /&gt;
* Information DB&lt;br /&gt;
** Address book&lt;br /&gt;
** SMS storage&lt;br /&gt;
* Device ID&lt;br /&gt;
** IMEI&lt;br /&gt;
** IMSI   (don&#039;t actually track this one because of false positives)&lt;br /&gt;
** ICC_ID&lt;br /&gt;
** Phone Number&lt;br /&gt;
&lt;br /&gt;
Taint sink  (where marked data can leave the phone)&lt;br /&gt;
* Network Taint Sink&lt;br /&gt;
&lt;br /&gt;
Taint propagation&lt;br /&gt;
* ???&lt;br /&gt;
&lt;br /&gt;
Taint tags are stored in memory interleaved with the variables they are tracking&lt;br /&gt;
&lt;br /&gt;
Some standard Data Flow technique is used to propagate these tags, especially as one variable that is marked may be assigned to another, so now that variable needs to be tracked as well.&lt;br /&gt;
&lt;br /&gt;
Tracks explicit flows of data, not implicit&lt;br /&gt;
	To fully capture implicit flows, you need to do static analysis, which is hard with closed-source apps, and cannot be done real-time&lt;br /&gt;
	&lt;br /&gt;
Implicit flows are not tracked&lt;br /&gt;
* Implicit flows can involve &amp;quot;taint-scope&amp;quot;, tracking based on conditionals in code&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
&lt;br /&gt;
The goal is to create a real time tracking system, so the TaintDroid&#039;s performance impact is of some importance&lt;br /&gt;
&lt;br /&gt;
14% CPU overhead&lt;br /&gt;
4.4% memory overhead&lt;br /&gt;
&lt;br /&gt;
Macro benchmarks  (to get a feel for what the phone&#039;s usability is like with TD running)&lt;br /&gt;
* App load:  3%  (2ms) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Findings ===&lt;br /&gt;
&lt;br /&gt;
20 out of 30 tested applications share data in a way that is not expected.&lt;br /&gt;
&lt;br /&gt;
67 of 105 flagged pieces of data leaving the device had no obviously legitimate purpose (verified by the authors).&lt;br /&gt;
&lt;br /&gt;
Many apps sent location data and other unique identifiers to advertising servers.&lt;br /&gt;
&lt;br /&gt;
Most apps do not mention anything to the user.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Limitations ===&lt;br /&gt;
&lt;br /&gt;
Tracks only explicit data flows.&lt;br /&gt;
&lt;br /&gt;
An application *could* launder the tags off of the data, if they really wanted to hide this sort of thing from TaintDroid.&lt;br /&gt;
&lt;br /&gt;
There are methods that could be used to protect against this, but they go against the goal of a light-weight, real-time tracking system.  TD is not necessarily about catching truly malicious programs, but rather just those that leak information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Why do apps take this information?&lt;br /&gt;
* Lazy;  in the demo video, the wallpaper app seems to use the IMEI just as a ready made unique ID&lt;br /&gt;
* Overzealous;  the developer might thing they *need* the data for something, but actually &lt;br /&gt;
* Ads;  advertises do seem a little presumptuous in their data collection&lt;br /&gt;
* Spying;  bosses or spouses&lt;br /&gt;
* Malicious;  &lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
=== QA Period ===&lt;br /&gt;
&lt;br /&gt;
Q:  how do we prevent a malicious app from removing a taint attribute on a file&lt;br /&gt;
&lt;br /&gt;
A:  TD operates a too low a level for this to be a problem;  TD assumes that the native code is trusted&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q:  It seems like you had a lot of false positives&lt;br /&gt;
&lt;br /&gt;
A:  The point of this tool was to identify privacy sensitive information as having left the phone, not whether or not a privacy violation has taken place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Now that TD is released; couldn&#039;t malicious apps use some of the methods described in the paper to get around it?    &lt;br /&gt;
&lt;br /&gt;
A: Well, yes, but it is not just about maliciousness, it could just laziness or over-zealous ad stuff.&lt;br /&gt;
&lt;br /&gt;
==Other Information==&lt;br /&gt;
&lt;br /&gt;
Hey guys, thought I would just post a generalized paragraph about our essay.&lt;br /&gt;
&lt;br /&gt;
In today’s society, Smartphones are the new big thing. To me that’s what makes this paper so interesting. This paper focuses on private information in android phones and the misuse of this information. The misuse of information includes the SIM card, the ID of the device, or the phone number. TaintDroid is used on smart phones with an efficient taint tracking and analysis system. It has the ability to track sensitive data from multiple sources and examines the misuse of such data. In their study, out of 80 popular third-party applications, TaintDroid monitored that 68 applications had potential misuse of user’s private data. This tool is great for knowing with applications are safe and which are not, so your private data can remained private.&lt;br /&gt;
&lt;br /&gt;
Also, we should really think of splitting up the work in some way. If some people have specific sections they would like to do lets figure that out now so we can divide the workload and get it done over the next couple of days. I don&#039;t personally care what part I&#039;m going to have to do, so lets get this going. Any other information people wanna post feel free the more the better, even if we don&#039;t end up using it.&lt;br /&gt;
&lt;br /&gt;
[[user:Tmalone|Trevor Malone]]&lt;br /&gt;
&lt;br /&gt;
Hey guys! Anything else we need to get done? Let me know and I can help in anyway possible.&lt;br /&gt;
&lt;br /&gt;
[[user:Tmalone|Trevor Malone]]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5624</id>
		<title>Talk:COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5624"/>
		<updated>2010-11-27T07:11:05Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Work Plan */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group Members&lt;br /&gt;
&lt;br /&gt;
Trevor Bonesaw Malone - tmalone@connect.carleton.ca //FIRST POST!&lt;br /&gt;
&lt;br /&gt;
Qi Zhang   - qzhang13@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gregory Bint - gbint@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gautam Akiwate - gakiwate@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Corey Ling - cling@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
==Relevant Sources==&lt;br /&gt;
*NEWSOME,J.,AND SONG,D.Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software.      [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf Dynamic Taint Analysis for Automatic Detection]&lt;br /&gt;
&amp;lt;u&amp;gt;Seems to be THE Dynamic Taint Analysis Paper.Talks about implementation on TaintCheck. Could be also useful for critique section&amp;lt;/u&amp;gt; -[Gautam]&lt;br /&gt;
&lt;br /&gt;
== Work Plan ==&lt;br /&gt;
&lt;br /&gt;
As Trevor intimated, we should have clear division of work going forward.  This is sort of the break down as I see it.  Please edit as you think of new ideas!&lt;br /&gt;
&lt;br /&gt;
* Background Concepts&lt;br /&gt;
** Information Flow Theory. (Implicit and Explicit Flows.)&lt;br /&gt;
** What is dynamic taint analysis&lt;br /&gt;
** What is the difference between dynamic and static analysis&lt;br /&gt;
* Research Problem&lt;br /&gt;
** How do we build a DTA engine for a phone?&lt;br /&gt;
** Why do we want to?  (information misuse)&lt;br /&gt;
* Contribution&lt;br /&gt;
** How did they implement their DTA engine (Done: --[[User:Cling|Cling]] 04:50, 26 November 2010 (UTC))&lt;br /&gt;
** What did they find about information misuse (Done: --[[User:Cling|Cling]] 04:50, 26 November 2010 (UTC))&lt;br /&gt;
** Compared to the existing taint tracking approaches. [[User:Zhangqi|Zhangqi]] 07:11, 27 November 2010 (UTC) (Added something. Still looking for other examples,in progress)&lt;br /&gt;
** (What else should be in the contributions? Anything need fleshing out?)&lt;br /&gt;
* Critique&lt;br /&gt;
* References&lt;br /&gt;
** The article has 61 references!  We can probably use some of them&lt;br /&gt;
&lt;br /&gt;
List of information we need to find external sources for:&lt;br /&gt;
* History of taint analysis&lt;br /&gt;
* History of privacy research relating to smart phones&lt;br /&gt;
&lt;br /&gt;
== Work In Progress ==&lt;br /&gt;
&lt;br /&gt;
Log what you are working on *right now* so that other people don&#039;t try to do the same thing.  Make sure to clear your name from here when you are done.&lt;br /&gt;
&lt;br /&gt;
* Gregory Bint:  Research Problem&lt;br /&gt;
** I&#039;ve got what you will hopefully find to be a reasonable introduction to the problem.  I&#039;ve tried to ask mostly questions here, expecting the details to be covered in Background Concepts and in Contributions.&lt;br /&gt;
** I&#039;m going to try to find some history on smart phone security research for the second part.&lt;br /&gt;
** Should we move the Research Problem *above* Background Concepts?  It might serve as a better lead in that way.&lt;br /&gt;
&lt;br /&gt;
* Gautam Akiwate:  Background Concepts&lt;br /&gt;
** Any resources on Dynamic taint Analysis would be appreciated!&lt;br /&gt;
&lt;br /&gt;
* Corey Ling: Contributions (Qi Zhang) &lt;br /&gt;
&lt;br /&gt;
* Trevor Malone: Critique&lt;br /&gt;
&lt;br /&gt;
== Some Notes from the Video ==&lt;br /&gt;
&lt;br /&gt;
Tracking of privacy sensitive data through Dynamic Taint Analysis (aka. Taint Tracking).  The trick is to mark private data as it sourced, and then follow those marks until (unless) they leave the phone.&lt;br /&gt;
	&lt;br /&gt;
Android phones run Java apps, which are compiled into DEX, and then run on top of the Dalvik VM.  It is this VM that we modify so that we can support the storage and tracking of taint tags.&lt;br /&gt;
&lt;br /&gt;
Taint sources&lt;br /&gt;
* low -bandwidth sensors&lt;br /&gt;
** Location&lt;br /&gt;
** Accelerometer&lt;br /&gt;
* High-bandwidth sensors&lt;br /&gt;
** Mic&lt;br /&gt;
** Camera&lt;br /&gt;
* Information DB&lt;br /&gt;
** Address book&lt;br /&gt;
** SMS storage&lt;br /&gt;
* Device ID&lt;br /&gt;
** IMEI&lt;br /&gt;
** IMSI   (don&#039;t actually track this one because of false positives)&lt;br /&gt;
** ICC_ID&lt;br /&gt;
** Phone Number&lt;br /&gt;
&lt;br /&gt;
Taint sink  (where marked data can leave the phone)&lt;br /&gt;
* Network Taint Sink&lt;br /&gt;
&lt;br /&gt;
Taint propagation&lt;br /&gt;
* ???&lt;br /&gt;
&lt;br /&gt;
Taint tags are stored in memory interleaved with the variables they are tracking&lt;br /&gt;
&lt;br /&gt;
Some standard Data Flow technique is used to propagate these tags, especially as one variable that is marked may be assigned to another, so now that variable needs to be tracked as well.&lt;br /&gt;
&lt;br /&gt;
Tracks explicit flows of data, not implicit&lt;br /&gt;
	To fully capture implicit flows, you need to do static analysis, which is hard with closed-source apps, and cannot be done real-time&lt;br /&gt;
	&lt;br /&gt;
Implicit flows are not tracked&lt;br /&gt;
* Implicit flows can involve &amp;quot;taint-scope&amp;quot;, tracking based on conditionals in code&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
&lt;br /&gt;
The goal is to create a real time tracking system, so the TaintDroid&#039;s performance impact is of some importance&lt;br /&gt;
&lt;br /&gt;
14% CPU overhead&lt;br /&gt;
4.4% memory overhead&lt;br /&gt;
&lt;br /&gt;
Macro benchmarks  (to get a feel for what the phone&#039;s usability is like with TD running)&lt;br /&gt;
* App load:  3%  (2ms) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Findings ===&lt;br /&gt;
&lt;br /&gt;
20 out of 30 tested applications share data in a way that is not expected.&lt;br /&gt;
&lt;br /&gt;
67 of 105 flagged pieces of data leaving the device had no obviously legitimate purpose (verified by the authors).&lt;br /&gt;
&lt;br /&gt;
Many apps sent location data and other unique identifiers to advertising servers.&lt;br /&gt;
&lt;br /&gt;
Most apps do not mention anything to the user.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Limitations ===&lt;br /&gt;
&lt;br /&gt;
Tracks only explicit data flows.&lt;br /&gt;
&lt;br /&gt;
An application *could* launder the tags off of the data, if they really wanted to hide this sort of thing from TaintDroid.&lt;br /&gt;
&lt;br /&gt;
There are methods that could be used to protect against this, but they go against the goal of a light-weight, real-time tracking system.  TD is not necessarily about catching truly malicious programs, but rather just those that leak information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Why do apps take this information?&lt;br /&gt;
* Lazy;  in the demo video, the wallpaper app seems to use the IMEI just as a ready made unique ID&lt;br /&gt;
* Overzealous;  the developer might thing they *need* the data for something, but actually &lt;br /&gt;
* Ads;  advertises do seem a little presumptuous in their data collection&lt;br /&gt;
* Spying;  bosses or spouses&lt;br /&gt;
* Malicious;  &lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
=== QA Period ===&lt;br /&gt;
&lt;br /&gt;
Q:  how do we prevent a malicious app from removing a taint attribute on a file&lt;br /&gt;
&lt;br /&gt;
A:  TD operates a too low a level for this to be a problem;  TD assumes that the native code is trusted&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q:  It seems like you had a lot of false positives&lt;br /&gt;
&lt;br /&gt;
A:  The point of this tool was to identify privacy sensitive information as having left the phone, not whether or not a privacy violation has taken place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Now that TD is released; couldn&#039;t malicious apps use some of the methods described in the paper to get around it?    &lt;br /&gt;
&lt;br /&gt;
A: Well, yes, but it is not just about maliciousness, it could just laziness or over-zealous ad stuff.&lt;br /&gt;
&lt;br /&gt;
==Other Information==&lt;br /&gt;
&lt;br /&gt;
Hey guys, thought I would just post a generalized paragraph about our essay.&lt;br /&gt;
&lt;br /&gt;
In today’s society, Smartphones are the new big thing. To me that’s what makes this paper so interesting. This paper focuses on private information in android phones and the misuse of this information. The misuse of information includes the SIM card, the ID of the device, or the phone number. TaintDroid is used on smart phones with an efficient taint tracking and analysis system. It has the ability to track sensitive data from multiple sources and examines the misuse of such data. In their study, out of 80 popular third-party applications, TaintDroid monitored that 68 applications had potential misuse of user’s private data. This tool is great for knowing with applications are safe and which are not, so your private data can remained private.&lt;br /&gt;
&lt;br /&gt;
Also, we should really think of splitting up the work in some way. If some people have specific sections they would like to do lets figure that out now so we can divide the workload and get it done over the next couple of days. I don&#039;t personally care what part I&#039;m going to have to do, so lets get this going. Any other information people wanna post feel free the more the better, even if we don&#039;t end up using it.&lt;br /&gt;
&lt;br /&gt;
[[user:Tmalone|Trevor Malone]]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5623</id>
		<title>Talk:COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5623"/>
		<updated>2010-11-27T07:06:16Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Work In Progress */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group Members&lt;br /&gt;
&lt;br /&gt;
Trevor Bonesaw Malone - tmalone@connect.carleton.ca //FIRST POST!&lt;br /&gt;
&lt;br /&gt;
Qi Zhang   - qzhang13@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gregory Bint - gbint@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gautam Akiwate - gakiwate@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Corey Ling - cling@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
==Relevant Sources==&lt;br /&gt;
*NEWSOME,J.,AND SONG,D.Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software.      [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf Dynamic Taint Analysis for Automatic Detection]&lt;br /&gt;
&amp;lt;u&amp;gt;Seems to be THE Dynamic Taint Analysis Paper.Talks about implementation on TaintCheck. Could be also useful for critique section&amp;lt;/u&amp;gt; -[Gautam]&lt;br /&gt;
&lt;br /&gt;
== Work Plan ==&lt;br /&gt;
&lt;br /&gt;
As Trevor intimated, we should have clear division of work going forward.  This is sort of the break down as I see it.  Please edit as you think of new ideas!&lt;br /&gt;
&lt;br /&gt;
* Background Concepts&lt;br /&gt;
** Information Flow Theory. (Implicit and Explicit Flows.)&lt;br /&gt;
** What is dynamic taint analysis&lt;br /&gt;
** What is the difference between dynamic and static analysis&lt;br /&gt;
* Research Problem&lt;br /&gt;
** How do we build a DTA engine for a phone?&lt;br /&gt;
** Why do we want to?  (information misuse)&lt;br /&gt;
* Contribution&lt;br /&gt;
** How did they implement their DTA engine (Done: --[[User:Cling|Cling]] 04:50, 26 November 2010 (UTC))&lt;br /&gt;
** What did they find about information misuse (Done: --[[User:Cling|Cling]] 04:50, 26 November 2010 (UTC))&lt;br /&gt;
** (What else should be in the contributions? Anything need fleshing out?)&lt;br /&gt;
* Critique&lt;br /&gt;
* References&lt;br /&gt;
** The article has 61 references!  We can probably use some of them&lt;br /&gt;
&lt;br /&gt;
List of information we need to find external sources for:&lt;br /&gt;
* History of taint analysis&lt;br /&gt;
* History of privacy research relating to smart phones&lt;br /&gt;
&lt;br /&gt;
== Work In Progress ==&lt;br /&gt;
&lt;br /&gt;
Log what you are working on *right now* so that other people don&#039;t try to do the same thing.  Make sure to clear your name from here when you are done.&lt;br /&gt;
&lt;br /&gt;
* Gregory Bint:  Research Problem&lt;br /&gt;
** I&#039;ve got what you will hopefully find to be a reasonable introduction to the problem.  I&#039;ve tried to ask mostly questions here, expecting the details to be covered in Background Concepts and in Contributions.&lt;br /&gt;
** I&#039;m going to try to find some history on smart phone security research for the second part.&lt;br /&gt;
** Should we move the Research Problem *above* Background Concepts?  It might serve as a better lead in that way.&lt;br /&gt;
&lt;br /&gt;
* Gautam Akiwate:  Background Concepts&lt;br /&gt;
** Any resources on Dynamic taint Analysis would be appreciated!&lt;br /&gt;
&lt;br /&gt;
* Corey Ling: Contributions (Qi Zhang) &lt;br /&gt;
&lt;br /&gt;
* Trevor Malone: Critique&lt;br /&gt;
&lt;br /&gt;
== Some Notes from the Video ==&lt;br /&gt;
&lt;br /&gt;
Tracking of privacy sensitive data through Dynamic Taint Analysis (aka. Taint Tracking).  The trick is to mark private data as it sourced, and then follow those marks until (unless) they leave the phone.&lt;br /&gt;
	&lt;br /&gt;
Android phones run Java apps, which are compiled into DEX, and then run on top of the Dalvik VM.  It is this VM that we modify so that we can support the storage and tracking of taint tags.&lt;br /&gt;
&lt;br /&gt;
Taint sources&lt;br /&gt;
* low -bandwidth sensors&lt;br /&gt;
** Location&lt;br /&gt;
** Accelerometer&lt;br /&gt;
* High-bandwidth sensors&lt;br /&gt;
** Mic&lt;br /&gt;
** Camera&lt;br /&gt;
* Information DB&lt;br /&gt;
** Address book&lt;br /&gt;
** SMS storage&lt;br /&gt;
* Device ID&lt;br /&gt;
** IMEI&lt;br /&gt;
** IMSI   (don&#039;t actually track this one because of false positives)&lt;br /&gt;
** ICC_ID&lt;br /&gt;
** Phone Number&lt;br /&gt;
&lt;br /&gt;
Taint sink  (where marked data can leave the phone)&lt;br /&gt;
* Network Taint Sink&lt;br /&gt;
&lt;br /&gt;
Taint propagation&lt;br /&gt;
* ???&lt;br /&gt;
&lt;br /&gt;
Taint tags are stored in memory interleaved with the variables they are tracking&lt;br /&gt;
&lt;br /&gt;
Some standard Data Flow technique is used to propagate these tags, especially as one variable that is marked may be assigned to another, so now that variable needs to be tracked as well.&lt;br /&gt;
&lt;br /&gt;
Tracks explicit flows of data, not implicit&lt;br /&gt;
	To fully capture implicit flows, you need to do static analysis, which is hard with closed-source apps, and cannot be done real-time&lt;br /&gt;
	&lt;br /&gt;
Implicit flows are not tracked&lt;br /&gt;
* Implicit flows can involve &amp;quot;taint-scope&amp;quot;, tracking based on conditionals in code&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
&lt;br /&gt;
The goal is to create a real time tracking system, so the TaintDroid&#039;s performance impact is of some importance&lt;br /&gt;
&lt;br /&gt;
14% CPU overhead&lt;br /&gt;
4.4% memory overhead&lt;br /&gt;
&lt;br /&gt;
Macro benchmarks  (to get a feel for what the phone&#039;s usability is like with TD running)&lt;br /&gt;
* App load:  3%  (2ms) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Findings ===&lt;br /&gt;
&lt;br /&gt;
20 out of 30 tested applications share data in a way that is not expected.&lt;br /&gt;
&lt;br /&gt;
67 of 105 flagged pieces of data leaving the device had no obviously legitimate purpose (verified by the authors).&lt;br /&gt;
&lt;br /&gt;
Many apps sent location data and other unique identifiers to advertising servers.&lt;br /&gt;
&lt;br /&gt;
Most apps do not mention anything to the user.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Limitations ===&lt;br /&gt;
&lt;br /&gt;
Tracks only explicit data flows.&lt;br /&gt;
&lt;br /&gt;
An application *could* launder the tags off of the data, if they really wanted to hide this sort of thing from TaintDroid.&lt;br /&gt;
&lt;br /&gt;
There are methods that could be used to protect against this, but they go against the goal of a light-weight, real-time tracking system.  TD is not necessarily about catching truly malicious programs, but rather just those that leak information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Why do apps take this information?&lt;br /&gt;
* Lazy;  in the demo video, the wallpaper app seems to use the IMEI just as a ready made unique ID&lt;br /&gt;
* Overzealous;  the developer might thing they *need* the data for something, but actually &lt;br /&gt;
* Ads;  advertises do seem a little presumptuous in their data collection&lt;br /&gt;
* Spying;  bosses or spouses&lt;br /&gt;
* Malicious;  &lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
=== QA Period ===&lt;br /&gt;
&lt;br /&gt;
Q:  how do we prevent a malicious app from removing a taint attribute on a file&lt;br /&gt;
&lt;br /&gt;
A:  TD operates a too low a level for this to be a problem;  TD assumes that the native code is trusted&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q:  It seems like you had a lot of false positives&lt;br /&gt;
&lt;br /&gt;
A:  The point of this tool was to identify privacy sensitive information as having left the phone, not whether or not a privacy violation has taken place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Now that TD is released; couldn&#039;t malicious apps use some of the methods described in the paper to get around it?    &lt;br /&gt;
&lt;br /&gt;
A: Well, yes, but it is not just about maliciousness, it could just laziness or over-zealous ad stuff.&lt;br /&gt;
&lt;br /&gt;
==Other Information==&lt;br /&gt;
&lt;br /&gt;
Hey guys, thought I would just post a generalized paragraph about our essay.&lt;br /&gt;
&lt;br /&gt;
In today’s society, Smartphones are the new big thing. To me that’s what makes this paper so interesting. This paper focuses on private information in android phones and the misuse of this information. The misuse of information includes the SIM card, the ID of the device, or the phone number. TaintDroid is used on smart phones with an efficient taint tracking and analysis system. It has the ability to track sensitive data from multiple sources and examines the misuse of such data. In their study, out of 80 popular third-party applications, TaintDroid monitored that 68 applications had potential misuse of user’s private data. This tool is great for knowing with applications are safe and which are not, so your private data can remained private.&lt;br /&gt;
&lt;br /&gt;
Also, we should really think of splitting up the work in some way. If some people have specific sections they would like to do lets figure that out now so we can divide the workload and get it done over the next couple of days. I don&#039;t personally care what part I&#039;m going to have to do, so lets get this going. Any other information people wanna post feel free the more the better, even if we don&#039;t end up using it.&lt;br /&gt;
&lt;br /&gt;
[[user:Tmalone|Trevor Malone]]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_2_2010_Question_8&amp;diff=5622</id>
		<title>COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_2_2010_Question_8&amp;diff=5622"/>
		<updated>2010-11-27T07:04:02Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Contribution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Paper=&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;big&amp;gt;&amp;lt;big&amp;gt;TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones&amp;lt;/big&amp;gt;&amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Authors:&lt;br /&gt;
* William Enck, &#039;&#039;The Pennsylvania State University&#039;&#039;&lt;br /&gt;
* Peter Gilbert, &#039;&#039;Duke University&#039;&#039;&lt;br /&gt;
* Byung-Gon Chun, &#039;&#039;Intel Labs&#039;&#039;&lt;br /&gt;
* Landon P. Cox, &#039;&#039;Duke University&#039;&#039;&lt;br /&gt;
* Jaeyeon Jung, &#039;&#039;Intel Labs&#039;&#039;&lt;br /&gt;
* Patrick McDaniel, &#039;&#039;The Pennsylvania State University&#039;&#039;&lt;br /&gt;
* Anmol N. Sheth, &#039;&#039;Intel Labs&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Official Website: http://www.appanalysis.org/&lt;br /&gt;
&lt;br /&gt;
Direct Link to Paper: http://appanalysis.org/tdroid10.pdf&lt;br /&gt;
&lt;br /&gt;
Video demonstration of TaintDroid in action: http://www.youtube.com/watch?v=qnLujX1Dw4Y&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Background Concepts=&lt;br /&gt;
As a brief glance through the paper might suggest the paper has much to do with &amp;quot;Information Flow Tracking&amp;quot; and &amp;quot;Dynamic Taint Analysis&amp;quot;.It is evident that two follow this paper ideas which form the basis of this theory have to be understood. All in all, the following two concepts can be said to be central to understanding this paper.&amp;lt;br&amp;gt;&lt;br /&gt;
*Information Flow&lt;br /&gt;
*Taint Analysis&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;big&amp;gt;Information Flow&amp;lt;/big&amp;gt;&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Information flow as the name suggests is essentially transfer of information. This transfer of information can be between two processes or withing a given process from let&#039;s say a variable x to a variable y. Information Flow Theory tries to quantify this &#039;&#039;&#039;flow&#039;&#039;&#039; of information into a mathematical model.&amp;lt;br&amp;gt; &lt;br /&gt;
In a security model the Information Flow can be categorized into:&amp;lt;br&amp;gt; &lt;br /&gt;
&#039;&#039;&#039;Explicit Flow&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Explicit Flow is when information subject to &#039;security classifications&#039; is transfered to a variable(or process) which is not subject to the same or higher level of &#039;security&#039; causing a security breach. To put simply explicit flow is when &#039;secure&#039; information is transferred so that it is publicly observable.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;i&amp;gt;A Pseudo Code Example:&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;PRIVATE VAR &amp;lt;big&amp;gt;secure&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
PUBLIC VAR &amp;lt;big&amp;gt;notsecure&amp;lt;br&amp;gt;&lt;br /&gt;
notsecure=secure&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
In the information in &amp;lt;i&amp;gt;&#039;secure&#039;&amp;lt;/i&amp;gt; which is PRIVATE is transferred to &amp;lt;i&amp;gt;&#039;notsecure&#039;&amp;lt;/i&amp;gt; which is PUBLIC which is an &#039;Information Leak&#039;. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Implicit Flow&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Implicit Flow is when the information subject to &#039;security classifications&#039; is deduced indirectly. In this the leakage of information is through the program control flow. Depending on the flow of the program the secure information is compromised.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;i&amp;gt;A Pseudo Code Example:&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;PRIVATE VAR &amp;lt;big&amp;gt;secure&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
PUBLIC VAR &amp;lt;big&amp;gt;notsecure&amp;lt;br&amp;gt;&lt;br /&gt;
if secure=&amp;quot;blah blah&amp;quot; then:&amp;lt;br&amp;gt;&lt;br /&gt;
insecure=1&amp;lt;br&amp;gt;&lt;br /&gt;
else:&amp;lt;br&amp;gt;&lt;br /&gt;
insecure=0&amp;lt;/big&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
We can deduce if information in &amp;lt;i&amp;gt;&#039;secure&#039;&amp;lt;/i&amp;gt; is &amp;lt;i&amp;gt;&amp;quot;blah blah&amp;quot;&amp;lt;/i&amp;gt; by checking the value of &#039;insecure&#039;. Information leakage due to implicit flows are much harder to detect and protect from.&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;i&amp;gt;For more on Information Flow and its Math Model refer &amp;quot;A Lattice Model of Secure Information Flow&amp;quot;&amp;lt;/i&amp;gt; [1]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&#039;&#039;&#039;&amp;lt;big&amp;gt;Taint Analysis&amp;lt;/big&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Explain briefly the background concepts and ideas that your fellow classmates will need to know first in order to understand your assigned paper.&lt;br /&gt;
* Background on Information Flow Theory. Explicit and Implicit Flow.&lt;br /&gt;
* Background on the taint data tracking method, how it has been used in other systems (i.e. not phones)&lt;br /&gt;
* A reader&#039;s digest version of any new articles about this kind of security vulnerability on phones, on apps that collect more personal data than users would expect.&lt;br /&gt;
&lt;br /&gt;
=Research problem=&lt;br /&gt;
&lt;br /&gt;
In today’s society, smartphones are the new big thing.   Smartphones, by their nature, are linked into many private details of our lives, including not only classic data like our contact list, but new kinds of data unique to smartphones, such as location data.  Except for the odd tunnel or elevator, these phones are constantly connected to the internet.   Smartphones also have the ability to download and run third party applications;  indeed, this is why we call them &amp;quot;smart&amp;quot;.  When you combine third party applications with an internet connection, you suddenly find yourself unsure of how your data is being used, that is, what is to stop a third party application from disseminating our private information?   As it turns out, very little.&lt;br /&gt;
&lt;br /&gt;
A telling example of this is a wallpaper application that sends your phone number back to the developer.  Once the app is running on your phone, it can typically access any of the information on your phone, and it is not necessarily clear when it has done so, or what it is doing with it.&lt;br /&gt;
&lt;br /&gt;
The authors of this paper set out to try to understand what kind of information is being collected and where that information is being sent, and in order to do that, they first needed to build a means of tracking that information.&lt;br /&gt;
&lt;br /&gt;
The strategy they chose is called Dynamic Taint Analysis, sometimes called Taint Tracking.  The basic idea being to mark (&#039;&#039;taint&#039;&#039;) sensitive information at its source, and to then follow that mark as it moves through a system.  In the context of this paper, if ever we should see marked data leave the network interface of the phone, then we know that some sensitive information has been disseminated.&lt;br /&gt;
&lt;br /&gt;
There are many difficulties associated with implementing such a system on a smartphone.  Their design goals were to create a light-weight, minimal overhead, real-time tracking system that runs directly on a real phone, with real applications.  To be really useful, the tracking system must not impact the user experience too heavily.&lt;br /&gt;
&lt;br /&gt;
Some of the difficulties include&lt;br /&gt;
* Smart phones are resource constrained.   Processing power and memory are limited, and any processing that we do perform will consume battery power.  If the tracking system is to be real-time, and for the phone to be considered &amp;quot;usable&amp;quot; by the end user, the system must be truly light weight.&lt;br /&gt;
* Third party applications arrive in a compiled format;  we cannot analyze their source code.&lt;br /&gt;
* Applications may do complex things with the sensitive data.  It is unlikely that the application will simply read a location from the GPS and dump it straight out over the network.  More likely is that the application will use that data in someway, or combine it with other data, before it is sent.  We need to be able to track sensitive data throughout this entire process if we hope to perform any useful analysis.&lt;br /&gt;
* Applications can share information with other applications, meaning that our tracking has to work across multiple processes.&lt;br /&gt;
* The tracking must operate on a real phone, not a simulated one.  With a simulated system, where we control the virtual hardware and memory, we can be certain that we can see everything that an application might do.  On a real device, how can we get &amp;quot;low enough&amp;quot; to see everything the applications do?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;How does this problem relate to past related work?&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Contribution=&lt;br /&gt;
The contributions of the TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones paper is not that they achieved Information flow tracking but that they achieved it efficient enough to run in real time on real constrained hardware devices with minimal overheads. As stated &amp;quot;TaintDroid only incurs an approximate 14% CPU overhead and an approximate 4.4% memory overhead for simultaneously tracking 32 taint markings per data unit.&amp;quot; It should also be noted that the 14% CPU over-head is only in regards to a &amp;quot;CPU-bound micro-benchmark and imposes negligible overhead on interactive third-party applications.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
This is achieved by modifying the code directly at the VM layer of the Android system to provide variable-level tracking. This allows direct control over how and what private information, such as location details from the GPS, are stored and accessed. Next they modify the JNI layer to provide message-level tracking which allows them to monitor inter-process a.k.a. inter-application communications. This also allows them to &amp;quot;patch the taint propagation on return.&amp;quot; so they can keep track of information transfer via native code. Finally modifying the network interface and secondary storage interfaces they are able to provide file-level taint tracking which enables them to ensure &amp;quot;persistent information conservatively retains its taint markings.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
By combining these three levels (variable, message and file) of taint tracking, TaintDroid was able to effectively track 30 randomly selected popular 3rd party android applications. In doing so it correctly flagged 105 instances of tainted information transmission. Of these 105, only 35 were legitimate transfers. It also determined that 50% off the applications submitted the users location to advertising servers and 5 of the applications transmitted the users device ID, phone number and SIM card serial number.&lt;br /&gt;
&lt;br /&gt;
The other contribution of TaintDorid is accuracy of tracking sensitive data. Unlike existing solutions that rely on heavy-weight whole-system emulation, the virtualized architecture of Android integrated four granularities of taint propagation:variable-level, method-level, message-level, and file-level. There are many factors influence the performance and accuracy of TaintDoroid. Taint tracking granularity and flow semantics are two of them. In the variable-level, TaintDorid treats the values at level. And the variables provide flow semantics for taint progagation to distinguish the different data pointers at different level to ensure the accuracy. Existing taint tracking approaches,like Panorama Taint System,rely on instruction-level dynamic taint analysis using whole system&lt;br /&gt;
emulation. This method leads to 2-20 times slowdown of system. Actually  it&#039;s not suitable for the trend of realtime analysis. Moreover,instruction-level tracking faces a serious problem,taint explosion. When we use some complex instructions such as CMPXCHG, REP MOV,the stack pointer may become falsely tainted or taint loss. However,TaintDorid solved this problem with the combination of 4 levels.&lt;br /&gt;
&lt;br /&gt;
From these outstanding numbers you can see that more effective higher granular permission systems are needed and TaintDroid is providing a step in the right direction, by providing a highly efficient real time tracking system.&lt;br /&gt;
&lt;br /&gt;
=Critique=&lt;br /&gt;
What is good and not-so-good about this paper? You may discuss both the style and content; be sure to ground your discussion with specific references. Simple assertions that something is good or bad is not enough - you must explain why.&lt;br /&gt;
&lt;br /&gt;
=References=&lt;br /&gt;
[1] DENNING, D. E. [http://www.cs.georgetown.edu/~denning/infosec/lattice76.pdf A Lattice Model of Secure Information Flow].&lt;br /&gt;
Communications of the ACM 19, 5 (May 1976), 236–243.&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5422</id>
		<title>Talk:COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5422"/>
		<updated>2010-11-23T00:55:35Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Work In Progress */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group Members&lt;br /&gt;
&lt;br /&gt;
Trevor Bonesaw Malone - tmalone@connect.carleton.ca //FIRST POST!&lt;br /&gt;
&lt;br /&gt;
Qi Zhang   - qzhang13@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gregory Bint - gbint@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Gautam Akiwate - gakiwate@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
==Relevant Sources==&lt;br /&gt;
*NEWSOME,J.,AND SONG,D.Dynamic Taint Analysis for Automatic Detection, Analysis, and Signature Generation of Exploits on Commodity Software.      [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.83.2141&amp;amp;rep=rep1&amp;amp;type=pdf Dynamic Taint Analysis for Automatic Detection]&lt;br /&gt;
&amp;lt;u&amp;gt;Seems to be THE Dynamic Taint Analysis Paper.Talks about implementation on TaintCheck. Could be also useful for critique section&amp;lt;/u&amp;gt; -[Gautam]&lt;br /&gt;
&lt;br /&gt;
== Work Plan ==&lt;br /&gt;
&lt;br /&gt;
As Trevor intimated, we should have clear division of work going forward.  This is sort of the break down as I see it.  Please edit as you think of new ideas!&lt;br /&gt;
&lt;br /&gt;
* Background Concepts&lt;br /&gt;
** Information Flow Theory. (Implicit and Explicit Flows.)&lt;br /&gt;
** What is dynamic taint analysis&lt;br /&gt;
** What is the difference between dynamic and static analysis&lt;br /&gt;
* Research Problem&lt;br /&gt;
** How do we build a DTA engine for a phone?&lt;br /&gt;
** Why do we want to?  (information misuse)&lt;br /&gt;
* Contribution&lt;br /&gt;
** How did they implement their DTA engine&lt;br /&gt;
** What did they find about information misuse&lt;br /&gt;
* Critique&lt;br /&gt;
* References&lt;br /&gt;
** The article has 61 references!  We can probably use some of them&lt;br /&gt;
&lt;br /&gt;
List of information we need to find external sources for:&lt;br /&gt;
* History of taint analysis&lt;br /&gt;
* History of privacy research relating to smart phones&lt;br /&gt;
&lt;br /&gt;
== Work In Progress ==&lt;br /&gt;
&lt;br /&gt;
Log what you are working on *right now* so that other people don&#039;t try to do the same thing.  Make sure to clear your name from here when you are done.&lt;br /&gt;
&lt;br /&gt;
* Gregory Bint:  Research Problem&lt;br /&gt;
** If someone wants to find some sources for some of the questions I&#039;m asking, that would be helpful!&lt;br /&gt;
&lt;br /&gt;
* Gautam Akiwate:  Background Concepts&lt;br /&gt;
** Any resources on Dynamic taint Analysis would be appreciated!&lt;br /&gt;
&lt;br /&gt;
* Qi Zhang: Contributions&lt;br /&gt;
&lt;br /&gt;
== Some Notes from the Video ==&lt;br /&gt;
&lt;br /&gt;
Tracking of privacy sensitive data through Dynamic Taint Analysis (aka. Taint Tracking).  The trick is to mark private data as it sourced, and then follow those marks until (unless) they leave the phone.&lt;br /&gt;
	&lt;br /&gt;
Android phones run Java apps, which are compiled into DEX, and then run on top of the Dalvik VM.  It is this VM that we modify so that we can support the storage and tracking of taint tags.&lt;br /&gt;
&lt;br /&gt;
Taint sources&lt;br /&gt;
* low -bandwidth sensors&lt;br /&gt;
** Location&lt;br /&gt;
** Accelerometer&lt;br /&gt;
* High-bandwidth sensors&lt;br /&gt;
** Mic&lt;br /&gt;
** Camera&lt;br /&gt;
* Information DB&lt;br /&gt;
** Address book&lt;br /&gt;
** SMS storage&lt;br /&gt;
* Device ID&lt;br /&gt;
** IMEI&lt;br /&gt;
** IMSI   (don&#039;t actually track this one because of false positives)&lt;br /&gt;
** ICC_ID&lt;br /&gt;
** Phone Number&lt;br /&gt;
&lt;br /&gt;
Taint sink  (where marked data can leave the phone)&lt;br /&gt;
* Network Taint Sink&lt;br /&gt;
&lt;br /&gt;
Taint propagation&lt;br /&gt;
* ???&lt;br /&gt;
&lt;br /&gt;
Taint tags are stored in memory interleaved with the variables they are tracking&lt;br /&gt;
&lt;br /&gt;
Some standard Data Flow technique is used to propagate these tags, especially as one variable that is marked may be assigned to another, so now that variable needs to be tracked as well.&lt;br /&gt;
&lt;br /&gt;
Tracks explicit flows of data, not implicit&lt;br /&gt;
	To fully capture implicit flows, you need to do static analysis, which is hard with closed-source apps, and cannot be done real-time&lt;br /&gt;
	&lt;br /&gt;
Implicit flows are not tracked&lt;br /&gt;
* Implicit flows can involve &amp;quot;taint-scope&amp;quot;, tracking based on conditionals in code&lt;br /&gt;
	&lt;br /&gt;
&lt;br /&gt;
=== Performance ===&lt;br /&gt;
&lt;br /&gt;
The goal is to create a real time tracking system, so the TaintDroid&#039;s performance impact is of some importance&lt;br /&gt;
&lt;br /&gt;
14% CPU overhead&lt;br /&gt;
4.4% memory overhead&lt;br /&gt;
&lt;br /&gt;
Macro benchmarks  (to get a feel for what the phone&#039;s usability is like with TD running)&lt;br /&gt;
* App load:  3%  (2ms) &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Findings ===&lt;br /&gt;
&lt;br /&gt;
20 out of 30 tested applications share data in a way that is not expected.&lt;br /&gt;
&lt;br /&gt;
67 of 105 flagged pieces of data leaving the device had no obviously legitimate purpose (verified by the authors).&lt;br /&gt;
&lt;br /&gt;
Many apps sent location data and other unique identifiers to advertising servers.&lt;br /&gt;
&lt;br /&gt;
Most apps do not mention anything to the user.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Limitations ===&lt;br /&gt;
&lt;br /&gt;
Tracks only explicit data flows.&lt;br /&gt;
&lt;br /&gt;
An application *could* launder the tags off of the data, if they really wanted to hide this sort of thing from TaintDroid.&lt;br /&gt;
&lt;br /&gt;
There are methods that could be used to protect against this, but they go against the goal of a light-weight, real-time tracking system.  TD is not necessarily about catching truly malicious programs, but rather just those that leak information.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Why do apps take this information?&lt;br /&gt;
* Lazy;  in the demo video, the wallpaper app seems to use the IMEI just as a ready made unique ID&lt;br /&gt;
* Overzealous;  the developer might thing they *need* the data for something, but actually &lt;br /&gt;
* Ads;  advertises do seem a little presumptuous in their data collection&lt;br /&gt;
* Spying;  bosses or spouses&lt;br /&gt;
* Malicious;  &lt;br /&gt;
&lt;br /&gt;
	&lt;br /&gt;
=== QA Period ===&lt;br /&gt;
&lt;br /&gt;
Q:  how do we prevent a malicious app from removing a taint attribute on a file&lt;br /&gt;
&lt;br /&gt;
A:  TD operates a too low a level for this to be a problem;  TD assumes that the native code is trusted&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q:  It seems like you had a lot of false positives&lt;br /&gt;
&lt;br /&gt;
A:  The point of this tool was to identify privacy sensitive information as having left the phone, not whether or not a privacy violation has taken place.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Now that TD is released; couldn&#039;t malicious apps use some of the methods described in the paper to get around it?    &lt;br /&gt;
&lt;br /&gt;
A: Well, yes, but it is not just about maliciousness, it could just laziness or over-zealous ad stuff.&lt;br /&gt;
&lt;br /&gt;
==Other Information==&lt;br /&gt;
&lt;br /&gt;
Hey guys, thought I would just post a generalized paragraph about our essay.&lt;br /&gt;
&lt;br /&gt;
In today’s society, Smartphones are the new big thing. To me that’s what makes this paper so interesting. This paper focuses on private information in android phones and the misuse of this information. The misuse of information includes the SIM card, the ID of the device, or the phone number. TaintDroid is used on smart phones with an efficient taint tracking and analysis system. It has the ability to track sensitive data from multiple sources and examines the misuse of such data. In their study, out of 80 popular third-party applications, TaintDroid monitored that 68 applications had potential misuse of user’s private data. This tool is great for knowing with applications are safe and which are not, so your private data can remained private.&lt;br /&gt;
&lt;br /&gt;
Also, we should really think of splitting up the work in some way. If some people have specific sections they would like to do lets figure that out now so we can divide the workload and get it done over the next couple of days. I don&#039;t personally care what part I&#039;m going to have to do, so lets get this going. Any other information people wanna post feel free the more the better, even if we don&#039;t end up using it.&lt;br /&gt;
&lt;br /&gt;
[[user:Tmalone|Trevor Malone]]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5068</id>
		<title>Talk:COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5068"/>
		<updated>2010-11-16T19:47:21Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group Members&lt;br /&gt;
&lt;br /&gt;
Trevor Bonesaw Malone - tmalone@connect.carleton.ca //FIRST POST!&lt;br /&gt;
&lt;br /&gt;
Qi Zhang   - qzhang13@connect.carleton.ca&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5067</id>
		<title>Talk:COMP 3000 Essay 2 2010 Question 8</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_2_2010_Question_8&amp;diff=5067"/>
		<updated>2010-11-16T19:47:10Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Group Members&lt;br /&gt;
&lt;br /&gt;
Trevor Bonesaw Malone - tmalone@connect.carleton.ca //FIRST POST!&lt;br /&gt;
Qi Zhang   - qzhang13@connect.carleton.ca&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4754</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4754"/>
		<updated>2010-10-15T11:55:05Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Massive Throughput */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.But if the failure is on the Windows host machine then they will all fail. The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== Redundancy ===&lt;br /&gt;
&amp;quot;Setup for Failover Clustering and Microsoft Cluster Service&amp;quot; &amp;lt;http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Introducing Microsoft Cluster Service (MSCS) in the Windows Server 2003 Family&amp;quot; &amp;lt;http://msdn.microsoft.com/en-us/library/ms952401.aspx&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; &amp;lt;http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; &amp;lt;http://computersight.com/computers/mainframe-computers/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; &amp;lt;http://www.scribd.com/doc/6895677/Mainframe-Features&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mapping the Mainframe to Windows: A Reference Architecture&amp;quot; &amp;lt;http://www.microsoft.com/windowsserver/mainframe/papers.mspx&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== I/O and Resource Management  ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Most Powerful Computers In The World&amp;quot; &amp;lt;http://hubpages.com/hub/Most-Powerful-Computers-In-The-World&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Windows Server 2003 Administrator’s Companion (MS Press, 2003)  &amp;quot;Overview of Microsoft Windows Compute Cluster Server 2003&amp;quot; &amp;lt;http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;grid computing&amp;quot; &amp;lt;http://searchdatacenter.techtarget.com/definition/grid-computing&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Clusters vs. Grids&amp;quot; &amp;lt;http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html&amp;gt;&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4753</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4753"/>
		<updated>2010-10-15T11:52:23Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys nice work, sorry I didn&#039;t have time to add more to the essay today. I combined the essay into a FrankenEssay which is on the front page and added a conclusion. If read through it but if anyone notices a mistake I missed go ahead and correct it.&lt;br /&gt;
--[[User:Abown|Andrew Bown]] 1:16, 15 October 2010&lt;br /&gt;
&lt;br /&gt;
Yeah I think COMP 3008 and 3004 just wrecked us... Thank you for finding the time to combine it. Hope my introduction was good... I will read it over if we can ever finish the sequence diagrams... --[[User:Dkrutsko|Dkrutsko]] 07:02, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay, I think we finished the essay.I added some reference to the main page and all of them come from the discussion part.Everyone do a good job :) [[User:Zhangqi|Zhangqi]] 07:51, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
Using this paragraph and my solution on the assignment I was able to expand on this topic. It is in the main page at the moment, see if you like it, add anything you think I missed --[[User:Dkrutsko|Dkrutsko]] 05:17, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:I&#039;ll attempt to re-write this paragraph for clarity and accuracy:&lt;br /&gt;
&lt;br /&gt;
:A feature provided by mainframes is their ability to create redundancy in terms of data storage and parallel processing. Windows can mimic expandable storage and storage redundancy through out-sourced storage solutions.&lt;br /&gt;
&lt;br /&gt;
:Processing redundancy for Windows can be created through the Microsoft Cluster Service (MSCS).  This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time.  If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime.  However this service does not offer fault tolerance to the same extent as actual mainframes.&lt;br /&gt;
&lt;br /&gt;
:Source: http://msdn.microsoft.com/en-us/library/ms952401.aspx&lt;br /&gt;
&lt;br /&gt;
:Virtual machine nodes can be used in place of physical machine nodes in a cluster, providing redundant application services to end-users.  If the a virtual machine fails, other virtual machines can take over, if the failure is on the Windows host machine then they will all fail.  The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
:Let me know what you think.&lt;br /&gt;
:[[User:Brobson|Brobson]] 18:25, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
:According to your searchvmware.techtarget.com source, a processor cannot be hot-plugged in the truest sense of the word in that the hardware needs to be rebooted to recognize the added hardware.  Hot-swapping demands zero downtime.  &lt;br /&gt;
:If you don&#039;t mind me suggesting but I don&#039;t think this section should be referring to the hot-swapping/hot-adding/or hot-plugging of virtual machines or client machines of the mainframe.  I think for hot-swapping we should focus on the hot-swapping of hardware components.  As such we can point out that Windows does support mainframe-level hot-swapping with its Windows Server 2008 R2 Datacenter OS&lt;br /&gt;
:&amp;lt;blockquote&amp;gt;&amp;quot;Hot Add/Replace Memory and Processors with supporting hardware&amp;quot;&amp;lt;/blockquote&amp;gt; http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&lt;br /&gt;
&lt;br /&gt;
:If we are only consider the capabilities of the PC OS, then Windows only supports plug and play devices, such as external hard drives, and does not support RAM or CPU hot-swap.&lt;br /&gt;
&lt;br /&gt;
:I&#039;m also wondering if this should tie into scalability of a mainframe or if scalability should have it&#039;s own section.&lt;br /&gt;
:[[User:Brobson|Brobson]] 17:12, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
The source you mentioned talks about a virtual machine and that it can be hot-swapped with no downtime depending on the guest OS with no downtime. Some guest OS&#039;s need a reboot but some do not. The virtual Windows Server 2008 ENT x64 can hot-add memory with no downtime, it seems that no virtual os can hot-add cpu without rebooting. And the second part of my paragraph talks about physical Windows systems coupled with a program that enables hot-swapping of SATA hard drives and other components with no downtime.&lt;br /&gt;
I do agree that hot-swapping in a virtual machine may be kind of useless though haha :S. And I&#039;ll check out the Windows Server 2008 R2 Datacenter OS, Thanks [[User:Nshires|Nshires]] 00:33, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Revised:&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed. &lt;br /&gt;
&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
feel free to edit [[User:Nshires|Nshires]] 03:49, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
I don&#039;t have time to write this before work(12-5) but I can put out the information i got already with research so if someone could help me complete this that it would be awesome since I have to finish up my 3004 document as well tonight.&lt;br /&gt;
~[User:Abown|Andrew Bown] (October 14th 11:12am)&lt;br /&gt;
Mainframes are able to achieve high/input output rates with their specialized Message Passing Interfaces (MPIs) which allow for fast intercommunication by sharing memory in between the different cores.https://www.mpitech.com/mpitech.nsf/pages/mainframe-&amp;amp;-AS400-printing_en.html&lt;br /&gt;
&lt;br /&gt;
The latest versions of Windows clusters support a Microsoft created MPI surprisingly called Microsoft MPI[http://msdn.microsoft.com/en-us/library/bb524831(VS.85).aspx]. &lt;br /&gt;
&lt;br /&gt;
Microsoft&#039;s MPI is based off the MPICH2 explanation here:http://www.springerlink.com/content/hc4nyva6dvg6vdpp/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Looking at the details of the Microsoft MPI only runs if a process is put into the Microsoft Job Scheduler. So we may want to combine input/ouput and throughtput.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys.According to the resources above, the method for Windows to provide high input/output and massive throughput is almost the same. But I have no idea how to combine the two sections. Do we need to write somthing about input/output or just consider it under the massive throughput?  [[User:Zhangqi|Zhangqi]] 22:38, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[User:Achamney|Achamney]] 21:18, 14 October 2010 (UTC) Done for now, I will come back to this after i get back (after 10:00pm tonight ish) and fix up the flow and such&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4752</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4752"/>
		<updated>2010-10-15T11:51:50Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys nice work, sorry I didn&#039;t have time to add more to the essay today. I combined the essay into a FrankenEssay which is on the front page and added a conclusion. If read through it but if anyone notices a mistake I missed go ahead and correct it.&lt;br /&gt;
--[[User:Abown|Andrew Bown]] 1:16, 15 October 2010&lt;br /&gt;
&lt;br /&gt;
Yeah I think COMP 3008 and 3004 just wrecked us... Thank you for finding the time to combine it. Hope my introduction was good... I will read it over if we can ever finish the sequence diagrams... --[[User:Dkrutsko|Dkrutsko]] 07:02, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay, I think we finished the essay.I added some reference to the main page and all of them come from the discussion part.Everyone do a good job :) [[User:Zhangqi|Zhangqi]] 11:51, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
Using this paragraph and my solution on the assignment I was able to expand on this topic. It is in the main page at the moment, see if you like it, add anything you think I missed --[[User:Dkrutsko|Dkrutsko]] 05:17, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:I&#039;ll attempt to re-write this paragraph for clarity and accuracy:&lt;br /&gt;
&lt;br /&gt;
:A feature provided by mainframes is their ability to create redundancy in terms of data storage and parallel processing. Windows can mimic expandable storage and storage redundancy through out-sourced storage solutions.&lt;br /&gt;
&lt;br /&gt;
:Processing redundancy for Windows can be created through the Microsoft Cluster Service (MSCS).  This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time.  If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime.  However this service does not offer fault tolerance to the same extent as actual mainframes.&lt;br /&gt;
&lt;br /&gt;
:Source: http://msdn.microsoft.com/en-us/library/ms952401.aspx&lt;br /&gt;
&lt;br /&gt;
:Virtual machine nodes can be used in place of physical machine nodes in a cluster, providing redundant application services to end-users.  If the a virtual machine fails, other virtual machines can take over, if the failure is on the Windows host machine then they will all fail.  The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
:Let me know what you think.&lt;br /&gt;
:[[User:Brobson|Brobson]] 18:25, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
:According to your searchvmware.techtarget.com source, a processor cannot be hot-plugged in the truest sense of the word in that the hardware needs to be rebooted to recognize the added hardware.  Hot-swapping demands zero downtime.  &lt;br /&gt;
:If you don&#039;t mind me suggesting but I don&#039;t think this section should be referring to the hot-swapping/hot-adding/or hot-plugging of virtual machines or client machines of the mainframe.  I think for hot-swapping we should focus on the hot-swapping of hardware components.  As such we can point out that Windows does support mainframe-level hot-swapping with its Windows Server 2008 R2 Datacenter OS&lt;br /&gt;
:&amp;lt;blockquote&amp;gt;&amp;quot;Hot Add/Replace Memory and Processors with supporting hardware&amp;quot;&amp;lt;/blockquote&amp;gt; http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&lt;br /&gt;
&lt;br /&gt;
:If we are only consider the capabilities of the PC OS, then Windows only supports plug and play devices, such as external hard drives, and does not support RAM or CPU hot-swap.&lt;br /&gt;
&lt;br /&gt;
:I&#039;m also wondering if this should tie into scalability of a mainframe or if scalability should have it&#039;s own section.&lt;br /&gt;
:[[User:Brobson|Brobson]] 17:12, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
The source you mentioned talks about a virtual machine and that it can be hot-swapped with no downtime depending on the guest OS with no downtime. Some guest OS&#039;s need a reboot but some do not. The virtual Windows Server 2008 ENT x64 can hot-add memory with no downtime, it seems that no virtual os can hot-add cpu without rebooting. And the second part of my paragraph talks about physical Windows systems coupled with a program that enables hot-swapping of SATA hard drives and other components with no downtime.&lt;br /&gt;
I do agree that hot-swapping in a virtual machine may be kind of useless though haha :S. And I&#039;ll check out the Windows Server 2008 R2 Datacenter OS, Thanks [[User:Nshires|Nshires]] 00:33, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Revised:&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed. &lt;br /&gt;
&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
feel free to edit [[User:Nshires|Nshires]] 03:49, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
I don&#039;t have time to write this before work(12-5) but I can put out the information i got already with research so if someone could help me complete this that it would be awesome since I have to finish up my 3004 document as well tonight.&lt;br /&gt;
~[User:Abown|Andrew Bown] (October 14th 11:12am)&lt;br /&gt;
Mainframes are able to achieve high/input output rates with their specialized Message Passing Interfaces (MPIs) which allow for fast intercommunication by sharing memory in between the different cores.https://www.mpitech.com/mpitech.nsf/pages/mainframe-&amp;amp;-AS400-printing_en.html&lt;br /&gt;
&lt;br /&gt;
The latest versions of Windows clusters support a Microsoft created MPI surprisingly called Microsoft MPI[http://msdn.microsoft.com/en-us/library/bb524831(VS.85).aspx]. &lt;br /&gt;
&lt;br /&gt;
Microsoft&#039;s MPI is based off the MPICH2 explanation here:http://www.springerlink.com/content/hc4nyva6dvg6vdpp/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Looking at the details of the Microsoft MPI only runs if a process is put into the Microsoft Job Scheduler. So we may want to combine input/ouput and throughtput.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys.According to the resources above, the method for Windows to provide high input/output and massive throughput is almost the same. But I have no idea how to combine the two sections. Do we need to write somthing about input/output or just consider it under the massive throughput?  [[User:Zhangqi|Zhangqi]] 22:38, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[User:Achamney|Achamney]] 21:18, 14 October 2010 (UTC) Done for now, I will come back to this after i get back (after 10:00pm tonight ish) and fix up the flow and such&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4747</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4747"/>
		<updated>2010-10-15T11:47:37Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* References */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.But if the failure is on the Windows host machine then they will all fail. The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== Redundancy ===&lt;br /&gt;
&amp;quot;Setup for Failover Clustering and Microsoft Cluster Service&amp;quot; &amp;lt;http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Introducing Microsoft Cluster Service (MSCS) in the Windows Server 2003 Family&amp;quot; &amp;lt;http://msdn.microsoft.com/en-us/library/ms952401.aspx&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; &amp;lt;http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; &amp;lt;http://computersight.com/computers/mainframe-computers/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; &amp;lt;http://www.scribd.com/doc/6895677/Mainframe-Features&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mapping the Mainframe to Windows: A Reference Architecture&amp;quot; &amp;lt;http://www.microsoft.com/windowsserver/mainframe/papers.mspx&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Massive Throughput ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Most Powerful Computers In The World&amp;quot; &amp;lt;http://hubpages.com/hub/Most-Powerful-Computers-In-The-World&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Windows Server 2003 Administrator’s Companion (MS Press, 2003)  &amp;quot;Overview of Microsoft Windows Compute Cluster Server 2003&amp;quot; &amp;lt;http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;grid computing&amp;quot; &amp;lt;http://searchdatacenter.techtarget.com/definition/grid-computing&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Clusters vs. Grids&amp;quot; &amp;lt;http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html&amp;gt;&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4742</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4742"/>
		<updated>2010-10-15T11:37:31Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Redunancy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.But if the failure is on the Windows host machine then they will all fail. The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== Redundancy ===&lt;br /&gt;
&amp;quot;Setup for Failover Clustering and Microsoft Cluster Service&amp;quot; &amp;lt;http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Introducing Microsoft Cluster Service (MSCS) in the Windows Server 2003 Family&amp;quot; &amp;lt;http://msdn.microsoft.com/en-us/library/ms952401.aspx&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; &amp;lt;http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; &amp;lt;http://computersight.com/computers/mainframe-computers/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; &amp;lt;http://www.scribd.com/doc/6895677/Mainframe-Features&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mapping the Mainframe to Windows: A Reference Architecture&amp;quot; &amp;lt;http://www.microsoft.com/windowsserver/mainframe/papers.mspx&amp;gt;&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4740</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4740"/>
		<updated>2010-10-15T11:35:34Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* References */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.But if the failure is on the Windows host machine then they will all fail. The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== Redunancy ===&lt;br /&gt;
&amp;quot;Setup for Failover Clustering and Microsoft Cluster Service&amp;quot; &amp;lt;http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;quot;&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; &amp;lt;http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; &amp;lt;http://computersight.com/computers/mainframe-computers/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; &amp;lt;http://www.scribd.com/doc/6895677/Mainframe-Features&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mapping the Mainframe to Windows: A Reference Architecture&amp;quot; &amp;lt;http://www.microsoft.com/windowsserver/mainframe/papers.mspx&amp;gt;&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4738</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4738"/>
		<updated>2010-10-15T11:31:36Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Backwards-Compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.But if the failure is on the Windows host machine then they will all fail. The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; &amp;lt;http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; &amp;lt;http://computersight.com/computers/mainframe-computers/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; &amp;lt;http://www.scribd.com/doc/6895677/Mainframe-Features&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mapping the Mainframe to Windows: A Reference Architecture&amp;quot; &amp;lt;http://www.microsoft.com/windowsserver/mainframe/papers.mspx&amp;gt;&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4733</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4733"/>
		<updated>2010-10-15T11:22:33Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Redundancy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.But if the failure is on the Windows host machine then they will all fail. The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; http://www.scribd.com/doc/6895677/Mainframe-Features&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4731</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4731"/>
		<updated>2010-10-15T11:19:35Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Redundancy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system.This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time. If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime. However this service does not offer fault tolerance to the same extent as actual mainframes. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; http://www.scribd.com/doc/6895677/Mainframe-Features&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4722</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4722"/>
		<updated>2010-10-15T11:15:58Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Backwards-Compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows 7 To Break Backwards Compatibility&amp;quot; http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe computers&amp;quot; http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; http://www.scribd.com/doc/6895677/Mainframe-Features&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4719</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4719"/>
		<updated>2010-10-15T11:12:51Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Backwards-Compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Mainframe Features&amp;quot; http://www.scribd.com/doc/6895677/Mainframe-Features&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4718</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4718"/>
		<updated>2010-10-15T11:10:28Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4717</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4717"/>
		<updated>2010-10-15T11:10:10Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* I/O and Resource Management */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
== I/O and Resource Management ==&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm]&lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4716</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4716"/>
		<updated>2010-10-15T11:09:56Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Backwards-Compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
== Backwards-Compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
=== I/O and Resource Management ===&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4715</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4715"/>
		<updated>2010-10-15T11:09:38Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* No downtime upgrades */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
== No downtime upgrades ==&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
=== I/O and Resource Management ===&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4714</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4714"/>
		<updated>2010-10-15T11:09:11Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Redundancy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
==Redundancy ==&lt;br /&gt;
&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. &lt;br /&gt;
&lt;br /&gt;
There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
=== I/O and Resource Management ===&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4712</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=4712"/>
		<updated>2010-10-15T11:01:22Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Backwards-Compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
Throughout the years, Windows has undergone some rather radical changes by modernizing existing technologies and providing innovation to existing features; this resulted in having functionality equivalent to that of a mainframe computer. However, although these changes have been extensive, Windows has not been particularly dominant when it comes to replacing modern mainframe systems.&lt;br /&gt;
&lt;br /&gt;
== Mainframes ==&lt;br /&gt;
&lt;br /&gt;
Mainframe systems have always had a good reputation for being used by large organizations in order to process thousands of small transactions. Whether these systems are used by the bank or by a police department, they possess several key features which make them exceedingly more powerful when compared to other systems. One of these features is an extensive and prolonged stability. This is a result of having tremendous redundancy and exception handling which prevents the entire system from shutting down, even if some components are inactive due to unforeseen circumstances.  Because of this, mainframe computers are incredibly reliable when it comes to data storage and interoperability.&lt;br /&gt;
&lt;br /&gt;
With this in mind, another neat feature that a mainframe possesses is the ability to hot swap components without taking the system offline. Consequently, components that are malfunctioning or require an upgrade can safely be replaced without endangering system stability. As a result mainframes gain a broad life spectrum as components can be upgraded individually without having to replace the entire system. Additionally, software written for these machines is extremely backwards compatible. The reason behind this is the fact that mainframe computers are fully virtualized. This is what allows a mainframe to run software that could have been written decades ago while still being able to run alongside modern software and hardware. In addition, this is part of the reason why mainframe computers are so secure, it is because they can use a combination of newer and older software as well as hardware to take years of innovation and combine it into one secure platform.&lt;br /&gt;
&lt;br /&gt;
Unfortunately, all these features would mean nothing if the mainframe could not keep up with the data being sent and received. As a result, computers of this calibre must be able to have good I/O resource management as well as protect against bottlenecks. They do this by supporting powerful schedulers which ensure the fastest possible throughput for transaction processing [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html]. Without this, you could continuously be upgrading components but suffer diminishing returns.&lt;br /&gt;
&lt;br /&gt;
With so many features, how is Windows expected to keep up? The reality is Windows already supports most of these features. And when coupled with addon software such as VMWare and EMC storage solutions, the capabilities are even more astounding.&lt;br /&gt;
&lt;br /&gt;
===Redundancy ===&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
&lt;br /&gt;
A useful feature that mainframes have is the ability to hot-swap. Hot-swapping is the ability to swap out components of a computer/mainframe for new components with no downtime (i.e. the system continues to run through this process). Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe. Technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors, memory and storage inside the mainframe. With the right software and setup (redundancy) a mainframe is able to be upgraded and/or repaired as is sees fit by adding and removing components such as hard drives and processors. &lt;br /&gt;
&lt;br /&gt;
Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. Due to some circumstances with different CPU&#039;s and guest OS&#039;s, the virtual machine may have to restart and is unable to hot-add/hot-plug. For example, the virtual machine of a Windows Server 2008 ENT x64 OS allows you to hot-add memory but you must restart it to remove memory and to add/remove CPU. &lt;br /&gt;
&lt;br /&gt;
In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular. The Windows Server 2008 R2 Datacenter released in 2009 uses dynamic hardware partitioning. Dynamic hardware partitioning means that its hardware can be partitioned into separate hardware with processors and other components which allows for hot-swapping/hot-adding of these partitions where needed.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares.&lt;br /&gt;
&lt;br /&gt;
=== I/O and Resource Management ===&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
Windows has gone from a Operation System specialize for personal computers to a platform to create a replacement for a mainframe. It quickly stripped away all the advantages that a normal mainframe has. But the largest threat Windows has to Mainframes is the cost. It gives anyone the ability to create a mainframe equivalent system with stock parts comparatively cheap price. Does this mean that the mainframe time is running out? Only Time will tell.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
&lt;br /&gt;
=== No downtime upgrades ===&lt;br /&gt;
Davis, David. &amp;quot;VMware vSphere hot-add RAM and hot-plug CPU.&amp;quot; TechTarget. N.p., 09.15.2009. Web. 14 Oct 2010. &amp;lt;http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631_mem1,00.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Windows Server 2008 R2 Datacenter.&amp;quot; Windows Server 2008 R2. N.p., n.d. Web. 14 Oct 2010. &amp;lt;http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Go-HotSwap: CompactPCI Hot Swap.&amp;quot; Jungo. Jungo Ltd, n.d. Web. 14 Oct 2010. &amp;lt;http://www.jungo.com/st/hotswap.html&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Backwards-Compatibility ===&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4350</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4350"/>
		<updated>2010-10-15T02:39:31Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* High input/output */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
Using this paragraph and my solution on the assignment I was able to expand on this topic. It is in the main page at the moment, see if you like it, add anything you think I missed --[[User:Dkrutsko|Dkrutsko]] 05:17, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:I&#039;ll attempt to re-write this paragraph for clarity and accuracy:&lt;br /&gt;
&lt;br /&gt;
:A feature provided by mainframes is their ability to create redundancy in terms of data storage and parallel processing. Windows can mimic expandable storage and storage redundancy through out-sourced storage solutions.&lt;br /&gt;
&lt;br /&gt;
:Processing redundancy for Windows can be created through the Microsoft Cluster Service (MSCS).  This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time.  If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime.  However this service does not offer fault tolerance to the same extent as actual mainframes.&lt;br /&gt;
&lt;br /&gt;
:Source: http://msdn.microsoft.com/en-us/library/ms952401.aspx&lt;br /&gt;
&lt;br /&gt;
:Virtual machine nodes can be used in place of physical machine nodes in a cluster, providing redundant application services to end-users.  If the a virtual machine fails, other virtual machines can take over, if the failure is on the Windows host machine then they will all fail.  The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
:Let me know what you think.&lt;br /&gt;
:[[User:Brobson|Brobson]] 18:25, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
:According to your searchvmware.techtarget.com source, a processor cannot be hot-plugged in the truest sense of the word in that the hardware needs to be rebooted to recognize the added hardware.  Hot-swapping demands zero downtime.  &lt;br /&gt;
:If you don&#039;t mind me suggesting but I don&#039;t think this section should be referring to the hot-swapping/hot-adding/or hot-plugging of virtual machines or client machines of the mainframe.  I think for hot-swapping we should focus on the hot-swapping of hardware components.  As such we can point out that Windows does support mainframe-level hot-swapping with its Windows Server 2008 R2 Datacenter OS&lt;br /&gt;
:&amp;lt;blockquote&amp;gt;&amp;quot;Hot Add/Replace Memory and Processors with supporting hardware&amp;quot;&amp;lt;/blockquote&amp;gt; http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&lt;br /&gt;
&lt;br /&gt;
:If we are only consider the capabilities of the PC OS, then Windows only supports plug and play devices, such as external hard drives, and does not support RAM or CPU hot-swap.&lt;br /&gt;
&lt;br /&gt;
:I&#039;m also wondering if this should tie into scalability of a mainframe or if scalability should have it&#039;s own section.&lt;br /&gt;
:[[User:Brobson|Brobson]] 17:12, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
The source you mentioned talks about a virtual machine and that it can be hot-swapped with no downtime depending on the guest OS with no downtime. Some guest OS&#039;s need a reboot but some do not. The virtual Windows Server 2008 ENT x64 can hot-add memory with no downtime, it seems that no virtual os can hot-add cpu without rebooting. And the second part of my paragraph talks about physical Windows systems coupled with a program that enables hot-swapping of SATA hard drives and other components with no downtime.&lt;br /&gt;
I do agree that hot-swapping in a virtual machine may be kind of useless though haha :S. And I&#039;ll check out the Windows Server 2008 R2 Datacenter OS, Thanks [[User:Nshires|Nshires]] 00:33, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
I don&#039;t have time to write this before work(12-5) but I can put out the information i got already with research so if someone could help me complete this that it would be awesome since I have to finish up my 3004 document as well tonight.&lt;br /&gt;
~[User:Abown|Andrew Bown] (October 14th 11:12am)&lt;br /&gt;
Mainframes are able to achieve high/input output rates with their specialized Message Passing Interfaces (MPIs) which allow for fast intercommunication by sharing memory in between the different cores.https://www.mpitech.com/mpitech.nsf/pages/mainframe-&amp;amp;-AS400-printing_en.html&lt;br /&gt;
&lt;br /&gt;
The latest versions of Windows clusters support a Microsoft created MPI surprisingly called Microsoft MPI[http://msdn.microsoft.com/en-us/library/bb524831(VS.85).aspx]. &lt;br /&gt;
&lt;br /&gt;
Microsoft&#039;s MPI is based off the MPICH2 explanation here:http://www.springerlink.com/content/hc4nyva6dvg6vdpp/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Looking at the details of the Microsoft MPI only runs if a process is put into the Microsoft Job Scheduler. So we may want to combine input/ouput and throughtput.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys.According to the resources above, the method for Windows to provide high input/output and massive throughput is almost the same. But I have no idea how to combine the two sections. Do we need to write somthing about input/output or just consider it under the massive throughput?  [[User:Zhangqi|Zhangqi]] 22:38, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[User:Achamney|Achamney]] 21:18, 14 October 2010 (UTC) Done for now, I will come back to this after i get back (after 10:00pm tonight ish) and fix up the flow and such&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4348</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4348"/>
		<updated>2010-10-15T02:38:42Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* High input/output */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
Using this paragraph and my solution on the assignment I was able to expand on this topic. It is in the main page at the moment, see if you like it, add anything you think I missed --[[User:Dkrutsko|Dkrutsko]] 05:17, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:I&#039;ll attempt to re-write this paragraph for clarity and accuracy:&lt;br /&gt;
&lt;br /&gt;
:A feature provided by mainframes is their ability to create redundancy in terms of data storage and parallel processing. Windows can mimic expandable storage and storage redundancy through out-sourced storage solutions.&lt;br /&gt;
&lt;br /&gt;
:Processing redundancy for Windows can be created through the Microsoft Cluster Service (MSCS).  This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time.  If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime.  However this service does not offer fault tolerance to the same extent as actual mainframes.&lt;br /&gt;
&lt;br /&gt;
:Source: http://msdn.microsoft.com/en-us/library/ms952401.aspx&lt;br /&gt;
&lt;br /&gt;
:Virtual machine nodes can be used in place of physical machine nodes in a cluster, providing redundant application services to end-users.  If the a virtual machine fails, other virtual machines can take over, if the failure is on the Windows host machine then they will all fail.  The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
:Let me know what you think.&lt;br /&gt;
:[[User:Brobson|Brobson]] 18:25, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
:According to your searchvmware.techtarget.com source, a processor cannot be hot-plugged in the truest sense of the word in that the hardware needs to be rebooted to recognize the added hardware.  Hot-swapping demands zero downtime.  &lt;br /&gt;
:If you don&#039;t mind me suggesting but I don&#039;t think this section should be referring to the hot-swapping/hot-adding/or hot-plugging of virtual machines or client machines of the mainframe.  I think for hot-swapping we should focus on the hot-swapping of hardware components.  As such we can point out that Windows does support mainframe-level hot-swapping with its Windows Server 2008 R2 Datacenter OS&lt;br /&gt;
:&amp;lt;blockquote&amp;gt;&amp;quot;Hot Add/Replace Memory and Processors with supporting hardware&amp;quot;&amp;lt;/blockquote&amp;gt; http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&lt;br /&gt;
&lt;br /&gt;
:If we are only consider the capabilities of the PC OS, then Windows only supports plug and play devices, such as external hard drives, and does not support RAM or CPU hot-swap.&lt;br /&gt;
&lt;br /&gt;
:I&#039;m also wondering if this should tie into scalability of a mainframe or if scalability should have it&#039;s own section.&lt;br /&gt;
:[[User:Brobson|Brobson]] 17:12, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
The source you mentioned talks about a virtual machine and that it can be hot-swapped with no downtime depending on the guest OS with no downtime. Some guest OS&#039;s need a reboot but some do not. The virtual Windows Server 2008 ENT x64 can hot-add memory with no downtime, it seems that no virtual os can hot-add cpu without rebooting. And the second part of my paragraph talks about physical Windows systems coupled with a program that enables hot-swapping of SATA hard drives and other components with no downtime.&lt;br /&gt;
I do agree that hot-swapping in a virtual machine may be kind of useless though haha :S. And I&#039;ll check out the Windows Server 2008 R2 Datacenter OS, Thanks [[User:Nshires|Nshires]] 00:33, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
I don&#039;t have time to write this before work(12-5) but I can put out the information i got already with research so if someone could help me complete this that it would be awesome since I have to finish up my 3004 document as well tonight.&lt;br /&gt;
~[User:Abown|Andrew Bown] (October 14th 11:12am)&lt;br /&gt;
Mainframes are able to achieve high/input output rates with their specialized Message Passing Interfaces (MPIs) which allow for fast intercommunication by sharing memory in between the different cores.https://www.mpitech.com/mpitech.nsf/pages/mainframe-&amp;amp;-AS400-printing_en.html&lt;br /&gt;
&lt;br /&gt;
The latest versions of Windows clusters support a Microsoft created MPI surprisingly called Microsoft MPI[http://msdn.microsoft.com/en-us/library/bb524831(VS.85).aspx]. &lt;br /&gt;
&lt;br /&gt;
Microsoft&#039;s MPI is based off the MPICH2 explanation here:http://www.springerlink.com/content/hc4nyva6dvg6vdpp/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Looking at the details of the Microsoft MPI only runs if a process is put into the Microsoft Job Scheduler. So we may want to combine input/ouput and throughtput.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys.According to the resources above, the method for Windows to provide high input/output and massive throughput is almost the same. But I have no idea how to combine the two section. Do we need to write somthing about input/output or just consider it under the massive throughput?  [[User:Zhangqi|Zhangqi]] 22:38, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[User:Achamney|Achamney]] 21:18, 14 October 2010 (UTC) Done for now, I will come back to this after i get back (after 10:00pm tonight ish) and fix up the flow and such&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4346</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=4346"/>
		<updated>2010-10-15T02:38:16Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* High input/output */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
Using this paragraph and my solution on the assignment I was able to expand on this topic. It is in the main page at the moment, see if you like it, add anything you think I missed --[[User:Dkrutsko|Dkrutsko]] 05:17, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:I&#039;ll attempt to re-write this paragraph for clarity and accuracy:&lt;br /&gt;
&lt;br /&gt;
:A feature provided by mainframes is their ability to create redundancy in terms of data storage and parallel processing. Windows can mimic expandable storage and storage redundancy through out-sourced storage solutions.&lt;br /&gt;
&lt;br /&gt;
:Processing redundancy for Windows can be created through the Microsoft Cluster Service (MSCS).  This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time.  If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime.  However this service does not offer fault tolerance to the same extent as actual mainframes.&lt;br /&gt;
&lt;br /&gt;
:Source: http://msdn.microsoft.com/en-us/library/ms952401.aspx&lt;br /&gt;
&lt;br /&gt;
:Virtual machine nodes can be used in place of physical machine nodes in a cluster, providing redundant application services to end-users.  If the a virtual machine fails, other virtual machines can take over, if the failure is on the Windows host machine then they will all fail.  The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
:Let me know what you think.&lt;br /&gt;
:[[User:Brobson|Brobson]] 18:25, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
:According to your searchvmware.techtarget.com source, a processor cannot be hot-plugged in the truest sense of the word in that the hardware needs to be rebooted to recognize the added hardware.  Hot-swapping demands zero downtime.  &lt;br /&gt;
:If you don&#039;t mind me suggesting but I don&#039;t think this section should be referring to the hot-swapping/hot-adding/or hot-plugging of virtual machines or client machines of the mainframe.  I think for hot-swapping we should focus on the hot-swapping of hardware components.  As such we can point out that Windows does support mainframe-level hot-swapping with its Windows Server 2008 R2 Datacenter OS&lt;br /&gt;
:&amp;lt;blockquote&amp;gt;&amp;quot;Hot Add/Replace Memory and Processors with supporting hardware&amp;quot;&amp;lt;/blockquote&amp;gt; http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&lt;br /&gt;
&lt;br /&gt;
:If we are only consider the capabilities of the PC OS, then Windows only supports plug and play devices, such as external hard drives, and does not support RAM or CPU hot-swap.&lt;br /&gt;
&lt;br /&gt;
:I&#039;m also wondering if this should tie into scalability of a mainframe or if scalability should have it&#039;s own section.&lt;br /&gt;
:[[User:Brobson|Brobson]] 17:12, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
The source you mentioned talks about a virtual machine and that it can be hot-swapped with no downtime depending on the guest OS with no downtime. Some guest OS&#039;s need a reboot but some do not. The virtual Windows Server 2008 ENT x64 can hot-add memory with no downtime, it seems that no virtual os can hot-add cpu without rebooting. And the second part of my paragraph talks about physical Windows systems coupled with a program that enables hot-swapping of SATA hard drives and other components with no downtime.&lt;br /&gt;
I do agree that hot-swapping in a virtual machine may be kind of useless though haha :S. And I&#039;ll check out the Windows Server 2008 R2 Datacenter OS, Thanks [[User:Nshires|Nshires]] 00:33, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
I don&#039;t have time to write this before work(12-5) but I can put out the information i got already with research so if someone could help me complete this that it would be awesome since I have to finish up my 3004 document as well tonight.&lt;br /&gt;
~[User:Abown|Andrew Bown] (October 14th 11:12am)&lt;br /&gt;
Mainframes are able to achieve high/input output rates with their specialized Message Passing Interfaces (MPIs) which allow for fast intercommunication by sharing memory in between the different cores.https://www.mpitech.com/mpitech.nsf/pages/mainframe-&amp;amp;-AS400-printing_en.html&lt;br /&gt;
&lt;br /&gt;
The latest versions of Windows clusters support a Microsoft created MPI surprisingly called Microsoft MPI[http://msdn.microsoft.com/en-us/library/bb524831(VS.85).aspx]. &lt;br /&gt;
&lt;br /&gt;
Microsoft&#039;s MPI is based off the MPICH2 explanation here:http://www.springerlink.com/content/hc4nyva6dvg6vdpp/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Looking at the details of the Microsoft MPI only runs if a process is put into the Microsoft Job Scheduler. So we may want to combine input/ouput and throughtput.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey guys.According to the resources above, the method for Windows to provide high input/output and massive throughput is almost the same. But I have no idea how to combine the two section. Do we need to write somthing about input/output or just consider it under the massive throughput?  [[User:Zhangqi|Zhangqi]] 02:38, 15 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[User:Achamney|Achamney]] 21:18, 14 October 2010 (UTC) Done for now, I will come back to this after i get back (after 10:00pm tonight ish) and fix up the flow and such&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010.[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World] It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. &lt;br /&gt;
&lt;br /&gt;
The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. Windows mainly uses MS-MPI (Microsoft Message Passing Interface) to send messages via Ethernet to its other nodes.[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a] Developers can use this function because it automatically connects a given process to each node. Windows then can use its scheduler to determine which node receives each different job. It keeps track of each node, and shuts the job down once the output is received. &lt;br /&gt;
&lt;br /&gt;
Today, clustering computers together with the intent of optimizing throughput is accomplished using grid computing. Grid computing shares the same basic idealisms of cluster computing, however, grids have the sole job of computing massive scale problems.[http://searchdatacenter.techtarget.com/definition/grid-computing] Each subsection of a problem is passed out to a compute node in the grid for it to be calculated. The one clear problem of this computational model is that the problem must have the ability to be broken down into several pieces for each compute node to work on. This style of high throughput computing can be used for problems such as high-energy physics, or biology models.&lt;br /&gt;
&lt;br /&gt;
In general, however, the most popular solution to solve problems that require large throughput would be to construct a cluster model. Most businesses require the reliability of clusters, even though it sacrifices performance; there is no competition to the hight availability of a cluster server as compared to the grid model.[http://www.dba-oracle.com/real_application_clusters_rac_grid/grid_vs_clusters.htm] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3919</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3919"/>
		<updated>2010-10-14T18:29:08Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
Using this paragraph and my solution on the assignment I was able to expand on this topic. It is in the main page at the moment, see if you like it, add anything you think I missed --[[User:Dkrutsko|Dkrutsko]] 05:17, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
:I&#039;ll attempt to re-write this paragraph for clarity and accuracy:&lt;br /&gt;
&lt;br /&gt;
:A feature provided by mainframes is their ability to create redundancy in terms of data storage and parallel processing. Windows can mimic expandable storage and storage redundancy through out-sourced storage solutions.&lt;br /&gt;
&lt;br /&gt;
:Processing redundancy for Windows can be created through the Microsoft Cluster Service (MSCS).  This service allows multiple Windows machines to be connected as nodes in a cluster; where each node has the same applications and only one node is online at any point in time.  If a node in the cluster fails, another will take over. The failing node can then be restarted or replaced without serious downtime.  However this service does not offer fault tolerance to the same extent as actual mainframes.&lt;br /&gt;
&lt;br /&gt;
:Source: http://msdn.microsoft.com/en-us/library/ms952401.aspx&lt;br /&gt;
&lt;br /&gt;
:Virtual machine nodes can be used in place of physical machine nodes in a cluster, providing redundant application services to end-users.  If the a virtual machine fails, other virtual machines can take over, if the failure is on the Windows host machine then they will all fail.  The virtual cluster can be maintained across multiple machines, allowing multiple users to have the reliability of clusters on fewer machines.&lt;br /&gt;
&lt;br /&gt;
:Let me know what you think.&lt;br /&gt;
:[[User:Brobson|Brobson]] 18:25, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
:According to your searchvmware.techtarget.com source, a processor cannot be hot-plugged in the truest sense of the word in that the hardware needs to be rebooted to recognize the added hardware.  Hot-swapping demands zero downtime.  &lt;br /&gt;
:If you don&#039;t mind me suggesting but I don&#039;t think this section should be referring to the hot-swapping/hot-adding/or hot-plugging of virtual machines or client machines of the mainframe.  I think for hot-swapping we should focus on the hot-swapping of hardware components.  As such we can point out that Windows does support mainframe-level hot-swapping with its Windows Server 2008 R2 Datacenter OS&lt;br /&gt;
:&amp;lt;blockquote&amp;gt;&amp;quot;Hot Add/Replace Memory and Processors with supporting hardware&amp;quot;&amp;lt;/blockquote&amp;gt; http://www.microsoft.com/windowsserver2008/en/us/2008-dc.aspx&lt;br /&gt;
&lt;br /&gt;
:If we are only consider the capabilities of the PC OS, then Windows only supports plug and play devices, such as external hard drives, and does not support RAM or CPU hot-swap.&lt;br /&gt;
&lt;br /&gt;
:I&#039;m also wondering if this should tie into scalability of a mainframe or if scalability should have it&#039;s own section.&lt;br /&gt;
:[[User:Brobson|Brobson]] 17:12, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to simulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
I don&#039;t have time to write this before work(12-5) but I can put out the information i got already with research so if someone could help me complete this that it would be awesome since I have to finish up my 3004 document as well tonight.&lt;br /&gt;
~[User:Abown|Andrew Bown] (October 14th 11:12am)&lt;br /&gt;
Mainframes are able to achieve high/input output rates with their specialized Message Passing Interfaces (MPIs) which allow for fast intercommunication by sharing memory in between the different cores.https://www.mpitech.com/mpitech.nsf/pages/mainframe-&amp;amp;-AS400-printing_en.html&lt;br /&gt;
&lt;br /&gt;
The latest versions of Windows clusters support a Microsoft created MPI surprisingly called Microsoft MPI[http://msdn.microsoft.com/en-us/library/bb524831(VS.85).aspx]. &lt;br /&gt;
&lt;br /&gt;
Microsoft&#039;s MPI is based off the MPICH2 explanation here:http://www.springerlink.com/content/hc4nyva6dvg6vdpp/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Looking at the details of the Microsoft MPI only runs if a process is put into the Microsoft Job Scheduler. So we may want to combine input/ouput and throughtput.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
I can grab this section.&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in FLOPS (floating point logical operations per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. This all changes, however, when computer clustering is introduced. In the recent years, IBM has constructed a clustered system called The Roadrunner that ranks third in the TOP500 supercomputer list as of June 2010. It has a total of 60 connected units, over a thousand processors, and the capability of computing at a rate of 1.7 petaflops. The question is, with such complex hardware, how is it possible for any sort of software to use this clustered system? Luckily, Windows has introduced an OS called Windows Compute Cluster Server, which provides the necessary software to allow the main computer to utilize the computing power of its cluster nodes. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://webcache.googleusercontent.com/search?q=cache:EPlDExBxmDYJ:download.microsoft.com/download/9/e/d/9edcdeab-f1fb-4670-8914-c08c5c6f22a5/HPC_Overview.doc+Windows+Compute+Cluster+Server&amp;amp;cd=1&amp;amp;hl=en&amp;amp;ct=clnk&amp;amp;gl=ca&amp;amp;client=firefox-a]&lt;br /&gt;
[http://hubpages.com/hub/Most-Powerful-Computers-In-The-World]&lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3603</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3603"/>
		<updated>2010-10-14T04:24:55Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to stimulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 00:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
I can grab this section.&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in MIPS (millions of instructions per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. &lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3601</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3601"/>
		<updated>2010-10-14T04:24:21Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to stimulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Thanks for your suggetions.I have added some information to the paragraph.:)&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 04:24, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
I can grab this section.&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in MIPS (millions of instructions per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. &lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3598</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=3598"/>
		<updated>2010-10-14T04:21:22Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
If you guys are looking for an authoritative source on how Windows works, I *highly* recommend checking out &amp;quot;Window Internals 4th Edition&amp;quot; or &amp;quot;Windows Internals 5th Edition&amp;quot; by Mark Russinovich and David Solomon.&lt;br /&gt;
&lt;br /&gt;
--[[User:3maisons|3maisons]] 18:59, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
OLD VERSION - Here for the time being while optimizing some sections --[[User:Dkrutsko|Dkrutsko]] 00:20, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &amp;lt;br&amp;gt;&lt;br /&gt;
Thanks Abown, just tweaked a couple of the sentences to improve flow [[User:Achamney|Achamney]] 01:13, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Also, i removed this statement &amp;quot;Unfortunately, computers are only able to process data as fast as they can receive it&amp;quot;. I couldn&#039;t find a good place to plug it in.&lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by having tremendous redundancy which allows for mainframes to be extremely reliable. This also gives security when concerning data loss due to downtime. Mainframes can be upgraded without taking the system down to allow for repairs, which further increases reliability. After upgrading a mainframe, however, the software does not change, so they can offer the features of backwards compatibility through virtualization; software never needs to be replaced. Mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest, they support powerful schedulers which ensure the fastest throughput for processing transactions as fast as possible. [http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features, how are Windows based systems supposed to compete with a mainframe? The fact of the matter is that there are features in Windows, and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
I have to agree this doesn&#039;t seem relevant to the question. --[[User:Dkrutsko|Dkrutsko]] 00:10, 14 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot swapping ==&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
Another useful feature that mainframes have is the ability to hot-swap. Hot-swapping occurs when there is faulty hardware in one of the processors inside the mainframe and technicians are able to swap out this component without the mainframe being turned off or crashing. Hot-swapping is also used when upgrading processors inside the mainframe. With the right software and setup (redundancy) a mainframe is able to upgrade and/or repair their mainframe as they see fit. Using VMWare on a Windows system allows users to hot-add RAM and hot-plug adds a new virtual CPU to the virtualized system. Using these hot-adding and hot-plugging techniques the virtual computer can grow in size to be able to accept loads varying in size. In non-virtual systems, Windows coupled with the program Go-HotSwap can hot-plug CompactPCI components. CompactPCI components allow many different devices to be plugged into their slots (e.g. multiple SATA hard drives) which makes a Windows system with these technologies very modular.&lt;br /&gt;
&lt;br /&gt;
These are the concepts I&#039;ve been able to figure out so far about hot-swapping/hot-upgrading, feel free to add/edit and what-not!  &lt;br /&gt;
&lt;br /&gt;
Sources:&lt;br /&gt;
http://searchvmware.techtarget.com/tip/0,289483,sid179_gci1367631,00.html&lt;br /&gt;
http://www.jungo.com/st/hotswap_windows.html&lt;br /&gt;
[[User:Nshires|Nshires]] 16:47, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backwards-compatibility is to add applications.Like Microsoft Windows Application Compatibility Toolkit.This application can make the platfrom to be compatible with most softwares from early version.The second method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run.The third method is to use shims to create the backwards-compatibility.Shims are just like the small libraries that can intercept the API, change parameters passed,handle and redirect the operations. In Windows OS,we can use shims to stimulate the behaviors of old version OS for legacy softwares. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Hey, this sounds really good, I&#039;d add an example where you say &#039;one method to implement backward-compatibility is to add applications&#039;.&lt;br /&gt;
And I did a little research and I found another way to create backwards compatibility using shims: http://en.wikipedia.org/wiki/Shim_%28computing%29&lt;br /&gt;
it pretty much intercepts the calls and changes them so that the old program can run on a new system.&lt;br /&gt;
Good Work, [[User:Nshires|Nshires]] 16:56, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
~Andrew Bown (October 13 2:08) I&#039;ll write this paragraph.&lt;br /&gt;
&lt;br /&gt;
== Massive Throughput ==&lt;br /&gt;
[[User:Achamney|Achamney]] 01:09, 14 October 2010 (UTC) &amp;lt;br&amp;gt;&lt;br /&gt;
I can grab this section.&lt;br /&gt;
&lt;br /&gt;
Throughput, unlike input and output, is the measurement of the number of calculations per second that a machine can preform. This is usually measured in MIPS (millions of instructions per second). It is impossible for one sole Windows machine to compete with a mainframe&#039;s throughput. Not only do mainframe processors have extremely high frequencies, but they also have a considerable amount of cores. &lt;br /&gt;
[http://publib.boulder.ibm.com/infocenter/tpfhelp/current/index.jsp?topic=/com.ibm.ztpf-ztpfdf.doc_put.cur/gtpc3/c3thru.html]&lt;br /&gt;
[http://searchcio-midmarket.techtarget.com/sDefinition/0,,sid183_gci213140,00.html]&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3225</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3225"/>
		<updated>2010-10-13T08:45:28Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions :)&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3224</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3224"/>
		<updated>2010-10-13T08:44:50Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not correct,plz edit it or give suggestions[[User:Zhangqi|Zhangqi]]&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3223</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3223"/>
		<updated>2010-10-13T08:43:45Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
ps. I didn&#039;t find perfect resources,just these.If you guys think any opinion is not corretct,plz edit it or give suggestions[[User:Zhangqi|Zhangqi]]&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
 &lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3222</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3222"/>
		<updated>2010-10-13T08:39:23Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in latest mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3221</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3221"/>
		<updated>2010-10-13T08:38:33Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in lateat mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3220</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3220"/>
		<updated>2010-10-13T08:38:20Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in lateat mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
http://computersight.com/computers/mainframe-computers/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3219</id>
		<title>COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=COMP_3000_Essay_1_2010_Question_3&amp;diff=3219"/>
		<updated>2010-10-13T08:34:39Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* backwards-compatibility */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Question=&lt;br /&gt;
&lt;br /&gt;
To what extent do modern Windows systems provide mainframe-equivalent functionality? What about Windows coupled with add-on commercial products such as VMWare&#039;s virtualization and EMC&#039;s storage solutions? Explain.&lt;br /&gt;
&lt;br /&gt;
=Answer=&lt;br /&gt;
&lt;br /&gt;
added introduction points and sections for each paragraph so you guys can edit one paragraph at a time instead of the whole document. If you want to claim a certain paragram just put your name into the section first. ~ Andrew (abown2@connect.carleton.ca) 12:00 10th of October 2010&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
Main Aspects of mainframes:&lt;br /&gt;
* redundancy which enables high reliability and security&lt;br /&gt;
* high input/output&lt;br /&gt;
* backwards-compatibility with legacy software&lt;br /&gt;
* support massive throughput&lt;br /&gt;
* Systems run constantly so they can be hot upgraded&lt;br /&gt;
http://www.exforsys.com/tutorials/mainframe/mainframe-features.html&lt;br /&gt;
&lt;br /&gt;
Linking sentence about how windows can duplicate mainframe functionality.&lt;br /&gt;
&lt;br /&gt;
here&#039;s the introduction ~ Abown (11:12 pm, October 12th 2010) &lt;br /&gt;
&lt;br /&gt;
Mainframes have been always used for large corporations to process thousands of small transactions, but what strengths allow for mainframes to be useful in their purpose. Mainframes are extremely useful in business because they are designed to run without downtime. This is achieved by have tremendous redundancy which allows for mainframes to be extremely reliable which gives security when concerning data loss due to downtime. Also mainframes can be upgraded without taking the system down which allows for repairs, which further increase reliability. But after upgrading a mainframe the software does not change so they offer the features of backwards compatibility through virtualization so software never needs to be replaced, it just it processed quicker. But computers are only able to run as fast as the data they are receiving so mainframes support high input/output so that the mainframe is always being utilized. To make sure mainframes are utilized to their fullest they support powerful schedulers which ensure the fastest throughput for processing transactions as possible.[http://www.exforsys.com/tutorials/mainframe/mainframe-features.html] With so many features how is Windows based system supposed to compete with a mainframe? The fact of the matter is their are features in Windows and software solutions which can duplicate these features in a Windows environment. Be it redundancy, real-time upgrading, virtualization, high input/output or utilizing resources.&lt;br /&gt;
&lt;br /&gt;
== History ==&lt;br /&gt;
Before comparing Windows systems and mainframes, the history of what mainframes were used for and where they came from must be understood. The first official mainframe computer was the UNIVAC I. [http://www.vikingwaters.com/htmlpages/MFHistory.htm] It was designed for the U.S. Census Bureau by J. Presper Eckert and John Mauchly. [http://www.thocp.net/hardware/univac.htm]. By this point in history, there were no personal computers, and the only people who could afford a computer were massive businesses. The main functionality of these mainframes were to calculate company payrolls, sales records, analyze sales performance, and store all company information.&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:Achamney|Achamney]] 01:30, 12 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
This doesn&#039;t seem to actually be pertinent to the question at hand. Question does not have any indication of the need to provide a history. [[User:Abown|Andrew Bown]] 11:16, 12 October 2010&lt;br /&gt;
&lt;br /&gt;
== Redundancy ==&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
A large feature of mainframes is their ability for redundancy. Mainframes produce redundancy by using the provider&#039;s off-site redundancy faeture. This feature lets the customer move all of their processes and applications onto the providers mainframe while the provider makes repairs on the customers system. Another way that mainframes create redundancy is their use of multi-processors that share the same memory. If one processor dies, the rest of the processors still keep all of the cache. There are multiple ways windows systems can create this redundancy feature that mainframes have. The first way windows systems can create this is by creating a windows cluster server. The cluster uses the same feature of the mainframe&#039;s multi-processor system. Another way windows systems can create redundancy is by using virtual machines. VMWare has a feature called Microsoft Cluster Service, which allows users to create a cluster of virtual machines on one physical windows system (or multiple physical machines). The virtual machines set up two different networks. They create a private network for communication in between the virtual machines and then a public network to control I/O services. The virtual machines also share storage to create concurrency so that if one fails, the other still has all of the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(this is what I&#039;ve gotten out of some researching so far, comments and any edits/suggestions if I&#039;m on the right track or not are greatly apreciated :) ) &lt;br /&gt;
*note: This is the second time I have written this, make sure to save whatever you edit in notepad or whatever first so that you don&#039;t lose everything*&lt;br /&gt;
&lt;br /&gt;
link to VMWare&#039;s cluster virtualization http://www.vmware.com/pdf/vsphere4/r40/vsp_40_mscs.pdf&lt;br /&gt;
&lt;br /&gt;
[[User:Nshires|Nshires]] 04:10, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
== hot upgrades ==&lt;br /&gt;
&lt;br /&gt;
== backwards-compatibility ==&lt;br /&gt;
Backwards-compatibility means that the newer software version can recognize what the old version write and how it work. It is a relationship between the two versions. If the new components provide all the functionality of the old one, we said that the new component is backwards compatible.In computer mainframe era, many applications are backwards compatible.For example,the code written 20 years ago in IBM System/360 can be run in lateat mainframe (like zSeries, System/390 family,System z9,etc).This because that models in mainframe computer provide a combination of special hardware,special microcode and an emulation program to simulate the target system.(The IBM 7080 transistorized computer was backward compatible with all models of the IBM 705 vacuum tube computer.) Sometimes mainframe also need customers to halt the computer and download the emulation program.&lt;br /&gt;
&lt;br /&gt;
In Windows OS,one method to implement backward-compatibility is to add applications.Then the platfrom can be compatible with most softwares from early version.The other method is the Windows Operating Systems usually have various subsystems.The software originally designed for older version or other OSs can be run in the subsystems.Such as Window NT, it has MS-DOS and Win16 subsystems.But Windows 7&#039;s backwards-compatibility is not very good.If kernel is different, the OSs can&#039;t be compatible with each other.But it doesn&#039;t mean that older programs won&#039;t run, virtualization will be used to make them run. &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 08:34, 13 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://www.windows7news.com/2008/05/23/windows-7-to-break-backwards-compatibility/&lt;br /&gt;
&lt;br /&gt;
== High input/output ==&lt;br /&gt;
&lt;br /&gt;
== massive throughput ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Conclusion ==&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2993</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2993"/>
		<updated>2010-10-11T23:58:13Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 19:57, 11 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2992</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2992"/>
		<updated>2010-10-11T23:57:30Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ah but the question isn&#039;t the pros and cons of each. It is how to get mainframe functionality from a Windows Operating System. How I split up the essay has each paragraph focusing on one aspect of mainframes and how it can be duplicated in windows either with windows tools or 3rd party software. You don&#039;t need to go into the history or applications of mainframes since that is not required by the phrasing of the question.&lt;br /&gt;
&lt;br /&gt;
~ Andrew Bown, 11:28 AM, October 11th 2010&lt;br /&gt;
&lt;br /&gt;
Okay, I think I catch your meaning. So now we should do is to edit the content of each paragragh as soon as possible. Time is limited.&lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 23:57, 11 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2905</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2905"/>
		<updated>2010-10-11T06:12:43Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 02:12, 11 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2904</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2904"/>
		<updated>2010-10-11T06:11:51Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
&lt;br /&gt;
--[[User:Zhangqi|Zhangqi]] 06:10, 11 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2903</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2903"/>
		<updated>2010-10-11T06:10:25Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
hey,I agree with Andrew&#039;s idea. We should break the essay into several sections and work it together.From my point of view, I think we should focus on how Windows provide the mainframe functionality and the VMware and EMC&#039;s storage should be our examples. As listed on the main page, there are many advantages and disadvantages of the mainframe.But where is Windows? I&#039;m confused... &lt;br /&gt;
&lt;br /&gt;
In my opinion, the first paragraph can introduct the mainframe (such as the history,features,application,etc) and what mainframe-equivalent functionality Windows support. Then we can use some paragraphs to discuss the functionalities in details. And VMware and EMC&#039;s storage solution also can be involved in this part. At last we make a conclusion of the whloe essay. Do you think it&#039;s feasible? &lt;br /&gt;
[[User:Zhangqi|Zhangqi]] 06:10, 11 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2897</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2897"/>
		<updated>2010-10-11T03:37:09Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)~ Andrew (abown2@connect.carleton.ca)sometime friday.&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Okay going to break the essay into points paragraphs on the main page which people can choose one paragraph to write. Then after all paragraphs are written we will communally edit it to have a cohesive voice. It is the only way I can viably think of to properly distribute the work. ~Andrew (abown2@connect.carleton.ca) 11:00 am, 10 October 2010.&lt;br /&gt;
&lt;br /&gt;
Link to IBMs info on their mainframes --[[User:Lmundt|Lmundt]] 19:58, 7 October 2010 (UTC)&lt;br /&gt;
http://publib.boulder.ibm.com/infocenter/zos/basics/index.jsp?topic=/com.ibm.zos.zmainframe/zconc_valueofmf.htm&lt;br /&gt;
&lt;br /&gt;
Just made the revelation that when trying to find information on the Windows equivalent to mainframe is refered to as &#039;&#039;&#039;clustering&#039;&#039;&#039; which should help finding information.&lt;br /&gt;
Here&#039;s the wiki article on the technology for an overview http://en.wikipedia.org/wiki/Microsoft_Cluster_Server ~ Andrew (abown2@connect.carleton.ca)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2635</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2635"/>
		<updated>2010-10-09T03:04:54Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.msp&lt;br /&gt;
&lt;br /&gt;
-[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2634</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2634"/>
		<updated>2010-10-09T03:04:16Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.msp&lt;br /&gt;
&lt;br /&gt;
[[User:Zhangqi|Zhangqi]] 15:02, 7 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2633</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2633"/>
		<updated>2010-10-09T02:49:44Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.msp&lt;br /&gt;
&lt;br /&gt;
[[User:Zhangqi|Zhangqi]] 02:45, 9 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2631</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2631"/>
		<updated>2010-10-09T02:49:00Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
[[User:Zhangqi|Zhangqi]] 02:45, 9 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2630</id>
		<title>Talk:COMP 3000 Essay 1 2010 Question 3</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Talk:COMP_3000_Essay_1_2010_Question_3&amp;diff=2630"/>
		<updated>2010-10-09T02:45:45Z</updated>

		<summary type="html">&lt;p&gt;Zhangqi: /* Group 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Group 3 == &lt;br /&gt;
Here&#039;s my email I&#039;ll add some of the stuff I find soon I&#039;m just saving the question for last.&lt;br /&gt;
Andrew Bown(abown2@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
I&#039;m not sure if this is totally relevant, oh well.&lt;br /&gt;
-First time sharing system CTSS (Compatible Time Sharing System) in the 1950s. Created at MIT&lt;br /&gt;
http://www.kernelthread.com/publications/virtualization/&lt;br /&gt;
&lt;br /&gt;
-achamney@connect.carleton.ca&lt;br /&gt;
&lt;br /&gt;
An article about the mainframe.&lt;br /&gt;
-Mainframe Migration http://www.microsoft.com/windowsserver/mainframe/migration.mspx&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact info (qzhang13@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
[[User:Zhangqi|Zhangqi]] 02:45, 9 October 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
Here&#039;s my contact information, look forward to working with everyone. - Ben Robson (brobson@connect.carleton.ca)&lt;br /&gt;
&lt;br /&gt;
Hey, Here&#039;s my contact info, nshires@connect.carleton.ca, I&#039;ll have some sources posted by the weekend hopefully&lt;br /&gt;
&lt;br /&gt;
Hey guys i&#039;m not in your group but I found some useful information that could help you &lt;br /&gt;
http://en.wikipedia.org/wiki/Mainframe_computer i know we are not suppose to use wiki references but its a good place to start&lt;br /&gt;
&lt;br /&gt;
Okay found an article paper titled called&amp;quot;Mainframe Scalability in the Windows Environment&amp;quot;&lt;br /&gt;
http://new.cmg.org/proceedings/2003/3023.pdf (required registration to access but is free)&lt;br /&gt;
&lt;br /&gt;
Folks, remember to do your discussions here.  Use four tildes to sign your entries, that adds time and date.  Email discussions won&#039;t count towards your participation grade...&lt;br /&gt;
[[User:Soma|Anil]] 15:43, 8 October 2010 (UTC)&lt;/div&gt;</summary>
		<author><name>Zhangqi</name></author>
	</entry>
</feed>