Computer virus

A computer virus is a computer program that can copy itself and infect a computer. The term “virus” is also commonly but erroneously used to refer to other types of malware, adware, and spyware programs that do not have the reproductive ability. A true virus can only spread from one computer to another (in some form of executable code) when its host is taken to the target computer; for instance because a user sent it over a network or the Internet, or carried it on a removable medium such as a floppy disk, CD, DVD, or USB drive. Viruses can increase their chances of spreading to other computers by infecting files on a network file system or a file system that is accessed by another computer.[1][2]

The term “computer virus” is sometimes used as a catch-all phrase to include all types of malware. Malware includes computer viruses, worms, trojans, most rootkits, spyware, dishonest adware, crimeware, and other malicious and unwanted software, including true viruses. Viruses are sometimes confused with computer worms and Trojan horses, which are technically different. A worm can exploit security vulnerabilities to spread itself to other computers without needing to be transferred as part of a host, and a Trojan horse is a program that appears harmless but has a hidden agenda. Worms and Trojans, like viruses, may cause harm to either a computer system’s hosted data, functional performance, or networking throughput, when they are executed. Some viruses and other malware have symptoms noticeable to the computer user, but many are surreptitious or go unnoticed.

Contents

[hide]

  • 1 History
  • 2 Infection strategies
    • 2.1 Nonresident viruses
    • 2.2 Resident viruses
  • 3 Vectors and hosts
  • 4 Methods to avoid detection
    • 4.1 Avoiding bait files and other undesirable hosts
    • 4.2 Stealth
      • 4.2.1 Self-modification
      • 4.2.2 Encryption with a variable key
      • 4.2.3 Polymorphic code
      • 4.2.4 Metamorphic code
  • 5 Vulnerability and countermeasures
    • 5.1 The vulnerability of operating systems to viruses
    • 5.2 The role of software development
    • 5.3 Anti-virus software and other preventive measures
    • 5.4 Recovery methods
      • 5.4.1 Virus removal
      • 5.4.2 Operating system reinstallation
  • 6 See also
  • 7 References
  • 8 Further reading
  • 9 External links

//

[edit] History

The Creeper virus was first detected on ARPANET, the forerunner of the Internet in the early 1970s.[3] Creeper was an experimental self-replicating program written by Bob Thomas at BBN in 1971.[4] Creeper used the ARPANET to infect DEC PDP-10 computers running the TENEX operating system. Creeper gained access via the ARPANET and copied itself to the remote system where the message, “I’m the creeper, catch me if you can!” was displayed. The Reaper program was created to delete Creeper.[5]

A program called “Rother J” was the first computer virus to appear “in the wild” — that is, outside the single computer or lab where it was created.[citation needed] Written in 1981 by Richard Skrenta, it attached itself to the Apple DOS 3.3 operating system and spread via floppy disk.[6] This virus, created as a practical joke when Skrenta was still in high school, was injected in a game on a floppy disk. On its 50th use the Elk Cloner virus would be activated, infecting the computer and displaying a short poem beginning “Elk Cloner: The program with a personality.”

The first PC virus in the wild was a boot sector virus dubbed (c)Brain[7], created in 1986 by the Farooq Alvi Brothers, operating out of Lahore, Pakistan, reportedly to deter piracy of the software they had written[citation needed]. However, analysts have claimed that the Ashar virus, a variant of Brain, possibly predated it based on code within the virus.[original research?]

Before computer networks became widespread, most viruses spread on removable media, particularly floppy disks. In the early days of the personal computer, many users regularly exchanged information and programs on floppies. Some viruses spread by infecting programs stored on these disks, while others installed themselves into the disk boot sector, ensuring that they would be run when the user booted the computer from the disk, usually inadvertently. PCs of the era would attempt to boot first from a floppy if one had been left in the drive. Until floppy disks fell out of use, this was the most successful infection strategy and boot sector viruses were the most common in the wild for many years.[8]

Traditional computer viruses emerged in the 1980s, driven by the spread of personal computers and the resultant increase in BBS, modem use, and software sharing. Bulletin board-driven software sharing contributed directly to the spread of Trojan horse programs, and viruses were written to infect popularly traded software. Shareware and bootleg software were equally common vectors for viruses on BBS’s.[citation needed] Within the “pirate scene” of hobbyists trading illicit copies of retail software, traders in a hurry to obtain the latest applications were easy targets for viruses.[original research?]

Macro viruses have become common since the mid-1990s. Most of these viruses are written in the scripting languages for Microsoft programs such as Word and Excel and spread throughout Microsoft Office by infecting documents and spreadsheets. Since Word and Excel were also available for Mac OS, most could also spread to Macintosh computers. Although most of these viruses did not have the ability to send infected e-mail, those viruses which did took advantage of the Microsoft Outlook COM interface.[citation needed]

Some old versions of Microsoft Word allow macros to replicate themselves with additional blank lines. If two macro viruses simultaneously infect a document, the combination of the two, if also self-replicating, can appear as a “mating” of the two and would likely be detected as a virus unique from the “parents.”[9]

A virus may also send a web address link as an instant message to all the contacts on an infected machine. If the recipient, thinking the link is from a friend (a trusted source) follows the link to the website, the virus hosted at the site may be able to infect this new computer and continue propagating.

Viruses that spread using cross-site scripting were first reported in 2002[10], and were academically demonstrated in 2005.[11] There have been multiple instances of the cross-site scripting viruses in the wild, exploiting websites such as MySpace and Yahoo.

[edit] Infection strategies

In order to replicate itself, a virus must be permitted to execute code and write to memory. For this reason, many viruses attach themselves to executable files that may be part of legitimate programs. If a user attempts to launch an infected program, the virus’ code may be executed simultaneously. Viruses can be divided into two types based on their behavior when they are executed. Nonresident viruses immediately search for other hosts that can be infected, infect those targets, and finally transfer control to the application program they infected. Resident viruses do not search for hosts when they are started. Instead, a resident virus loads itself into memory on execution and transfers control to the host program. The virus stays active in the background and infects new hosts when those files are accessed by other programs or the operating system itself.

[edit] Nonresident viruses

Nonresident viruses can be thought of as consisting of a finder module and a replication module. The finder module is responsible for finding new files to infect. For each new executable file the finder module encounters, it calls the replication module to infect that file.

[edit] Resident viruses

Resident viruses contain a replication module that is similar to the one that is employed by nonresident viruses. This module, however, is not called by a finder module. The virus loads the replication module into memory when it is executed instead and ensures that this module is executed each time the operating system is called to perform a certain operation. The replication module can be called, for example, each time the operating system executes a file. In this case the virus infects every suitable program that is executed on the computer.

Resident viruses are sometimes subdivided into a category of fast infectors and a category of slow infectors. Fast infectors are designed to infect as many files as possible. A fast infector, for instance, can infect every potential host file that is accessed. This poses a special problem when using anti-virus software, since a virus scanner will access every potential host file on a computer when it performs a system-wide scan. If the virus scanner fails to notice that such a virus is present in memory the virus can “piggy-back” on the virus scanner and in this way infect all files that are scanned. Fast infectors rely on their fast infection rate to spread. The disadvantage of this method is that infecting many files may make detection more likely, because the virus may slow down a computer or perform many suspicious actions that can be noticed by anti-virus software. Slow infectors, on the other hand, are designed to infect hosts infrequently. Some slow infectors, for instance, only infect files when they are copied. Slow infectors are designed to avoid detection by limiting their actions: they are less likely to slow down a computer noticeably and will, at most, infrequently trigger anti-virus software that detects suspicious behavior by programs. The slow infector approach, however, does not seem very successful.

[edit] Vectors and hosts

Viruses have targeted various types of transmission media or hosts. This list is not exhaustive:

  • Binary executable files (such as COM files and EXE files in MS-DOS, Portable Executable files in Microsoft Windows, and ELF files in Linux)
  • Volume Boot Records of floppy disks and hard disk partitions
  • The master boot record (MBR) of a hard disk
  • General-purpose script files (such as batch files in MS-DOS and Microsoft Windows, VBScript files, and shell script files on Unix-like platforms).
  • Application-specific script files (such as Telix-scripts)
  • System specific autorun script files (such as Autorun.inf file needed by Windows to automatically run software stored on USB Memory Storage Devices).
  • Documents that can contain macros (such as Microsoft Word documents, Microsoft Excel spreadsheets, AmiPro documents, and Microsoft Access database files)
  • Cross-site scripting vulnerabilities in web applications (see XSS Worm)
  • Arbitrary computer files. An exploitable buffer overflow, format string, race condition or other exploitable bug in a program which reads the file could be used to trigger the execution of code hidden within it. Most bugs of this type can be made more difficult to exploit in computer architectures with protection features such as an execute disable bit and/or address space layout randomization.

PDFs, like HTML, may link to malicious code.[citation needed]PDFs can also be infected with malicious code.

In operating systems that use file extensions to determine program associations (such as Microsoft Windows), the extensions may be hidden from the user by default. This makes it possible to create a file that is of a different type than it appears to the user. For example, an executable may be created named “picture.png.exe”, in which the user sees only “picture.png” and therefore assumes that this file is an image and most likely is safe.

An additional method is to generate the virus code from parts of existing operating system files by using the CRC16/CRC32 data. The initial code can be quite small (tens of bytes) and unpack a fairly large virus. This is analogous to a biological “prion” in the way it works but is vulnerable to signature based detection.

This attack has not yet been seen “in the wild”.

[edit] Methods to avoid detection

In order to avoid detection by users, some viruses employ different kinds of deception. Some old viruses, especially on the MS-DOS platform, make sure that the “last modified” date of a host file stays the same when the file is infected by the virus. This approach does not fool anti-virus software, however, especially those which maintain and date Cyclic redundancy checks on file changes.

Some viruses can infect files without increasing their sizes or damaging the files. They accomplish this by overwriting unused areas of executable files. These are called cavity viruses. For example, the CIH virus, or Chernobyl Virus, infects Portable Executable files. Because those files have many empty gaps, the virus, which was 1 KB in length, did not add to the size of the file.

Some viruses try to avoid detection by killing the tasks associated with antivirus software before it can detect them.

As computers and operating systems grow larger and more complex, old hiding techniques need to be updated or replaced. Defending a computer against viruses may demand that a file system migrate towards detailed and explicit permission for every kind of file access.

[edit] Avoiding bait files and other undesirable hosts

A virus needs to infect hosts in order to spread further. In some cases, it might be a bad idea to infect a host program. For example, many anti-virus programs perform an integrity check of their own code. Infecting such programs will therefore increase the likelihood that the virus is detected. For this reason, some viruses are programmed not to infect programs that are known to be part of anti-virus software. Another type of host that viruses sometimes avoid is bait files. Bait files (or goat files) are files that are specially created by anti-virus software, or by anti-virus professionals themselves, to be infected by a virus. These files can be created for various reasons, all of which are related to the detection of the virus:

  • Anti-virus professionals can use bait files to take a sample of a virus (i.e. a copy of a program file that is infected by the virus). It is more practical to store and exchange a small, infected bait file, than to exchange a large application program that has been infected by the virus.
  • Anti-virus professionals can use bait files to study the behavior of a virus and evaluate detection methods. This is especially useful when the virus is polymorphic. In this case, the virus can be made to infect a large number of bait files. The infected files can be used to test whether a virus scanner detects all versions of the virus.
  • Some anti-virus software employs bait files that are accessed regularly. When these files are modified, the anti-virus software warns the user that a virus is probably active on the system.

Since bait files are used to detect the virus, or to make detection possible, a virus can benefit from not infecting them. Viruses typically do this by avoiding suspicious programs, such as small program files or programs that contain certain patterns of ‘garbage instructions’.

A related strategy to make baiting difficult is sparse infection. Sometimes, sparse infectors do not infect

http://en.wikipedia.org/wiki/Computer_virus

Computer Components

Introduction

Hardware

As we learned in the Overview portion of the study guide, a computer system has two basic parts: hardware and software. The equipment associated with a computer system is the hardware. Computer hardware is responsible for performing four basic functions: input, processing, output, and storage. Let’s go back to the basic definition of a computer. A computer is an electronic device that is programmed to accept data (input), process it into useful information (output), and store it for future use (storage). The processing function is under the control of a set of instructions (software); we will explore this later.

The four primary components of a computer system are:

Input
Input devices send data and instructions to the central processing unit.
Output Central processing unit executes computer instructions. Memory holds data and programs temporarily.
Processing Output devices make processed data available to the user.
Secondary Storage Secondary storage devices store data and programs permanently.

In order to function properly, a computer system must have all four types of hardware: input, processing, output, and storage.

.

In this example, the mouse and keyboard are the input devices and the monitor and speakers are output devices. The processor is contained inside the tower unit and the storage devices are the hard drive, CD-ROM drive and the diskette drive. Let’s explore each of the devices in detail.

Input devices accept data in a form that the computer can utilize. Also, the input devices send the data or instructions to the processing unit to be processed into useful information. There are many examples of input devices, but the most commonly used input devices are shown below:

.

.

The input device feeds data, raw unprocessed facts, to the processing unit. The role of the processing unit or central processing unit is to use a stored program to manipulate the input data into the information required. In looking at the computer system below, the Central Processing Unit, CPU, is not exactly visible. The CPU is found inside the tall, vertical unit, called a tower, located just to the right of the monitor.

.

The CPU is the brain of the computer. The CPU consists of electronic circuits that interpret and execute instructions; it communicates with the input, output, and storage devices. The CPU, with the help of memory, executes instructions in the repetition of machine cycles. A machine cycle consists of four steps:

    1. The control unit fetches an instruction and data associated with it from memory.
    2. The control unit decodes the instruction.
    3. The arithmetic/logic unit executes the instruction.
    4. The arithmetic/logic unit stores the result in memory.

The first two instructions are called instruction time, I-time. Steps 3 and 4 are called execution time, E-time. The speed of computer is measured in megahertz, MHz.

A MHz is a million machine cycles per second. A personal computer listed at 500 MHz has a processor capable of handling 500 million machine cycles per second. Another measure of speed is gigahertz (GHZ), a billion machine cycles per second. A third measure of speed is a megaflop, which stands for one million floating-point operations per second. It measures the ability of the computer to perform complex mathematical operations.

Memory, or primary storage, works with the CPU to hold instructions and data in order to be processed. Memory keeps the instructions and data for whatever programs you happen to be using at the moment. Memory is the first place data and instructions are placed after being input; processed information is placed in memory to be returned to an output device. It is very important to know that memory can hold data only temporarily because it requires a continuous flow of electrical current. If current is interrupted, data is lost. Memory is in the form of a semiconductor or silicon chip and is contained inside the computer.

.

There are two types of memory: ROM and RAM. ROM is read only memory. It contains programs and data that are permanently recorded when the computer is manufactured. It is read and used by the processor, but cannot be altered by the user. RAM is random access memory. The user can access data in RAM memory randomly. RAM can be erased or written over at will by the computer program or the computer user. The amount of RAM has increased dramatically in recent years.

Memory is measured in bytes. A byte is usually made up of 8 bits and represents one character—a letter, digit, or symbol. The number of bytes that can be held is a measure of the memory and storage capacity. Bytes are usually measured in groups of kilobytes, megabytes, gigabytes, and terabytes. The following chart defines each term.

Kilobyte KB Roughly 1,000 bytes
Megabyte MB Roughly 1,000,000 bytes
Gigabyte GB Roughly 1,000,000,000 bytes
Terabyte TB Roughly 1,000,000,000 bytes

Memory is usually measured in Megabytes; a typical personal computer will have 64MB or more. Storage is usually measured in Gigabytes.

Since we have said that memory is in the form of chips and must maintain a constant flow of electricity, there must be a more permanent form of storage that does not depend on a constant flow of electricity. That form of storage is called secondary or auxiliary storage. The benefits of secondary storage are large space capacity, reliability, convenience and economy.

Magnetic disk storage is a very popular type of secondary storage—the floppy disk drive is an external disk drive, while a hard disk drive is an internal disk drive. The floppy disk drive is usually a 3 ½” drive and uses a diskette made of flexible mylar and coated with iron oxide, a substance that can be magnetized. A diskette records data as magnetized spots on the tracks of its surface. A floppy disk can hold 1.44 MBs, or a ‘Zip’ drive can hold 100 MBs.

A hard disk, an internal disk, is a metal platter coated with magnetic oxide that can be magnetized to represent data. Hard disks come in a variety of sizes and can be assembled into a disk pack. Hard disks for personal computers are 3 ½” disks in sealed modules. A hard disk is capable of holding a great deal more than floppy disks. Hard disks for personal computers are measured in gigabytes. (Remember, a gigabyte is roughly a thousand megabytes or a thousand floppy disks.)

While the size or data capacity of a hard drive is very important, the speed of accessing that data is equally as important. Files on hard drives can be accessed significantly faster and more conveniently than floppy drives.

.

Hard Drive

The ever-demanding need for storage has required even better storage capacity than that of magnetic disks. Optical disk technology meets that need. Included in the list of this type of technology is the optical disk, the CD-ROM or DVD-ROM. The CD-ROM, compact disk read-only memory can hold up to 660 MBs per disk or the equivalent of more than 400 standard 3 ½” diskettes. The new storage technology that outpaces all others is called DVD-ROM, digital versatile disk. The DVD has a 4.7 GB capacity, which is about seven times that of the CD-ROM.

In order to protect the data on your hard drive, you should have a backup system. A backup system is way of storing data in more than one location. Magnetic tape is usually used for this purpose. Magnetic tape is an inexpensive type of storage; it looks like the tape used in audiocassettes.

Finally, the last component of a computer system is the output device. An output device displays the processed information to the user. The two most popular forms of output devices are the printer and the monitor. The monitor produces output that is temporary—the output is lost when it is rewritten or erased or when power is lost. Monitor output is called softcopy. The printer displays output in a permanent manner; it is called hardcopy. Other types of output devices include voice output and music output devices.

Software

As important as hardware devices may be, they are useless without the instructions that control them. These instructions used to control hardware and accomplish tasks are called software. Software falls into two broad categories— applications and systems software.

Applications software allows you to perform a particular task or solve a specific problem. A word processor is the most widely used example of applications software; it can be used to create a letter or memo or anything else you need to type. Other examples include games, spreadsheets, tax preparation programs, typing tutor, etc. Applications software can be purchased in stores and is called packaged or commercial software. In other words, it is prewritten. However, there may be situations that require a specific type of software that is not available. It would then be necessary to design and write a program; this software is called custom software. Most often, personal computers utilize packaged software.

When packaged software is purchased, it will come with written instructions for installation and use. These instructions are documentation. Packaged software can be purchased, or in some cases, it is available for no cost. Freeware is software considered to be in the public domain, and it may be used or altered without fee or restriction. Another form of somewhat free software is shareware. The author of shareware hopes you will make a voluntary contribution for using the product.

. Task-oriented software is sometimes called productivity software, because it allows you to perform tasks that make you more productive. The major categories of productivity software are word processing, spreadsheet, database management, graphics, and communications. Most often these categories of software are bundled together and sold as a single package. This is called an office suite. A suite is designed to work together. This is very important because this allows you to share files. Another advantage in using suites is that the software looks similar and reduces your learning curve. Microsoft Office is the most popular office suite for the personal computer today. Two other important office suite products are Corel’s WordPerfect Office Suite and Sun’s Star Office Suite.

The most important applications software categories included in office suites are described in the table below:

Software Category Function
Word Processor Provides the tools for entering and revising text, adding graphical elements, formatting and printing documents.
Spreadsheets Provides the tools for working with numbers and allows you to create and edit electronic spreadsheets in managing and analyzing information.
Database Management Provides the tools for management of a collection of interrelated facts. Data can be stored, updated, manipulated, retrieved, and reported in a variety of ways.
Presentation Graphics Provides the tools for creating graphics that represent data in a visual, easily understood format.
Communication Software Provides the tools for connecting one computer with another to enable sending and receiving information and sharing files and resources.
Internet Browser Provides access to the Internet through a service provider by using a graphical interface.

As important as applications software may be, it is not able to directly communicate with hardware devices. Another type of software is required operating systems software. Operating Systems software is the set of programs that lies between applications software and the hardware devices.

Think of the cross section of an onion. The inner core of the onion represents the hardware devices, and the applications software represents the outside layer. The middle layer is the operating systems software. The instructions must be passed from the outer layer through the middle layer before the reaching the inner layer.

.

The onion example

All computers, regardless of size, require the operating systems software. As soon as your personal computer is turned on, the operating systems software is loaded into RAM in order to use your computer devices and other software. A few short years ago, personal computers used an operating system call MS-DOS, Microsoft Disk Operating System. This was a command-driven program in which you needed to know command names and syntax. The need for a more user-friendly system brought about Microsoft Windows operating systems software. Icons or pictures, requiring no knowledge of spelling or syntax, drive Windows operating systems software. Windows is a GUI, graphical user interface. A GUI uses graphic symbols, icons, in its interface. Further, Windows allows you to multitask, which means that you may use more than one program at the same time. The newest version of Windows is Windows 2000.

.

Some notable features of the Windows 2000 are

        • Internet/intranet browsing capabilities
        • Support for state-of-the-art hardware
        • Support for huge disk drives
        • Wizards

In summary, the components of a computer include hardware and software that work together to perform the task necessary to transform raw data into useful information.

Let’s review this module by completing the End of Concept Exercises.

http://www.tekxam.com/StudyGuide/concepts/General-Concepts/Computer_Components.html

Computer ethics

Computer Ethics is a branch of practical philosophy which deals with how computing professionals should make decisions regarding professional and social conduct [1]. Since the 1990s the field has started being integrated into professional development programs in academic settings. The conceptual foundations of computer ethics are investigated by information ethics, a branch of philosophical ethics established by Luciano Floridi. Computer ethics is a very important topic in computer applications.

Contents

[hide]

  • 1 Identifying issues
  • 2 Some questions in computer ethics
  • 3 Ethical standards
  • 4 References
  • 5 See also
  • 6 External links

//

[edit] Identifying issues

In solving problems relating to ethical issues, Michael Davis proposed a unique problem-solving method. In Davis’s model, the ethical problem is stated, facts are checked, and a list of options is generated by considering relevant factors relating to the problem. The actual action taken is influenced by specific ethical standards.

[edit] Some questions in computer ethics

This article’s tone or style may not be appropriate for Wikipedia. Specific concerns may be found on the talk page. See Wikipedia’s guide to writing better articles for suggestions. (April 2009)

There are a number of questions that are frequently discussed under the rubric of computer ethics. One set of issues deal with some of the new ethical dilemmas that have emerged, or taken on new form, with the rise of the internet. For example, there is a wide range of behaviors that fall under the heading of “hacking”, many of which have been variously defended and opposed by ethicists.

There are now many ways to gain information about others that were not available, or easily available, before the rise of computers. Thus ethical issues about information storage and retrieval are now in the forefront. How should we protect private data in large databases?

Questions about copyright infringement of software are also widely discussed, especially in light of file sharing programs such as Napster. The ethical questions that arise from software piracy are: Is it immoral or wrong to copy software, music, or movies? If so, why?

The use of Internet as a tool for abuse; spreading child porn, harassment of others, and other challenges as a result of kids use of this media for both consumption and producing. What sort of moral questions may arise, and why is such questions of importance to computer professionals?

A second set of questions, pertaining to the Internet, that are becoming more widely discussed are questions relating to the values that some may wish to promote via the Internet. Some have claimed that the internet is a “democratic technology”, or an e-democracy. But is it really? Does the Internet foster democracy? Should it? Does the digital divide raise ethical issues that society is morally obligated to ameliorate?

[edit] Ethical standards

One of the most definitive sets of ethical standards is the Association for Computing Machinery Code of Ethics. The code is a four-point standard governing ethical behavior among computing professionals. It covers the core set of computer ethics from professional responsibility to the consequences of technology in society.[2]

Another computer ethics body is the British Computer Society[3], which has published a code of conduct and code of practice for computer professionals in the UK.

The Uniform Computer Information Transactions Act (UCITA)does not ethical behavior from the standpoint of legality, specifically during the contracting process of computing. It defines how valid computing contracts are formed and how issues, such as breach of contract, are defined and settled. However, legality does not completely encompass computer ethics. It is just one facet of the constantly expanding field of computer ethics.[4]

[edit] References

  • Association for Computing Machinery, Inc. Association for Computing Machinery: Code of Ethics.
  • Bynum, Terrell Ward. “The Foundation of Computer Ethics,” Computers and Society, June 2000,
  • Cummings, Donavan, Haag, McCubbrey, Pinsonneault, Management Information Systems: For the Information Age, McGraw-Hill Ryerson, 2004
  • Deborah G. Johnson (2001) Computer Ethics. Prentice Hall.
  • Per Arne Godejord (2008) Getting Involved: Perspectives on the Use of True Projects as Tools for Developing Ethical Thinking in Computer Science Students, International Journal of Technology and Human Interaction, Vol. 4, Issue 2
  • Luciano Floridi (1999). “Information Ethics: On the Theoretical Foundations of Computer Ethics”, Ethics and Information Technology 1.1, 37-56.
  • Martin, C. Dianne and Weltz, Elaine Yale, “From Awareness to Action: Integrating Ethics and Social Responsibility into the Computer Science Curriculum,” Computers and Society, June 1999.
  • Herman T. Tavani (2004). Ethics & Technology: Ethical Issues in an Age of Information and Communication Technology. New Jersey: John Wiley and Sons, Inc..
  1. ^ A Very Shory History of Computer Ethics – The Research Center on Computing & Society – Computer Ethics on the Internet
  2. ^ Code of Ethics — Association for Computing Machinery
  3. ^ Home : BCS
  4. ^ Uniform Computer Information

[edit] See also

  • Cyberethics
  • Luciano Floridi. “Computer Ethics: Mapping the Foundationalist Debate”, Ethics and Information Technology 2002 (4.1), 1-9.
  • Donald Gotterbarn
  • James H. Moor. What is Computer Ethics?
  • Ten Commandments of Computer Ethics
  • social informatics

[edit] External links

  • ACM Code of Conduct
  • BCS Codes of Conduct and Good Practice
  • IEG, the Information Ethics research Group at Oxford University
  • “Computer Ethics: Basic Concepts and Historical Overview” article by Terrell Bynum in the Stanford Encyclopedia of Philosophy
  • “Computing and Moral Responsibility” article by Kari Gwen Coleman in the Stanford Encyclopedia of Philosophy
  • The Research Center on Computing & Society
  • The International Journal of Cyber Ethics in Education (IJCEE) http://www.igi-global.com/ijcee

http://en.wikipedia.org/wiki/Computer_ethics

Computer software

“Software” redirects here. For other uses, see Software (disambiguation).
This article may require cleanup to meet Wikipedia’s quality standards. Please improve this article if you can. (July 2009)

Computer software, or just software is a general term used to describe the role that computer programs, procedures and documentation play in a computer system.[1]

The term includes:

  • Application software, such as word processors which perform productive tasks for users.
  • Firmware, which is software programmed resident to electrically programmable memory devices on board mainboards or other types of integrated hardware carriers.
  • Middleware, which controls and co-ordinates distributed systems.
  • System software such as operating systems, which interface with hardware to provide the necessary services for application software.
  • Software testing is a domain dependent of development and programming. Software testing consists of various methods to test and declare a software product fit before it can be launched for use by either an individual or a group.
  • Testware, which is an umbrella term or container term for all utilities and application software that serve in combination for testing a software package but not necessarily may optionally contribute to operational purposes. As such, testware is not a standing configuration but merely a working environment for application software or subsets thereof.

Software includes things such as websites, programs or video games, that are coded by programming languages like C or C++.

“Software” is sometimes used in a broader context to mean anything which is not hardware but which is used with hardware, such as film, tapes and records.[2]

Contents

[hide]

//

[edit] Overview

Computer software is often regarded as anything but hardware, meaning that the “hard” are the parts that are tangible while the “soft” part is the intangible objects inside the computer. Software encompasses an extremely wide array of products and technologies developed using different techniques like programming languages, scripting languages, microcode, or an FPGA configuration. The types of software include web pages developed by technologies like HTML, PHP, Perl, JSP, ASP.NET, XML, and desktop applications like OpenOffice, Microsoft Word developed by technologies like C, C++, Java, C#, or Smalltalk. Software usually runs on an underlying software operating systems such as the Linux or Microsoft Windows. Software also includes video games and the logic systems of modern consumer devices such as automobiles, televisions, and toasters.

Computer software is so called to distinguish it from computer hardware, which encompasses the physical interconnections and devices required to store and execute (or run) the software. At the lowest level, software consists of a machine language specific to an individual processor. A machine language consists of groups of binary values signifying processor instructions that change the state of the computer from its preceding state. Software is an ordered sequence of instructions for changing the state of the computer hardware in a particular sequence. It is usually written in high-level programming languages that are easier and more efficient for humans to use (closer to natural language) than machine language. High-level languages are compiled or interpreted into machine language object code. Software may also be written in an assembly language, essentially, a mnemonic representation of a machine language using a natural language alphabet. Assembly language must be assembled into object code via an assembler.

The term “software” was first used in this sense by John W. Tukey in 1958.[3] In computer science and software engineering, computer software is all computer programs. The theory that is the basis for most modern software was first proposed by Alan Turing in his 1935 essay Computable numbers with an application to the Entscheidungsproblem.[4]

[edit] Software Characteristics

  • Software is developed and engineered.
  • Software doesn’t “wear-out”.
  • Most software continues to be custom built.

[edit] Types of software

A layer structure showing where Operating System is located on generally used software systems on desktops

Practical computer systems divide software systems into three major classes[citation needed]: system software, programming software and application software, although the distinction is arbitrary, and often blurred.

[edit] System software

System software helps run the computer hardware and computer system. It includes a combination of the following:

The purpose of systems software is to unburden the applications programmer from the often complex details of the particular computer being used, including such accessories as communications devices, printers, device readers, displays and keyboards, and also to partition the computer’s resources such as memory and processor time in a safe and stable manner. Examples are- Windows XP, Linux, and Mac OS X.

[edit] Programming software

Programming software usually provides tools to assist a programmer in writing computer programs, and software using different programming languages in a more convenient way. The tools include:

An Integrated development environment (IDE) is a single application that attempts to manage all these functions.

[edit] Application software

Application software allows end users to accomplish one or more specific (not directly computer development related) tasks. Typical applications include:

Application software exists for and has impacted a wide variety of topics.

[edit] Software topics

[edit] Architecture

See also: Software architecture

Users often see things differently than programmers. People who use modern general purpose computers (as opposed to embedded systems, analog computers and supercomputers) usually see three layers of software performing a variety of tasks: platform, application, and user software.

  • Platform software: Platform includes the firmware, device drivers, an operating system, and typically a graphical user interface which, in total, allow a user to interact with the computer and its peripherals (associated equipment). Platform software often comes bundled with the computer. On a PC you will usually have the ability to change the platform software.
  • Application software: Application software or Applications are what most people think of when they think of software. Typical examples include office suites and video games. Application software is often purchased separately from computer hardware. Sometimes applications are bundled with the computer, but that does not change the fact that they run as independent applications. Applications are usually independent programs from the operating system, though they are often tailored for specific platforms. Most users think of compilers, databases, and other “system software” as applications.
  • User-written software: End-user development tailors systems to meet users’ specific needs. User software include spreadsheet templates, word processor [Platform software: Platform includes the firmware, device drivers, an operating system, and typically a graphical user interface which, in total, allow a user to interact with the computer and its peripherals (associated equipment). Platform software often comes bundled with the computer. On a PC you will usually have the ability to change the platform software. Even email filters are a kind of user software. Users create this software themselves and often overlook how important it is. Depending on how competently the user-written software has been integrated into default application packages, many users may not be aware of the distinction between the original packages, and what has been added by co-workers.

[edit] Documentation

Main article: Software documentation

Most software has software documentation so that the end user can understand the program, what it does, and how to use it. Without a clear documentation, software can be hard to use—especially if it is a very specialized and relatively complex software like the Photoshop or AutoCAD.

Developer documentation may also exist, either with the code as comments and/or as separate files, detailing how the programs works and can be modified.

[edit] Library

Main article: Software library

An executable is almost always not sufficiently complete for direct execution. Software libraries include collections of functions and functionality that may be embedded in other applications. Operating systems include many standard Software libraries, and applications are often distributed with their own libraries.File:Software.jpg

[edit] Standard

Main article: Software standard

Since software can be designed using many different programming languages and in many different operating systems and operating environments, software standard is needed so that different software can understand and exchange information between each other. For instance, an email sent from a Microsoft Outlook should be readable from Yahoo! Mail and vice versa.

[edit] Execution

Main article: Execution (computing)

Computer software has to be “loaded” into the computer’s storage (such as a [hard drive], memory, or RAM). Once the software has loaded, the computer is able to execute the software. This involves passing instructions from the application software, through the system software, to the hardware which ultimately receives the instruction as machine code. Each instruction causes the computer to carry out an operation – moving data, carrying out a computation, or altering the control flow of instructions.

Data movement is typically from one place in memory to another. Sometimes it involves moving data between memory and registers which enable high-speed data access in the CPU. Moving data, especially large amounts of it, can be costly. So, this is sometimes avoided by using “pointers” to data instead. Computations include simple operations such as incrementing the value of a variable data element. More complex computations may involve many operations and data elements together.

[edit] Quality and reliability

Main articles: Software quality, Software testing, and Software reliability

Software quality is very important, especially for commercial and system software like Microsoft Office, Microsoft Windows and Linux. If software is faulty (buggy), it can delete a person’s work, crash the computer and do other unexpected things. Faults and errors are called “bugs.” Many bugs are discovered and eliminated (debugged) through software testing. However, software testing rarely – if ever – eliminates every bug; some programmers say that “every program has at least one more bug” (Lubarsky’s Law). All major software companies, such as Microsoft, Novell and Sun Microsystems, have their own software testing departments with the specific goal of just testing. Software can be tested through unit testing, regression testing and other methods, which are done manually, or most commonly, automatically, since the amount of code to be tested can be quite large. For instance, NASA has extremely rigorous software testing procedures for many operating systems and communication functions. Many NASA based operations interact and identify each other through command programs called software. This enables many people who work at NASA to check and evaluate functional systems overall. Programs containing command software enable hardware engineering and system operations to function much easier together.

[edit] License

Main article: Software license

The software’s license gives the user the right to use the software in the licensed environment. Some software comes with the license when purchased off the shelf, or an OEM license when bundled with hardware. Other software comes with a free software license, granting the recipient the rights to modify and redistribute the software. Software can also be in the form of freeware or shareware.

[edit] Patents

Main articles: Software patent and Software patent debate

Software can be patented; however, software patents can be controversial in the software industry with many people holding different views about it. The controversy over software patents is that a specific algorithm or technique that the software has may not be duplicated by others and is considered an intellectual property and copyright infringement depending on the severity. Some people believe that software patent hinder software development, while others argue that software patents provide an important incentive to spur software innovation.

[edit] Design and implementation

Main articles: Software development, Computer programming, and Software engineering

Design and implementation of software varies depending on the complexity of the software. For instance, design and creation of Microsoft Word software will take much longer time than designing and developing Microsoft Notepad because of the difference in functionalities in each one.

Software is usually designed and created (coded/written/programmed) in integrated development environments (IDE) like Eclipse, Emacs and Microsoft Visual Studio that can simplify the process and compile the program. As noted in different section, software is usually created on top of existing software and the application programming interface (API) that the underlying software provides like GTK+, JavaBeans or Swing. Libraries (APIs) are categorized for different purposes. For instance, JavaBeans library is used for designing enterprise applications, Windows Forms library is used for designing graphical user interface (GUI) applications like Microsoft Word, and Windows Communication Foundation is used for designing web services. Underlying computer programming concepts like quicksort, hashtable, array, and binary tree can be useful to creating software. When a program is designed, it relies on the API. For instance, if a user is designing a Microsoft Windows desktop application, he/she might use the .NET Windows Forms library to design the desktop application and call its APIs like Form1.Close() and Form1.Show()[5] to close or open the application and write the additional operations him/herself that it need to have. Without these APIs, the programmer needs to write these APIs him/herself. Companies like Sun Microsystems, Novell, and Microsoft provide their own APIs so that many applications are written using their software libraries that usually have numerous APIs in them.

Software has special economic characteristics that make its design, creation, and distribution different from most other economic goods.[6][7] A person who creates software is called a programmer, software engineer, software developer, or code monkey, terms that all essentially have a same meaning.

[edit] Industry and organizations

Main article: Software industry

Software has its own niche industry that is called the software industry made up of different entities and peoples that produce software, and as a result there are many software companies and programmers in the world. Because software is increasingly used in many different areas like in finance, searching, mathematics, space exploration, gaming and mining and such, software companies and people usually specialize in certain areas. For instance, Electronic Arts primarily creates video games.

Also selling software can be quite a profitable industry. For instance, Bill Gates, the founder of Microsoft is the second richest man in the world in 2008 largely by selling the Microsoft Windows and Microsoft Office software programs. The same goes for Larry Ellison, largely through his Oracle database software.

There are also many non-profit software organizations like the Free Software Foundation, GNU Project, Mozilla Foundation. Also there are many software standard organizations like the W3C, IETF and others that try to come up with a software standard so that many software can work and interoperate with each other like through standards such as XML, HTML, HTTP or FTP.

Some of the well known software companies include Microsoft, Oracle, Novell, SAP, Symantec, Adobe Systems, and Corel.

[edit] References

  1. ^Wordreference.com: WordNet 2.0“. Princeton University, Princeton, NJ. http://www.wordreference.com/definition/software. Retrieved 2007-08-19.
  2. ^ software..(n.d.). Dictionary.com Unabridged (v 1.1). Retrieved 2007-04-13, from Dictionary.com website: http://dictionary.reference.com/browse/software
  3. ^John Tukey, 85, Statistician; Coined the Word ‘Software’“. New York Times. 2000-07-28. http://query.nytimes.com/gst/fullpage.html?res=9500E4DA173DF93BA15754C0A9669C8B63.
  4. ^ Hally, Mike (2005:79). Electronic brains/Stories from the dawn of the computer age. British Broadcasting Corporation and Granta Books, London. ISBN 1-86207-663-4.
  5. ^ MSDN Library
  6. ^ v. Engelhardt, Sebastian (2008): “The Economic Properties of Software”, Jena Economic Research Papers, Volume 2 (2008), Number 2008-045. (in Adobe pdf format)
  7. ^ “Why Open Source Is The Optimum Economic Paradigm for Software” by Dan Kaminsky 1999

http://en.wikipedia.org/wiki/Computer_software

Personal computer hardware

From Wikipedia, the free encyclopedia

Jump to: navigation, search

This article is in a list format that may be better presented using prose. You can help by converting this article to prose, if appropriate. Editing help is available. (September 2009)
Crystal Clear app kedit.svg
This article may need to be rewritten entirely to comply with Wikipedia’s quality standards. You can help. The discussion page may contain suggestions. (September 2009)

A personal computer is made up of multiple physical components of computer hardware, upon which can be installed an operating system and a multitude of software to perform the operator’s desired functions.

Contents

[hide]

//

[edit] Typical PC hardware

Hardware of a Personal Computer.
1. Monitor
2. Motherboard
3. CPU
4. RAM Memory
5. Expansion card
6. Power supply
7. Optical disc drive
8. Hard Disk
9. Keyboard
10. Mouse

Inside a custom computer.

Though a PC comes in many different forms, a typical personal computer consists of a case or chassis in a tower shape (desktop) and the following parts:

[edit] Motherboard

The motherboard is the main component inside the case. It is a large rectangular board with integrated circuitry that connects the rest of the parts of the computer including the CPU, the RAM, the disk drives (CD, DVD, hard disk, or any others) as well as any peripherals connected via the ports or the expansion slots.

Components directly attached to the motherboard include:

  • The central processing unit (CPU) performs most of the calculations which enable a computer to function, and is sometimes referred to as the “brain” of the computer. It is usually cooled by a heat sink and fan.
  • The chip set mediates communication between the CPU and the other components of the system, including main memory.
  • RAM Stores all running processes (applications) and the current running OS. RAM Stands for Random Access Memory
  • The BIOS includes boot firmware and power management. The Basic Input Output System tasks are handled by operating system drivers.
  • Internal Buses connect the CPU to various internal components and to expansion cards for graphics and sound.
    • Current
      • The north bridge memory controller, for RAM and PCI Express
        • PCI Express, for expansion cards such as graphics and physics processors, and high-end network interfaces
      • PCI, for other expansion cards
      • SATA, for disk drives
    • Obsolete
      • ATA (superseded by SATA)
      • AGP (superseded by PCI Express)
      • VLB VESA Local Bus (superseded by AGP)
      • ISA (expansion card slot format obsolete in PCs, but still used in industrial computers)
  • External Bus Controllers support ports for external peripherals. These ports may be controlled directly by the south bridge I/O controller or based on expansion cards attached to the motherboard through the PCI bus.

[edit] Power supply

Main article: Power supply unit (computer)

Includes power cords, switch, and cooling fan. Supplies power at appropriate voltages to the motherboard and internal disk drives. It also converts alternating current to direct current and provides different voltages to different parts of the computer.

[edit] Video display controller

Main article: Graphics card

Produces the output for the computer monitor. This will either be built into the motherboard or attached in its own separate slot (PCI, PCI-E, PCI-E 2.0, or AGP), in the form of a graphics card.

Most video cards support the most basic requirements, and video card manufacturing companies are doing a good job of keeping up with the requirements the games need. However the games are still evolving faster than the video because of manufacturing companies.

[edit] Removable media devices

Main article: Computer storage
  • CD (compact disc) – the most common type of removable media, suitable for music and data.
    • CD-ROM Drive – a device used for reading data from a CD.
    • CD Writer – a device used for both reading and writing data to and from a CD.
  • DVD (digital versatile disc) – a popular type of removable media that is the same dimensions as a CD but stores up to 12 times as much information. It is the most common way of transferring digital video, and is popular for data storage.
    • DVD-ROM Drive – a device used for reading data from a DVD.
    • DVD Writer – a device used for both reading and writing data to and from a DVD.
    • DVD-RAM Drive – a device used for rapid writing and reading of data from a special type of DVD.
  • Blu-ray Disc – a high-density optical disc format for data and high-definition video. Can store 70 times as much information as a CD.
    • BD-ROM Drive – a device used for reading data from a Blu-ray disc.
    • BD Writer – a device used for both reading and writing data to and from a Blu-ray disc.
  • HD DVD – a discontinued competitor to the Blu-ray format.
  • Floppy disk – an outdated storage device consisting of a thin disk of a flexible magnetic storage medium. Used today mainly for loading RAID drivers.
  • Iomega Zip drive – an outdated medium-capacity removable disk storage system, first introduced by Iomega in 1994.
  • USB flash drive – a flash memory data storage device integrated with a USB interface, typically small, lightweight, removable, and rewritable. Capacities vary, from hundreds of megabytes (in the same ballpark as CDs) to tens of gigabytes (surpassing, at great expense, Blu-ray discs).
  • Tape drive – a device that reads and writes data on a magnetic tape, used for long term storage and backups.

[edit] Internal storage

Hardware that keeps data inside the computer for later use and remains persistent even when the computer has no power.

  • Hard disk – for medium-term storage of data.
  • Solid-state drive – a device similar to hard disk, but containing no moving parts and stores data in a digital format.
  • RAID array controller – a device to manage several internal or external hard disks and optionally some peripherals in order to achieve performance or reliability improvement in what is called a RAID array.

[edit] Sound card

Main article: Sound card

Enables the computer to output sound to audio devices, as well as accept input from a microphone. Most modern computers have sound cards built-in to the motherboard, though it is common for a user to install a separate sound card as an upgrade. Most sound cards, either built-in or added, have surround sound capabilities.

[edit] Other peripherals

Main article: Peripheral

In addition, hardware devices can include external components of a computer system. The following are either standard or very common.

Wheel Mouse

Includes various input and output devices, usually external to the computer system.

[edit] Input

Main article: Input
  • Text input devices
    • Keyboard – a device to input text and characters by depressing buttons (referred to as keys), similar to a typewriter. The most common English-language key layout is the QWERTY layout.
  • Pointing devices
    • Mouse – a pointing device that detects two dimensional motion relative to its supporting surface.
    • Optical Mouse – a newer technology that uses lasers, or more commonly LEDs to track the surface under the mouse to determine motion of the mouse, to be translated into mouse movements on the screen.
    • Trackball – a pointing device consisting of an exposed protruding ball housed in a socket that detects rotation about two axes.
  • Gaming devices
    • Joystick – a general control device that consists of a handheld stick that pivots around one end, to detect angles in two or three dimensions.
    • Gamepad – a general handheld game controller that relies on the digits (especially thumbs) to provide input.
    • Game controller – a specific type of controller specialized for certain gaming purposes.
  • Image, Video input devices
    • Image scanner – a device that provides input by analyzing images, printed text, handwriting, or an object.
    • Webcam – a low resolution video camera used to provide visual input that can be easily transferred over the internet.
  • Audio input devices
    • Microphone – an acoustic sensor that provides input by converting sound into electrical signals.
[hide]

v • d • e

Basic computer components

Input devices
Output devices
Removable data storage
Computer case
Data ports

http://en.wikipedia.org/wiki/Personal_computer_hardware

What are the Computer Parts

Case

The case is the metal “box” that all the parts of your computer fit inside. It provides protection and the ability to customize the case. Larger cases leave room for expansion such as extra hard drives or R/W drives.

//
//

There are three main types of cases:

Pizza-box Case

This is a thin case used for mainly for network stations. They are usually seen in an office or at school.

Desktop Case

Usually sits horizontally on the desk. It’s not as compact as the pizza-box case, but has more room for cards. This case was the usual case for a home computer but they are rarely seen today.

Tower Case

This is the most common case today. Tower cases come in three sizes – mini, midi or maxi. Mini is the smallest and maxi is the largest.

Tower cases have lots of room available for you extra drives and other accessories.

The most important thing about the case is that it has enough space for the components inside to run smoothly. The case should be able to fit all the components. Other than that, you can choose a case by design preference.

Power Supply

Supplies power to all the parts in the computer. Usually depends on the voltage of the country. The power supply must be able to supply enough power to the components. Generally, higher end parts take up more power.

The power supply must be able to provide enough power to the parts. Generally, the higher end the parts, the more power they use. Make sure it has the same voltage as all the power outlets in your house.

Cooling System

The cooling system keeps the computer parts cool when running. The most common way is to use case fans. Cheap fans are noisier and might not last as long. One of the more recent ways of cooling has been with liquid-cooling. Using a mixture of water and antifreeze, liquid cooling is much more efficient than fans, and is a lot quieter. However, if any of this liquid was to leak onto the motherboard or other components, they will definitely break. Liquid-cooling is generally not recommended to anyone building a computer, and best left up to computer manufacturers.

High end video cards and processors create more heat, so the cooler the inside of the computer is, the better. If a component like the CPU overheats, it will most likely be destroyed.

The cooling system should run smoothly and quietly. It must be strong enough to keep the parts at an average temperature (70-90 Celsius).

Motherboard

The motherboard is the main circuit board of the computer. It holds the CPU, RAM modules and most of the circuitry. All adapter cards plug into your motherboard. The motherboard defines how much RAM, adapter cards, and the type of CPU the computer is going to have.

The Socket Connector is the where the CPU is plugged in. There are different types of plugs that go with different CPUs.

The DDR RAM Slots is where the RAM is plugged in. They are important because they define how much RAM you are able to have on the computer.

The hard drive is plugged into the IDE Headers.

PCI slots are where adapter cards are connected to. Cards such as sound cards and extra USB cards are all plugged into the PCI slots.

The PCI express slot, or AGP slot, is where the video card is plugged into. They are a special kind of PCI slot that is made specifically for video cards.

The back panel connectors are basically where all USB devices are plugged into. Most motherboards include a mouse connector, PS/2 Keyboard, USB pots, Serial port, parallel port, external audio jacks, AGP slot, and a MIDI port in the back panel connectors. If there is onboard sound on the motherboard, the speakers are plugged into the back panel connectors.

Terms:

  • Keyboard and Mouse Port – Ports where the keyboard and mouse are plugged into/
  • USB Ports – A high speed, universal method of plugging extra peripherals into the computer.
  • Serial Port – Ports that are used for plugging in joysticks and other game controllers.
  • Parallel Port – Where the printer is plugged in.
  • MIDI – A port where MIDI capable instruments can be plugged into.
  • Onboard sound – A sound card has already been installed on the motherboard without taking up a PCI slot.
  • AGP port – The monitor is plugged into this port.

Today, motherboards usually come with onboard sound. RAM limit can vary from a maximum of 2GB to 8GB. A lot more focus has been put on PCI express and AGP slots because of the high demand for video cards, and the ever-increasing level of graphics. PCI slots are being used less and less because they aren’t needed as much. Things like USB cards and sound cards are usually included in the motherboard nowadays.

Motherboards should be able to hold all the components. Choose a motherboard with more RAM slots so you have the room to upgrade. The more RAM the better. Make sure the motherboard has at least two PCI slots and one AGP or PCI-Express slots. The PCI slots hold adapter cards, and the AGP or PCI-Express slots hold the GPU. Motherboards should also come with extra onboard ports. This saves an adapter slot.

Processor (CPU)

The CPU, or the Central Processing Unit, is the brain of the computer and the most important chip in the computer. When you run a program, the CPU performs the calculations and carries out the commands.

Modern processors contain millions of transistors (miniature electronic switches) that are etched onto a small silicon square called a die. The die is about the width of a thumb.

The processor generates quite a lot of heat, so it always has a heat sink and fan that lies on top of it, and prevents it from getting too hot.

The faster the CPU the better. Speed is measured in MHz (megahertz) or GHz (gigahertz). Make sure that the CPU is compatible with the motherboard and have the same type of socket. Most new processors are 64-bit. This means that they support the upcoming Windows Vista. 64-bit processors can also run 32-bit applications, but not the other way around. Try to go for 64-bit, as 32-bit processors will soon be out of date.

Dual Core processors combine two or more processors into a single package. This will speed up the CPU drastically, and it enables optimal speed when running many programs at the same time.

Memory (RAM)

The memory holds “short term” information for the processor to use. This may be a program, or a set of data. The processor is able to retrieve information from the RAM at very high speeds. When the processor needs information that isn’t in the RAM, it has to read the information from the hard drive, which is much slower.

The more RAM the better, as it makes the whole system run faster.

The RAM modules are slotted into the RAM slots, which are located next to the processor socket on the motherboard.

DDR2 models are the newest type of RAM. It doubles the speed of data transfer between the RAM and CPU compared to the old DDR model. Make sure that the RAM is compatible with the motherboard. The more RAM the better; this is especially true when running operating systems such as WindowsXP.

Video Card (GPU – Graphics Processing Unit)

The video card sends the visual output produced by a program on to the monitor, which displays that on the screen. For gamers and others who use very high end graphics or special video work regularly, the GPU will be the most expensive part of the computer. These cards also run very hot, and most contain a fan on the side.

To get the best performance from a video card, you need a PCI-Express or an AGP slot. If it is used on a normal PCI slot, it will run much slower. Most video card manufacturers provide a benchmark figure of speed. You can compare these. GPUs also carry onboard RAM: the more the better. Make sure that the card has driver support for OpenGL and Direct3D. These are subsystems that are used in games and other online applications.

Video cards also come with a refresh rate. This shows how many times the monitor refreshes each pixel. The higher the refresh rate, the better. Lower refresh rates tend to give people head-aches.

DVD / CD Drive

CD and DVD drives allow the computer to read and burn CDs and DVDs. DVDs can hold a lot more data than CDs. Different kinds of CDs and DVDs can be rewritten, or played on a DVD player.

Make sure that the drive has a high access time. Access time is the actual time require for the CD or DVD drive to locate a specific file on the disc.

Just like a hard drive, the CD/DVD drive uses a special set of onboard RAM modules. The larger the cache, the fewer interruptions in the transfer of data.

Some kinds of CD/DVD can also burn and rewrite CDs and DVDs. This is not necessary, but a good feature to have.

Hard Drives

The hard drive is where all the information and programs on the computer is stored. The faster the rpm (revolutions per minute) of the platters (spinning discs in the hard drive that store data magnetically) in the hard drive, the faster it can read and retrieve data. The main concern about hard drive is the amount of space. Typical hard drives are around 100 GB.

Storage capacity is the biggest concern with hard drives. The more storage capacity, the more you can store on the hard drive. Choose a hard drive with a storage capacity that meets your needs, although the more space the better.

Access time a hard drive measures how fast the drive can read and write data. Choose a hard drive that has at least an access time of 10ms.

RPM is measures how fast the platters in the hard drive are moving. Choose a hard drive with a high RPM. Common RPMs are 7200 and 10,000.

The cache of the hard drive stores data that is used frequently. The larger the cache, the more information the hard drive doesn’t have to re-read each time it is opened.

Floppy drive

Floppy discs are being used less and less because they are unreliable and have a very short life span. The floppy drive is optional.

Monitor

Monitors are available in different size. The most common sizes are 17, 19 and 21 inches. This is measured diagonally. They display what you are doing on the computer.

Size is the main thing to consider when buying a monitor. Most monitors today have a flat screen. This makes the image much clearer. Also try to find a monitor that decreases the amount of electromagnetic radiation created.

Mouse and Keyboard

Mice control the mouse on screen. Wireless and optical mice are used more because they are more accurate. Trackball mice get dirty and need cleaning every once in a while.

Keyboards allow you u to type on the computer. Most keyboards today have 103 keys, but some have extra buttons that you can program to do what you want.

Most users will want a 103 keyboard. There are some ergonomic keyboards that shape the hand and make typing easier, this is just a preference.

Mice are also more of a preference. Try to stick with optical mice, as they have a longer lifespan.

http://www.tech-faq.com/computer-parts.shtml

goro shigeno

goro shigeno

Hello world!

Welcome to WordPress.com. This is your first post. Edit or delete it and start blogging!