Thursday, June 5, 2008

Computer Virus

A computer virus is a computer program that can copy itself and infect a computer without permission or knowledge of the user. The term "virus" is also commonly used, albeit erroneously, to refer to many different types of malware (a portmanteau of the words malicious and software) and adware (a portmanteau of the words advertisement and software) programs. The original virus may modify the copies, or the copies may modify themselves, as occurs in a metamorphic virus. A virus can only spread from one computer to another when its host is taken to the uninfected computer, for instance by a user sending it over a network or the Internet, or by carrying it on a removable medium such as a floppy disk, CD, or USB drive. Meanwhile viruses can spread to other computers by infecting files on a network file system or a file system that is accessed by another computer. Viruses are sometimes confused with computer worms and Trojan horses. A worm can spread itself to other computers without needing to be transferred as part of a host, and a Trojan horse is a file that appears harmless. Worms and Trojans may cause harm to either a computer system's hosted data, functional performance, or networking throughput, when executed. In general, a worm does not actually harm either the system's hardware or software, while at least in theory, a Trojan's payload may be capable of almost any type of harm if executed. Some can't be seen when the program is not running, but as soon as the infected code is run, the Trojan horse kicks in. That is why it is so hard for people to find viruses and other malware themselves and why they have to use spyware programs and registry processors.
Most personal computers are now connected to the Internet and to local area networks, facilitating the spread of malicious code. Today's viruses may also take advantage of network services such as the World Wide Web, e-mail, Instant Messaging and file sharing systems to spread, blurring the line between viruses and worms. Furthermore, some sources use an alternative terminology in which a virus is any form of self-replicating malware.
Some malware is programmed to damage the computer by damaging programs, deleting files, or reformatting the hard disk. Other malware programs are not designed to do any damage, but simply replicate themselves and perhaps make their presence known by presenting text, video, or audio messages. Even these less sinister malware programs can create problems for the computer user. They typically take up computer memory used by legitimate programs. As a result, they often cause erratic behavior and can result in system crashes. In addition, much malware is bug-ridden, and these bugs may lead to system crashes and data loss. Many CiD programs are programs that have been downloaded by the user and pop up every so often. This results in slowing down of the computer, but it is also very difficult to find and stop the problem.

  • Worms : A computer worm is a self-replicating computer program. It uses a network to send copies of itself to other nodes (computer terminals on the network) and it may do so without any user intervention. Unlike a virus, it does not need to attach itself to an existing program. Worms almost always cause harm to the network, if only by consuming bandwidth, whereas viruses almost always corrupt or modify files on a targeted computer.

Many worms have been created which are only designed to spread, and don't attempt to alter the systems they pass through. However, as the Morris worm and Mydoom showed, the network traffic and other unintended effects can often cause major disruption. A "payload" is code designed to do more than spread the worm - it might delete files on a host system (e.g., the ExploreZip worm), encrypt files in a cryptoviral extortion attack, or send documents via e-mail. A very common payload for worms is to install a backdoor in the infected computer to allow the creation of a "zombie" under control of the worm author - Sobig and Mydoom are examples which created zombies. Networks of such machines are often referred to as botnets and are very commonly used by spam senders for sending junk email or to cloak their website's address.[1] Spammers are therefore thought to be a source of funding for the creation of such worms,[2][3] and worm writers have been caught selling lists of IP addresses of infected machines.[4] Others try to blackmail companies with threatened DoS attacks.[5]
Backdoors can be exploited by other malware, including worms. Examples include Doomjuice, which spreads using the backdoor opened by Mydoom, and at least one instance of malware taking advantage of the rootkit and backdoor installed by the Sony/BMG DRM software utilized by millions of music CDs prior to late 2005.

  • Trojan Horse : In the context of computing and software, a Trojan horse, or simply trojan, is a piece of software which appears to perform a certain action but in fact performs another such as transmitting a computer virus. Contrary to popular belief, this action, usually encoded in a hidden payload, may or may not be actually malicious, but Trojan horses are notorious today for their use in the installation of backdoor programs. Simply put, a Trojan horse is not a computer virus. Unlike such malware, it does not propagate by self-replication but relies heavily on the exploitation of an end-user (see Social engineering). It is instead a categorical attribute which can encompass many different forms of codes. Therefore, a computer worm or virus may be a Trojan horse. The term is derived from the classical story of the Trojan Horse.
    In the field of computer architecture, 'Trojan Horse' can also refer to security loopholes that allow kernel code to access anything for which it is not authorized.

Charles Babbage


Charles Babbage, FRS (26 December 1791 London, England18 October 1871 Marylebone, London, England)[2] was an English mathematician, philosopher, inventor and mechanical engineer who originated the concept of a programmable computer. Parts of his uncompleted mechanisms are on display in the London Science Museum. In 1991 a perfectly functioning difference engine was constructed from Babbage's original plans. Built to tolerances achievable in the 19th century, the success of the finished engine indicated that Babbage's machine would have worked. Nine years later, the Science Museum completed the printer Babbage had designed for the difference engine, an astonishingly complex device for the 19th century. Babbage is credited with inventing the first mechanical computer that eventually led to more complex designs.
His father's money allowed Charles to receive instruction from several schools and tutors during the course of his elementary education. Around the age of eight he was sent to a country school in Alphington near Exeter to recover from a life-threatening fever. His parents ordered that his "brain was not to be taxed too much" and Babbage felt that "this great idleness may have led to some of my childish reasonings." For a short time he attended King Edward VI Grammar School in Totnes, South Devon, but his health forced him back to private tutors for a time.[6] He then joined a 30-student Holmwood academy, in Baker Street, Enfield, Middlesex under Reverend Stephen Freeman. The academy had a well-stocked library that prompted Babbage's love of mathematics. He studied with two more private tutors after leaving the academy. Of the first, a clergyman near Cambridge, Babbage said, "I fear I did not derive from it all the advantages that I might have done." The second was an Oxford tutor from whom Babbage learned enough of the Classics to be accepted to Cambridge.
Babbage arrived at Trinity College, Cambridge in October 1810. He had read extensively in Leibniz, Joseph Louis Lagrange, Thomas Simpson, and Lacroix and was seriously disappointed in the mathematical instruction available at Cambridge. In response, he, John Herschel, George Peacock, and several other friends formed the Analytical Society in 1812. Babbage, Herschel and Peacock were also close friends with future judge and patron of science Edward Ryan. Ultimately, Babbage and Ryan married sisters.[7]
In 1812 Babbage transferred to Peterhouse, Cambridge. He was the top mathematician at Peterhouse, but failed to graduate with honors. He instead received an honorary degree without examination in 1814.



Babbage sought a method by which mathematical tables could be calculated mechanically, removing the high rate of human error. Three different factors seem to have influenced him: a dislike of untidiness; his experience working on logarithmic tables; and existing work on calculating machines carried out by Wilhelm Schickard, Blaise Pascal, and Gottfried Leibniz. He first discussed the principles of a calculating engine in a letter to Sir Humphry Davy in 1822.

Part of Babbage's difference engine, assembled after his death by Babbage's son, using parts found in his laboratory.
Babbage's engines were among the first mechanical computers, although they were not actually completed, largely because of funding problems and personality issues. He directed the building of some steam-powered machines that achieved some success, suggesting that calculations could be mechanized. Although Babbage's machines were mechanical and unwieldy, their basic architecture was very similar to a modern computer. The data and program memory were separated, operation was instruction based, the control unit could make conditional jumps and the machine had a separate I/O unit.



Analytical engine
Main article: Analytical engine
Soon after the attempt at making the difference engine crumbled, Babbage started designing a different, more complex machine called the Analytical Engine. The engine is not a single physical machine but a succession of designs that he tinkered with until his death in 1871. The main difference between the two engines is that the Analytical Engine could be programmed using punch cards, an idea unheard of in his time. He realized that programs could be put on similar cards so the person had only to create the program initially, and then put the cards in the machine and let it run. The analytical engine was also proposed to use loops of Jacquard's punched cards to control a mechanical calculator, which could formulate results based on the results of preceding computations. This machine was also intended to employ several features subsequently used in modern computers, including sequential control, branching, and looping, and would have been the first mechanical device to be Turing-complete.
Ada Lovelace, an impressive mathematician and one of the few people who fully understood Babbage's ideas, created a program for the Analytical Engine. Had the Analytical Engine ever actually been built, her program would have been able to calculate a sequence of Bernoulli numbers. Based on this work, Lovelace is now widely credited with being the first computer programmer.[20] In 1979, a contemporary programming language was named Ada in her honour. Shortly afterward, in 1981, a satirical article by Tony Karp in the magazine Datamation described the Babbage programming language as the "language of the future".[21]

[edit] Modern adaptations
While the abacus and mechanical calculator have been replaced by electronic calculators using microchips, the recent advances in MEMS and nanotechnology have led to recent high-tech experiments in mechanical computation. The benefits suggested include operation in high radiation or high temperature environments.
These modern versions of mechanical computation were highlighted in the magazine The Economist in its special "end of the millennium" black cover issue in an article entitled Babbage's Last Laugh . The article highlighted work done at University of California Berkeley by Ezekiel Kruglick. In this Doctoral Dissertationthe researcher reports mechanical logic cells and architectures sufficient to implement the Babbage Analytical engine (see above) or any general logic circuit. Carry-shift digital adders and various logic elements are detailed as well as modern analysis on required performance for microscopic mechanical logic.

Wednesday, June 4, 2008

Dan Bricklin

Dan Bricklin is known for co-creating the VisiClac spreadsheets program. He was born in Philadelphia, Pennsylvania on July 16th, 1951. He Attended the Akiba Hebrew Academy during high school years. He went to college at the Massachusetts Institute of Technology, Where he recieved his Bachelor of Science degree in electrical engineering and computer science. He later got his Master of Business Administration from Harvard University in 1979. After getting out of Harvard University, he co-founded Software Arts Inc. and began to sell VisiCalc software, which was the first spreadsheet software of its time for personal computers. In 1985, he lift Software Arts Inc. to found Software Gardens. He then co-founded the Slate Corporation in 1990. He soon returned to Software Gardens in 1994 when the Slate Corporation closed down. In 1995, he founded the Trellix corporation, which was later bought by Interland, which is now Web.com.