Saturday, October 31, 2009

Distribution and Reliability of Google Map Reduce

Map
  • Records from the data source (lines out of files, rows of a database, etc) are fed into the map function as key*value pairs: e.g., (filename, line).
  • map() produces one or more intermediate values along with an output key from the input.

Reduce
  • After the map phase is over, all the intermediate values for a given output key are combined together into a list.
  • reduce() combines those intermediate values into one or more final values for that same output key.
  • (in practice, usually only one final value per key).



















[Source from: http://code.google.com/edu/submissions/mapreduce-minilecture/listing.html]

Distribution and Reliability

MapReduce achieves reliability by parceling out a number of operations on the set of data to each node in the network. Each node is expected to report back periodically with completed work and status updates. If a node falls silent for longer than that interval, the master node (similar to the master server in the Google File System) records the node as dead and sends out the node's assigned work to other nodes. Individual operations use atomic operations for naming file outputs as a check to ensure that there are not parallel conflicting threads running. When files are renamed, it is possible to also copy them to another name in addition to the name of the task (allowing for side-effects).
The reduce operations operate much the same way. Because of their inferior properties with regard to parallel operations, the master node attempts to schedule reduce operations on the same node, or in the same rack as the node holding the data being operated on. This property is desirable as it conserves bandwidth across the backbone network of the datacenter.Implementations are not necessarily highly-available. For example, in Hadoop the NameNode is a single point of failure for the distributed filesystem and if the JobTracker fails, all outstanding work is lost.

[Source from: http://en.wikipedia.org/wiki/MapReduce]

SSH


Setting up a webpage is not an easy thing. However, a better way to deal with the complexity is to set aside the less important things and instead focus your attention on the essentials like security.
By default, connection to the Internet is not protected. If you go on and transfer your data over a non-secure connection, there's good chance that other people might see or even get hold of your data. They could sell these information or benefit from them in ways that are disadvantageous to you. Suppose that you are running the website for your company, when this happens, you may end up losing valuable information or a handful of clients just because you failed to invest on security. Integrity is everything for consumers. Once they noticed that you are not serious enough about the security, they may choose not to trust your company. Basically this is why we need SSH.
SSH shorts for Secure Shell, which is one of the most trusted names when it comes to data confidentiality and security. It is a network protocol that allows data to be exchanged using a secure channel between two networked devices. [1]SSH provides web administrators a more secured way to access their servers even when using a remote computer. Through an encrypted connection, SSH access allows you to log in to your account. By using encryption, all data will be shown in an unreadable format, which makes it hard for hackers to get anything from it. A login system installed with SSH requires a user to undergo heavy authentication process to tell whether or not the user who is trying to open the account is authorized.
Once you're logged in through SSH, it will communicate with the remote computer. Because the connection is secured, the two computers will talk and exchange information secretly. Should another person tries to tap on the conversation, SSH will automatically act as a shield. It will simply shoo away the intruder by giving only senseless data. If the intruder continues to disrupt the conversation, SSH will then disconnect. Moreover, since SSH is compatible with all major operating systems, you won't have any trouble installing this product in your system.
Suppose that you're a webmaster and now you need to do a maintenance or update on your server. You are far from the office and a public computer is just by your side. Accessing your web server through a public computer is totally unsecured. But by installing an SSH before you transfer classified information, any authorized person like you may be able to finish your work without worrying about threats brought by a non-secure connection.
Reference:
[1] http://en.wikipedia.org/wiki/Secure_Shell

Friday, October 30, 2009

Macro Viruses

Macro viruses are computer virus that uses an application's macro to distribute themselves. Since they are dependent on the application rather than the operating system they are able to affect different platforms such as windows and Macintosh. A famous example of Macro viruses is the Melissa virus which Wikipedia states (http://en.wikipedia.org/wiki/Melissa_(computer_worm)) was found in 1999 March 26 in an word document . It operates off MS word 19, 200 and even outlook 97 and 98. Designed to propagate via mass email, it clogs mail systems with infected email and overloaded servers.

Prevention is better than cure; here are some tips that may help in identifying or preventing such macro viruses:

Firstly, opening the file indirectly, by inserting it into a new file, will enable you to view the macros of the document without activating them. Access the list of macros in the suspicious document and look for unfamiliar or suspicious macros such as AAAZAO, AAAZFS, AutoOpen, FileSaveAs, and PayLoad. Either delete these macros or simply delete the document if possible. If the data contained is of importance, one can simply copy the contents and paste it in another file.

Another method is to open the file while holding the Shift key. Opening a document or template (or pressing SHIFT when you start Word) prevents any auto macros from running. If a macro virus is present, it will not be loaded. Once the document is loaded, simply select copy from edit, start a new document and select paste.

Microsoft has released a new version of its macro virus protection program that checks all word documents as you open them and tells you if they contain a macro. However, you may still use the Organizer to check for strange macros or if the macro command is unresponsive. Organizer opens a document in the background without running attached macros and allows you to view the macros. You may also use it watch for activity when opening or saving a document but checking a document before opening it is still recommended.( http://www.emergency.com/wordvrus.htm)

Below is a list of some current Macro Viruses:

Concept (Prank) Macro Virus

Nuclear Macro Virus

Colors Macro Virus

FormatC Macro Virus

And lastly: Recent attack via Word flaw

Description from (http://www.securityfocus.com/brief/213)

“A U.S. company is among the apparently small number of victims specifically targeted by a malicious group using a previously unknown vulnerability in Microsoft Word.

The attack--first brought to light by the handlers at the SANS Institute's Internet Storm Center (ISC)--consists of an e-mail message sent to a small number of individuals in the targeted company. Each message carries a Word attachment and, so far, only two subject lines have been seen: "Notice" and "RE Plan for final agreement.”

Thursday, October 29, 2009

Windows 7: Consumer

While waiting for the opportunity to upgrade to windows 7, I did a little research on the new (desirable?) feature of windows 7 as seen from a consumer’s point of view.

The first question I set out to answer was weather to download the 32 or 64 bit version of windows. So what exactly is the difference between a 32 and 64 bit OS? The term 32 bit and 64 bit architecture refers to the way your systems processor (CPU) uses or addresses memory. Everyone knows how important memory is to their system. 32 bit systems, which are what most people are using now, can only use between 3.4 GBs to 4.0 GBs of memory. 64 bit architecture can take advantage of much more memory than this. Depending on which Windows 7 64 bit version you choose, you will be able to take advantage of up to 192 GBs of System Memory. So what exactly does this translate into? Speed, speed, and more speed. The ability to do more and do it better. Increased audio and video encoding and increased power for CAD and engineering programs.

The new windows 7 also feature additional Security Measures and services. Data Execution Prevention(The feature that dims your screen and asks for permission), has been modified to require less user approval to run applications. Better Integration with fingerprint security software allows fingerprint detection to be used as passwords for more than just login as well as the registration of all 10 fingers (in case something unfortunate should occur). Bitlocker drive encryption also allows users to encrypt drives as well as files or folders and the new bitlocker to go enables user to encrypt flash drives or removable thumb drives to be decrypted by a password. Windows 7 also provides antiviral Software MSE (Microsoft Security Essentials) that provides real-time protection for the PC that guards against viruses, spyware, and other malicious software. This can be downloaded free of charge here: http://www.softpedia.com/get/Antivirus/Microsoft-Security-Essentials.shtml

Now, on to the new features in windows 7 that are geared towards making it a more user intuitive OS (Mac users smirk here). Firstly, a new desktop slideshow feature enables users to display different background picture according to the timer (Mac users please settle down).. Users may also customize and switch between themes, as well as download more themes from Microsoft's web site Also included are country specific backgrounds that feature famous place in those countries and will be available based on the different locale where the OS is installed.

Another feature, to help users better organize files and data is the Libraries. Libraries enable Arrangement Views and Search Filter Suggestions. Arrangement Views allow you to pivot your view of the library's contents based on metadata. Selecting the "By Month" view in the Pictures library will display photos in stacks, where each stack represents a month of photos based on the date they were taken. In the Music library, the "By Artist" view will display stacks of albums from the artists in your collection, and browsing into an artist stack will then display the relevant albums.

The new windows taskbar has also been revised and is now taller in anticipation of touch screen applications. The Windows 7 taskbar is now more application-oriented than window-oriented, and doesn't show window titles. Applications can now be pinned to the taskbar allowing the user instant access to the applications they commonly use. Right clicking these icons will produce the Jump List. Each application will have unique jump lists which will correspond to the features unique to the application whether it be recent files opened or common tasks. While up to 10 menu items may appear on a jump list by default, Windows 7 provides the ability to customize this.

Thumbnails previews in windows are now interactive. Thumbnail previews integrate Thumbnail Toolbars which can control the application from the thumbnail previews themselves. For example, if Windows Media Player is opened and the mouse is hovering on the application icon, the thumbnail preview will allow the user the ability to Play, Stop, and Play Next/Previous track without having to switch to the Windows Media Player window.

Show Desktop shortcut in the Quick Launch bar has now been replaced by the Aero Peek button, which, when clicked or hovered over with the mouse, displays the desktop and gadgets by turning all windows transparent. If the button is clicked, all applications are minimized, and when clicked again, they are restored.

Aero Shake and Aero Snap are two new feature in windows 7 designed to make the OS feel…well Snappier. Aero Shake allows users to clear up any clutter on their screen by shaking (dragging back and forth) a window of their choice with the mouse. All other windows will minimize, while the window the user shook stays active on the screen. When the window is shaken again, they are restored. Aero Snap allows Windows to be dragged to the top of the screen to maximize them and dragged away to restore them. Dragging a window to the left or right of the screen makes it take up half the screen allowing the user to tile two windows next to each other. Also resizing the window to the bottom of the screen or top will extend the window full but retain the width of the window

Finally, a list of new keyboard shortcuts that have been introduced to windows 7:

§ Win+Space operates as a keyboard shortcut for Aero Peek.

§ Win+Up and Win+Down are new shortcuts for Maximize and Restore/Minimize.

§ Win+Shift+Up vertically maximises the current window

§ Win+Left and Win+Right snap the current window to the left or right half of the current display; successive keypresses will move the window to other monitors in a multi-monitor configuration.

§ Win+Shift+Left and Win+Shift+Right move the current window to the left or right display.

§ Win+ + and Win+ − (minus sign) zoom the desktop in and out.

§ Win+Home operates as a keyboard shortcut for Aero Shake.

§ Win+P shows an "external display options" selector that gives the user the choice of showing the desktop on only the computer's screen, only the external display, with the same output on both (clone), or on both displays with independent desktops (extend).

Taskbar:

§ Shift + Click, or Middle click starts a new instance of the application, regardless of whether it's already running.

§ Ctrl + Shift + Click starts a new instance with Administrator privileges; by default, a User Account Control prompt will be displayed.

§ Shift + Right-click shows the classic Window menu (Restore / Minimize / Move / etc); right-clicking on the application's thumbnail image will also show this menu. If the icon being clicked on is a grouped icon, the classic menu with Restore All / Minimize All / Close All menu is shown.

§ Ctrl + Click on a grouped icon cycles between the windows (or tabs) in the group.

Included is a video featuring some the new features in windows 7:

Moore’s law

Moore’s law, was a concept introduced during the Embedded systems seminar. A prediction in 1965 by Gordon Moore sated that transistor density would doubled approximately every two years. This was a rather interesting concept since the exponential growth of transistor density had many technological applications in computer systems and more significantly, embedded system. However what I found to be even more intriguing was that it eventually became self-fulfilling. This meant the prediction was true because it existed (the industry tried to follow this trend and hence made it true).

While searching, I came across a few interesting “Myths” regarding Moore’s law. “Transistor density doubles every 18 months” This prediction apparently common was never laid down by Moore. “Moore came up with it(Moore’s law) while driving down high 101” He says he came up with it while preparing an article for Electronics magazine. Postulating that Moore’s law faces the threat of running aground since the world no longer requires more powerful computers. This was actually derived from a quote by Google CEO Eric Schimidt saying: relies on less-than-cutting edge servers because the industry is “simply too efficient”. This however is untrue since without Moore’s law, Google would have to triple the area of its server farms or run the search engine at a crawl.

Moore’s second law states that the price of semiconductor fabrication would also increase exponentially in the same time frame. This is due to the fact that advancing semiconductor technology requires materials such as photoresist and other polymers, derivatives of petroleum and hence subjected to it’s cost and supply. Moore however sates that he never made such a prediction.

Moore’s law is dead. According to Gordon Moore: “It (Moore’s law) can't continue forever. The nature of exponentials is that you push them out and eventually disaster happens”. The scale of transistors on semiconductors are approaching the atomic scale for which Moore states is the fundamental limit. When asked if Nanotechnology would replace electronics Moore believes they are different and while it does have an impact on semiconductors, it will not directly replace electronics. This however, is predicted only to occur 10 or 20 years in the future.

Written by Kai Ren

The wizards of OS (summary)

After the lectures of The Wizards of OS, we know more about the OS and correct our wrong idea about the OS. In this blog post, we will summarize the knowledge we gained from the lecture and some our own experiences.

The lecture corrected our understanding of the OS. Before the class, we thought that the OS is on the computers, like Windows. From the lecture, we found that this is totally wrong. OS exists anywhere, like PDA, PS2, PS3, PSP, Mobile Phones, DVD Player, etc. In fact, just as the professor said, the OS on the computer is just a small part of the OS fields.

The lecture also helped us have a better understand of the OS. Through the image, we easily got the idea of how the OS works. The OS build the simple interface for users to use the application software, like Fire Fox, Microsoft Office, etc. The OS will manage hardware resources, arbitrate conflicting requests and prevent errors and improper use. Through the OS, users don’t bother to know how the hardware works but just click on the icons and everything will be done.

Then, the history of OS helped us to understand the OS deeper and made us know more about how to develop a new technology. The history of OS showed us more about how the OS works. The disadvantages showed us why people wanted to develop more advanced OS and helped us to have a better understand of the current OS we are using. What is more useful for us is that the history shows us how to develop a new technology: following the needs of customers and make full use of the current resources. We especially like the idea of time sharing. We think that the man who came up with this idea must be very talented. Time sharing OS make better use of the CPU and make the computer behave faster.

Another important field of knowledge is about the Operating System Structure. Operating System (OS) executes System processes by transferring users’ programs between OS, Hardware and library. The OS structure is a container for a collection of structures for interacting with the operating system's file system, directory paths, processes, and I/O subsystem which is mainly affected by three factors: flexibility, robustness and maintainability. (The OS structure)

There are several ways to structure an OS: 1) Monolithic: According to Wikipedia, a monolithic kernel is a kernel architecture where the entire operating system is working in the kernel space and alone as supervisor mode. This is the traditional approach taken by most UNIX variants and Windows NT/XP. Most UNIX and BSD kernels are monolithic by default. In the monolithic kernel, some advantages hinge on these points: it is faster; it is smaller both in source and compiled forms and less code generally means fewer bugs which can translate to fewer security problems. The disadvantages of the monolithic kernel: Modifying and testing monolithic systems takes longer; when a bug surfaces within the core of the kernel the effects can be far reaching and patching monolithic systems can be more difficult. (Different Kernel Designs Overview, Oct 2005) 2) Microkernel: a microkernel is a computer kernel that provides the mechanisms needed to implement an operating system, such as low-level address space management, thread management, and inter-process communication. Some systems that use microkernel are QNX and the HURD. Some of its advantages: Maintenance is generally easier; Rapid development time and more persistence. Disadvantages in the microkernel exist however: Larger running memory footprint; there is a potential for performance loss and Process management can be very complicated. 3) Virtual Machine: A hypervisor, also called virtual machine monitor (VMM), is computer software/hardware platform virtualization software that allows multiple operating systems to run on a host computer concurrently. Hypervisors are classified in two types: Type 1 (or native, bare-metal) hypervisors are software systems that run directly on the host's hardware as a hardware control and guest operating system monitor. This is the classic implementation of virtual machine architectures; Type 2 (or hosted) hypervisors are software applications running within a conventional operating system environment.

Next part is about Major Subsystems in OS. There is so much to cover with so we will follow the lecture, just mention some brief and simple introduction. The Important subsystems are Process Management, Memory Management and File Management. Among these, we mainly discuss two subsystems: 1) Process Management: Process management is an integral part of any modern day operating system (OS). It implements the process abstraction. It does this by creating a model for the way the process uses CPU and any system resources. Much of the complexity of the operating system stems from the need for multiple processes to share the hardware at the same time. As a consequence of this goal, the process manager implements CPU sharing, process synchronization mechanisms, and a deadlock strategy. In addition, the process manager implements part of the operating system's protection and security. (Process Concept and Management) 2) Memory Management: Memory management is the act of managing computer memory. Memory is the electronic holding place for instructions and data that the computer's microprocessor can reach quickly. The memory is a resource that needs to be managed carefully. It is the job of the operating system to coordinate how these memories are used. The part of the operating system that manages the memory hierarchy is the memory manager. Systems for managing memory can be divided into two categories: the system of moving processes back and forth between main memory and disk during execution and the process. (Memory Management)

The Modern OS part reminded us of a book which is about how Bill Gates became so successful. In the lecture, the professor said that it is an interesting story about how the MSDOS dominate the market. The book said that the compatibility of Mac is very bad and Apple wanted to use this method to limit other companies’ development, like Microsoft. The bad compatibility of Mac forced the users to buy the OS and application software developed by Apple. However, the power of the Apple is limited and it can’t develop enough application software for the user and this limited the development of Apple. At the meaning time, as Microsoft can’t run his Microsoft Office on the Mac, it developed its own OS, MSDOS. MSDOS has a good compatibility and many companies developed software for it. Thus, the MSDOS became more and more popular and finally dominant the computer OS market. Through the book, we found that Bill Gates is more like a talented businessman than a talented programmer. From this, we found that in the Internet industry, the spirit of sharing is very important.

References:

Wikipedia, the free encyclopedia. Hypervisor.

from http://en.wikipedia.org/wiki/Hypervisor

The Standard ML Basis Library. The OS structure.

from http://www.standardml.org/Basis/os.html

Different Kernel Designs Overview. (Oct 2005)

from http://www.systhread.net/texts/200510kdiff.php

Operating Systems (CS/CPE 408): Process Concept and Management.

from http://www1bpt.bridgeport.edu/sed/projects/cs503/Spring_2001/kode/os/process.htm

Memory Management

from http://homepages.uel.ac.uk/u0219091/memory%20management.htm
Written by Tian BeiBei and ZHU LI

Reflection on “Baidu and Google -- Internet industry in China”

1) Introduction

Since most of us are quite familiar with Google and have heard of Baidu more or less, I believe that there is no need for long instructions for Google
and Baidu. In China, Baidu and Google are the two of the most famous and widely-used search engines.

As the graph from a survey in China shown, about two thirds of respondents prefer Baidu, while only one forth of respondents prefers Google. Even though Google is the most well-known search engine throughout the world, Baidu still plays a dominant role in China.


2) Search

When searching the keywords “Google vs. Baidu”, Google gets 12,500,00 0 results with 0.33 second, while Baidu gets 671,000 results with 0.054 second. When searching “谷歌百度比较”(Google vs. Baidu), Google gets 9,130,000 results with 0.49 second, while Baidu gets 548,000 results with 0.133 second. We can easily find out whether the keywords are English or Chinese, the number of the results Google gets is several times as many as that Baidu gets. The time Baidu takes shorter, but the time is too short to feel the difference.

(keywords: Google vs. Baidu)

Moreover, when we search English keywords, Baidu still presents more Chinese results than Google. In reality, when searching English keywords, Baidu cannot bear comparison with Google. In addition, from the graph, we can find out that there are some ads beside the searching results from Baidu, which makes the web page is not as neat as Google.

Another long suit of Google is that it can also show how often and when you click a link recently.

3) Why Baidu? (Google vs. Baidu: A User Experience Analysis, Jason Yu)

From previous comparison, it is not hard to figure out that Baidu is not superior to Google in efficiency, but why Baidu is so popular in China?

Just as I mentioned above, even when the keywords is Chinese, in most cases, Google presents more results than Baidu. However, Google does not perform very well. One example, when searching “次级房贷” (Subprime mortgage), we will find there are 7 results at the top 20 search results at google direct us to Web sites that use traditional Chinese characters which are hardly used in Chinese mainland so that it is challenging for the mainland Chinese to read traditional Chinese because most of them are not familiar with it. Another example, “看羹吃饭” (Kan-Geng-Chi-fan: A Chinese phrase), Baidu just gets 207 results, while Google gets 4,000,000 results. Google produced overwhelmingly more information than Baidu, but if we examine the details, Google does not produce an accurate search result within the first 10 pages while all the 207 search results from Baidu are accurate. Based on above figures, Baidu is the superior Chinese search engine.

Google has many excellent products, but some products have not performed well in China. For example, Google Maps in China is unable to provide the same features as that in the US due to the lack of mapping data in China. Actually, Google’s satellite map currently only covers the major Chinese cities.

Although music copyright is a controversial issue within China, the market reality is that millions of Chinese Internet users download free music online. Baidu understands it and its music search product — which presents a list links for free music downloads — is extremely popular. Google is unable to compete with Baidu in this regard due to its adherence to US copyright laws.

Another example is Baidu Post, an online forum allowing Internet user to create topics based on keywords and provide comments. When people search for keywords, they can also search these keywords in Baidu Post, where they may find more information or at least find out what others think of the selected keywords. Baidu also offers a blog platform (Hi Baidu) while Google has localized Blogger into Chinese which very few Chinese people use.

Local culture and consumer behavior are key factors in determining whether a product will is successful in an overseas market. So far, Google products have not been as appealing as Baidu to Chinese users. To sum up, Baidu definitely ranks above Google in China. Yet, Google, avid for the large market of China, is still putting much effort to earn a better place in Chinese Internet industry. Now, everything is not determined in this competing field but we can just enjoy the convenience due to the intense competition
References
Jason Yu. (May 2nd). 2008 Google vs. Baidu: A User Experience Analysis.
Retrieved October 28th, 2009, from

Monday, October 26, 2009

More on Operating System - Different Type of OS




Nowadays, there are many type of OS (Operating System) available in the market such as Desktop OS mostly for home user, Network OS mostly for organization/office network PCs/Servers, Disk OS/DOS which running behind the MS Windows platform and etc.

Below are the specifications of the different type OS:


1. Disk Operating System




  • It is a single-user, single-task operating system with basic kernel functions.
    [according to http://en.wikipedia.org/wiki/DOS]

  • It running behind MS Windows Platforms.


2. Desktop Operating System



  • It manages computer resources in a standalone PC

  • It also can be used as a network OS.

  • It also can be a client of a client/server network OS

  • Example for Desktop OS are:
    o Windows 3.x, 95, 98, XP Home, Vista Home Edition, etc

3. Network Operating System



  • It manages computer resources in a computer network

  • It is designed for multi-user server platform

  • Allows sharing of resources across a network

  • May come with a Workstation and a Server software to provide a total client/server solution

  • Example for Network OS are:
    o Windows NT, Server, etc


Sunday, October 25, 2009

Round-up on Wizards of OS and more on history

Frankly speaking, the seminars on operating system were awesome. Dr. Soo really knows how to make a seminar attractive and contented. After setting us free to broke down four operating systems, everyone begin to have their own ideal idea of what a perfect os should be like. I still like os x the best, because the graphics and design are fascinating. However, the rest of our group turned to windows 7, due to its fast speed and more user friendly construction. As for Ubuntu, everyone likes those special effects, but when it comes to real use, most of us feel it uneasy. At last, the Solaris have nothing outstanding for us to figure out what was amazing about it. The general ranking on first impression of using these four operating systems in my group is: windows7 > OS x > Ubuntu > Solaris.

Actually, the rank shouldn’t be like this, because according to many experts, windows are cheap, less functional and less reliable. In Paul Murphy’s point of view, if people compare windows with Linux, os x or Solaris from Cost, functionality and reliability, no one would choose windows anymore. He believes that the main reason to cause windows’ monopoly is because of people’s acceptance and compatibility. This is really an important issue for all users. It’s not easy at all to find a certain install package when I’m using Ubuntu.

According to Wikipedia, An operating system (OS) is an interface between hardware and user which is responsible for the management and coordination of activities and the sharing of the resources of the computer that acts as a host for computing applications run on the machine. According to Dr. Soo, it’s a program that acts as an intermediary between a computer user and the computer hardware. And the reason why we are using it is because of the following reasons.
~We need to hide low level details,
~We need a simple and clean interface to work.
~We need something to manage hardware resources
~We need something to arbitrate conflict request.
~We need to prevent errors and improper use.
~We need a secured environment to work.
So, a successful os should handle things above very well and own an amazing appearance. Then how did windows win in this competition.

Operating systems can be separated into os for mainframes and os for micro computer. The os for mainframes mainly includes:
~Burroughs MCPB5000, 1961 to Unisys Clearpath/MCP, present.
~IBM OS/360IBM System/360, 1966 to IBM z/OS, present.
~IBM CP-67IBM System/360, 1967 to IBM z/VM, present.
~UNIVAC EXEC 8UNIVAC 1108, 1967, to OS 2200 Unisys Clearpath Dorado, present.
The os for microcomputers have various kinds. In the early years MS-DOS is considered the best and most popular os. But after apple introduce an innovative Graphical User Interface (GUI) to the Mac OS. Every os turn to use GUI and become similar. Here is a great link to see all os since 1980. (Unfortunately it’s in Chinese!) http://coolshell.cn/?p=105. There is also a clear and precise compression between different os on:
http://en.wikipedia.org/wiki/Comparison_of_operating_systems











apple-lisa operating system










Windows 1.0













windows 3.0
After reading many articles, I believe that the most important reason for windows to success is that they have a clear aim and goal. They update very frequently and use latest technology. Having a good sense of marketing is also very important. You can read more on:
http://tech.sina.com.cn/it/2005-04-07/1119574771.shtml
http://en.wikipedia.org/wiki/Comparison_of_Windows_versions
http://toastytech.com/guis/index.html
http://www.guidebookgallery.org/screenshots

Saturday, October 24, 2009

More about Operating Systems

In modern days computing, everyone is talking about efficiency, flexibility and cost.
Out friendly Penguin here, linux, provided a very good platform for alot of developers to explore and implement their own linux based OS.
In fact, there are hundreds of linux based OS (or simply called Linux Distributions) available for free download all over the net. To name a few, we have Ubuntu, Mac os, Opensuze, Gentoo, Arch Linux, etc
Here are the SCREEN SHOTS of (almost all) available distributions of linux. If you intend to switch to linux based os, please do visit this page. http://www.seoexpertconsultants.com/index.php?linux.
Whats so interesting about the linux community is that it gives infinite flexibility.( Eg. if you are a programmer, and you happen to NOT like some of the features in ubuntu, you can, simply edit its registry, input your own process and get it to work, legally. You do not have to worry about infringement rights, encryption and such that using windows would...)
You might also notice that most OS have very simple interface. The advantage is that it offers superb simplicity and accessibility. Whatever you need to use, is simply, there. You don’t have to search high and low to find any problems you are trying to find and access your compliers, notepad and anything things you need to do computing. And if thats not sufficient, you can always look at the opensource community forum for free applications, softwares to help you with whatever that need to be done.
Have a look at LINUX FORUM to look at the thousands of open source projects that you can download for free! This includes games to office to photo/song editors and alot more. Of course, there are alot more forums out there offering even more free opensource softwares. Do try to seek them out!

And also since the programs can be edited as-per-you-happy, there’s no limit to how things can change to suit your demand or the futuristic needs. Just use the programs codes as basis to what you intend to do, copy the codes and make amendments to create a better one! If you like some parts of a program and another part of another, just do a combination! Merge both, omit the useless parts and create a more powerful, dedicated program for your needs!
For the consumer users, most of us will happy to know linux based os are free! This means you ave the power to change os whenever you are happy. The applications are for free too. Another thing to note is that you wouldn’t see annoying updates here and there.

For the consumer users, most of us will happy to know linux based os are free! This means you ave the power to change os whenever you are happy. The applications are for free too. Another thing to note is that you wouldn’t see annoying updates here and there.
Before we go into the technical specifications of Windows 7, why don’t we start off our excitement about Windows 7 by watching a video about Windows 7 and its new features?


Technical details about Windows 7
Minimum hardware requirements for Windows 7
Architecture
32-bit
64-bit
Processor
1 GHz 32-bit processor
1 GHz 64-bit processor
Memory (RAM)
1 GB of RAM
2 GB of RAM
Graphics Card
DirectX 9 graphics processor with WDDM driver model 1.0 (For Aero)
HDD free space
16 GB of available disk space
20 GB of available disk space
Optical drive
DVD drive (only to install from DVD/CD Media)
  • BitLocker (a full disk encryption feature, ie. used to protect data) requires a USB flash drive to use BitLocker To Go.
  • Windows XP Mode (read below for more information) requires an additional 1 GB of RAM, an additional 15 GB of available hard disk space, and a processor capable of hardware virtualization with Intel VT or AMD-V enabled.


Windows XP Mode is a feature which allow users to run programs that are suited for Windows XP. It is like a virtual machine, enabling users to run the virtual machine via the Windows 7 interface with a few clicks. It’s like having 2 operating systems running on a desktop/laptop. However, it is only available for the Professional, Ultimate and Enterprise editions. With Windows XP Mode, this means that we can test our programs and applications on the virtual machine without worrying about affecting our main operating system, Windows 7. Isn’t that great?

Commercial value of Windows
Desktop market share for September 2009
Total Windows – 93.10%
Windows XP – 71.79%
Windows Vista – 18.80%
Windows 7 – 1.18%
Windows 2000 – 0.93%
Windows 98 – 0.13%
Windows Me – 0.12%
Windows NT – 0.11%
Windows CE – 0.04%
Non-Windows – 6.90%

It seems like Windows XP is still the most popular Windows Operating system currently. With the launch of Windows 7, will we see a change in the statistics? What do you think? Do share your views by posting a comment on this blog entry.
Windows 7 vs Windows Vista


Special thanks to Wikipedia for the information and Youtube for the videos.

!! News flash !!


The Google Chrome OS, coming out in 2nd half 2010! http://googleblog.blogspot.com/2009/07/introducing-google-chrome-os.html

Posted by Byron and Li Hua

Wednesday, October 21, 2009

Seminar Round-up: Wizards of OS I and II

Yet another seminar round up for Wizards of OS I and II! This interesting seminar was hosted by Mr. Soo Yuen Jien and it was split into two sessions. During the first part, Mr. Soo loaned 4 laptops with different operating system for us to try on them. He also got 3 different OS enthusiasts to share their experience and knowledge with OS like Windows 7, Mac and Ubuntu with us; while Mr. Soo himself introduced the Solaris OS. I believe all of us had enjoyed the first introductory part and discovered different fun and unique functions of the various OS. I’m a Microsoft Windows user and have only tried using Linux before attending this seminar. Therefore it was an eye opener to me and allows me to have a better understanding of different OS. After the first hands-on and sharing session, we had another part of the seminar to understand how does an OS work and the underlying structure of it.

Below is a simple graphical interpretation of OS:













As you can see, OS serves as a “middleman” in between a mixture of PC applications and devices. With this interface, full utilization of the computer can be achieved as a whole. We need this “middleman” because the underlying structure of computer hardware is best to be hidden from the computer users.

Take a look at this picture! OS is sitting on top of the hardware to work as an interface between the hardware and the user applications.

OK! So basically, what OS really does is ..

1. Abstraction

  • Hide low level details
  • Provide simple interface
2. Resource Allocation
  • Manage hardware resources
  • Arbitrate conflicting requests

3. Control

  • Prevent errors and improper use
  • Security and protection


Generally, OS can be classified as follows:

  • Multi-user : Allows two or more users to run programs concurrently
  • Multiprocessing : Supports running a program on more than one CPU
  • Multitasking : Allows more than one program to run concurrently
  • Multithreading : Allows different parts of a single program to run concurrently
  • Real time : Responds to input instantly. The general-purpose OS, such as DOS and UNIX, are not real-time.


Besides, Mr. Soo gave an introduction of different OS in the current market and how did they come about from their very first version of production. Below is the timeline from different making of OS editions.

· Microsoft Windows family


Windows logo

Timeline structure

· Unix and Unix-like operating systems

  • Linux: Red Hat, Debian, Ubuntu
  • BSD: FreeBSD, OpenBSD, NetBSD
  • Sun Solaris


Unix Logo



Family tree (I know.. it’s a lot!)



Unix-like OS logos


· Mac OS Family


Latest Mac OS



Timeline structure


To sum up, this seminar is beneficial to those who did not know things like “why is my hard disk noisy when I try to load a game” and of course to those who are enthusiastic with computer’s underlying organization and structure. Also, this is a prologue to the module CS2106: Introduction to Operating Systems, which by now have definitely motivated me and I am looking forward to taking this module in the upcoming year.

The next evolution of OS

All of us had the idea of installing a operating software in our computer. However, time has changed. For instance , we are no longer required to pay telecom operator if we want to make a call, technology has provided us with alternative that are free and reliable. This has been especially true in the operating software market. Microsoft and Mac have been charging consumers to use their operating software for ages. We are forced to purchase them because they are the standard for the industry. Some may argue that we got Ubuntu and OpenSolaris. On the other hand, most of us would agree that it may be free but it was not user friendly and deem as for the 'geeks' only.

Fortunately, Our best friend "Google" came out with something that would free us from this captivated market. Google is going to bring Operating software to the next level when it introduce its Chrome OS, an extended version of Google Chrome.

Advantages of using Chrome OS
  • Open source
  • Lightweight
  • Speed,
  • Simplicity
  • Security


"Google is designing the OS to be fast and lightweight, to start up and get you onto the web in a few seconds. The user interface is minimal to stay out of your way, and most of the user experience takes place on the web. And as we did for the Google Chrome browser, we are going back to the basics and completely redesigning the underlying security architecture of the OS so that users don't have to deal with viruses, malware and security updates. It should just work.

Google Chrome OS will run on both x86 as well as ARM chips and we are working with multiple OEMs to bring a number of netbooks to market next year. The software architecture is simple — Google Chrome running within a new windowing system on top of a Linux kernel. For application developers, the web is the platform. All web-based applications will automatically work and new applications can be written using your favorite web technologies. And of course, these apps will run not only on Google Chrome OS, but on any standards-based browser on Windows, Mac and Linux thereby giving developers the largest user base of any platform."

Posted by Sundar Pichai, VP Product Management and Linus Upson, Engineering Director




The Charm of Mac


As mentioned in our last lecture by Prof Soo, Mac users can be VERY passionate about their Macs(notice i don't associate it with words like laptop/PC? :p )
As one of the only Mac users in class, perhaps it is only fair that i try to introduce a little tempting detail about Mac that makes us love it so much.

The Dashboard
Some of u may have heard before Mac users talk about "Widgets" and "Dashboard" but you always had no idea what it meant? Basically all Macs come default with this interesting thing call Dashboard. At a one button click, u can get another "layer" of screen over your existing one. This "layer" is fully customizable according to your preference.
Let me illustrate this below:

The picture above is me surfing at our favorite web page :D


This is how it looks after i bring in the dashboard. Notice that it dims the background and brings the Dashboard to the foreground? Any widget could appear here and placed according to your liking. For example, u will notice i have wikipedia and dictionary in my dashboard, which is helpful to students like us! i have a translator on standby in case of unexpected needs.
Notice the little blue pad? that's my version of post-it notes :D u can put as many as u need and they will always be available with one button touch.

The sky is the limit to it's application! i could have travel info, yellow pages, espn web tv..etc.
To date there are millions of official widgets(by now u may have guess it, it's the little different programs on Dashboard) on Apple website, with many more by private developers out there.

The motto of Mac isn't to give you what u want.

They give you what you want before u realize that's what you want.
Inventing ahead of generation is a Mac's strongest point.
The physical specs may seem low, but it's efficiency is off the charts :D

Wizard of OS part 2

Most people know what OS stands for, but do they really know what it does and how it works? From this interesting seminar about Operating System (OS), we learnt quite a lot about OS. Before this seminar, we only know that Mac, Windows etc are examples of OS, but we never really know how it functions until we’ve been through this seminar about OS.

OS actually operates in kernel mode, provides abstraction, manage hardware allocation etc. This is something that some of us might not know until we have been through this seminar.

The seminar starts off with some introductions to OS before moving on to brief history of OS on the first computer, ENIAC. From there we get a clearer picture of how program interacts with hardware, advantage, disadvantages etc. After that comes the common feature of mainframe, batch processing of IBM 360 etc.

One interesting topic about this seminar is perhaps how OS does process management. First Come First Serve is not a very good solution when many processes are queuing up, so Round Robin would be a better solution is this case where each process are only assigned a certain amount of time to process regardless of whether they finish their job and they will have to queue up again for their turn.

Another interesting part of the seminar is the king’s story to help us better understands how OS uses physical and logical memory. This gives us a better understanding of how OS performs a task.

This seminar is definitely beneficial to all its audience. After attending this seminar, we have a better knowledge of how OS works and of course, look forward to taking CS2106 in the near future.

Done By: Tan Tai Hock, Zhang Haoqiang

Followers