Computer software, or just software, is the collection of computer programs A computer program is a sequence of instructions written to perform a specified task for a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute the instructions. The same program in its human- and related data The term data refers to groups of information that represent the qualitative or quantitative attributes of a variable or set of variables. Data are typically the results of measurements and can be the basis of graphs, images, or observations of a set of variables. Data are often viewed as the lowest level of abstraction from which information and that provide the instructions telling a computer what to do. The term was coined to contrast to the old term hardware Hardware is a general term for the physical artifacts of a technology. It may also mean the physical components of a computer system, in the form of computer hardware (meaning physical devices). In contrast to hardware, software is intangible, meaning it "cannot be touched".[1] Software is also sometimes used in a more narrow sense, meaning application software Application software, also known as applications or apps, is computer software designed to help the user to perform singular or multiple related specific tasks. Examples include Enterprise software, Accounting software, Office suites, Graphics software and media players only. Sometimes the term includes data that has not traditionally been associated with computers, such as film, tapes and records.[2]
Examples of computer software include:
- Application software Application software, also known as applications or apps, is computer software designed to help the user to perform singular or multiple related specific tasks. Examples include Enterprise software, Accounting software, Office suites, Graphics software and media players includes end-user applications of computers such as word processors A word processor is a computer application used for the production (including composition, editing, formatting, and possibly printing) of any sort of printable material or Video games A video game is an electronic game that involves interaction with a user interface to generate visual feedback on a video device. The word video in video game traditionally referred to a raster display device. However, with the popular use of the term "video game", it now implies any type of display device. The electronic systems used to, and ERP software for groups of users.
- Middleware Middleware is computer software that connects software components or some people and their applications. The software consists of a set of services that allows multiple processes running on one or more machines to interact. This technology evolved to provide for interoperability in support of the move to coherent distributed architectures, which controls and co-ordinates distributed systems Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal. A computer program that runs in a distributed system is called a distributed.
- Programming languages A programming language is an artificial language designed to express computations that can be performed by a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine, to express algorithms precisely, or as a mode of human communication define the syntax In linguistics, syntax is the study of the principles and rules for constructing sentences in natural languages and sematics Semantics is the study of meaning, usually in language. The word "semantics" itself denotes a range of ideas, from the popular to the highly technical. It is often used in ordinary language to denote a problem of understanding that comes down to word selection or connotation. This problem of understanding has been the subject of many of computer programs. For example, many mature banking applications were written in the COBOL COBOL is one of the oldest programming languages. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments language, originally invented in 1959. Newer applications are often written in more modern programming languages.
- System software System software is computer software designed to operate the computer hardware and to provide and maintain a platform for running application software includes operating systems An operating system is the software on a computer that manages the way different programs use its hardware, and regulates the ways that a user controls the computer. Operating systems are found on almost any device that contains a computer with multiple programs—from cellular phones and video game consoles to supercomputers and web servers. Some, which govern computing resources. Today large applications running on remote machines such as Websites A website is a collection of related web pages, images, videos or other digital assets that are addressed relative to a common Uniform Resource Locator (URL), often consisting of only the domain name, or the IP address, and the root path ('/') in an Internet Protocol-based network. A web site is hosted on at least one web server, accessible via a are considered to be system software, because the end-user interface In the industrial design field of human-machine interaction, the user interface is where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the machine which aids the operator in making operational decisions is generally through a Graphical user interface A graphical user interface (sometimes pronounced gooey) is a type of user interface item that allows people to interact with programs in more ways than typing such as computers; hand-held devices such as MP3 Players, Portable Media Players or Gaming devices; household appliances and office equipment with images rather than text commands. A GUI (GUI), such as a web browser A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content. Hyperlinks present in resources enable users to easily navigate their browsers to.
- Testware Generally speaking, Testware is a sub-set of software with a special purpose, that is, for software testing, especially for software testing automation. Automation testware for example is designed to be executed on automation frameworks is software for testing hardware or a software package A software package is used in object-oriented programming to name a group of related classes of a program. Packages are useful to measure and control the inherent coupling of a program.
- Firmware In electronics and computing, firmware is a term often used to denote the fixed, usually rather small, programs and data structures that internally control various electronic devices. Typical examples of devices containing firmware range from end-user products such as remote controls or calculators, through computer parts and devices like hard is low-level software often stored on electrically programmable memory devices. Firmware is given its name because it is treated like hardware and run ("executed") by other software programs.
- Shrinkware is the older name given to consumer bought software, because it was often sold in reatail stores in a shrinkwrapped Shrink wrap, also shrinkwrap or shrink film, is a material made up of polymer plastic film. When heat is applied to this material it shrinks tightly over whatever it is covering. Heat can be applied with a hand held heat gun or the product and film can pass through a heat tunnel on a conveyor box.
- Device drivers In computing, a device driver or software driver is a computer program allowing higher-level computer programs to interact with a hardware device control parts of computers such as disk drives Disk storage or disc storage is a general category of storage mechanisms, in which data are digitally recorded by various electronic, magnetic, optical, or mechanical methods on a surface layer deposited of one or more planar, round and rotating platters. A disk drive is a device implementing such a storage mechanism with fixed or removable media;, printers, CD drives, or computer monitors A monitor or display is an electronic visual display for computers. The monitor comprises the display device, circuitry, and an enclosure. The display device in modern monitors is typically a thin film transistor liquid crystal display (TFT-LCD), while older monitors use a cathode ray tube (CRT).
- Programming tools A programming tool or software development tool is a program or application that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs that can be combined together to accomplish a task, much as one might use multiple hand tools to fix a help conduct computing tasks in any category listed above. For programmers, these could be tools for debugging Debugging is a methodical process of finding and reducing the number of bugs, or defects, in a computer program or a piece of electronic hardware, thus making it behave as expected. Debugging tends to be harder when various subsystems are tightly coupled, as changes in one may cause bugs to emerge in another. Many entire books have been written, or reverse engineering Reverse engineering is the process of discovering the technological principles of a device, object or system through analysis of its structure, function and operation. It often involves taking something (e.g., a mechanical device, electronic component, or software program) apart and analyzing its workings in detail to be used in maintenance, or to older legacy systems A legacy system is an old method, technology, computer system, or application program that continues to be used, typically because it still functions for the users' needs, even though newer technology or more efficient methods of performing a task are now available. A legacy system may include procedures or terminology which are no longer relevant in order to check source code compatibility In computing, a computer that can run the same source code intended to be compiled and run on another computer is said to be source-compatible.
Contents |
History
For the history prior to 1946, see History of computing hardware Before the development of the general-purpose computer, most calculations were done by humans. Tools to help humans calculate were then called calculating machines, by proprietary names, or even as they are now, calculators. It was those humans who used the machines who were then called computers; they are pictures of enormous rooms filled with.The first theory about software was proposed by Alan Turing Alan Mathison Turing, OBE, FRS , was an English mathematician, logician, cryptanalyst and computer scientist. He was influential in the development of computer science and providing a formalisation of the concept of the algorithm and computation with the Turing machine, playing a significant role in the creation of the modern computer in his 1935 essay Computable numbers with an application to the Entscheidungsproblem (Decision problem).[3] Paul Niquette claims to have coined the term "software" in this sense in 1953,[4] and first used in print by John W. Tukey Tukey was born in New Bedford, Massachusetts in 1915, and obtained a B.A. in 1936 and M.Sc. in 1937, in chemistry, from Brown University, before moving to Princeton University where he received a Ph.D. in mathematics in 1958.[5] The academic fields studying software are computer science Computer science or computing science is the study of the theoretical foundations of information and computation, and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe, and transform information. Computer science and software engineering Software engineering is a profession and field of study dedicated to designing, implementing, and modifying software so that it is of higher quality, more affordable, maintainable, and faster to build. The term software engineering first appeared in the 1968 NATO Software Engineering Conference, and was meant to provoke thought regarding the.
| This section does not cite any references or sources. Please help improve this article by adding citations to reliable sources. Unsourced material may be and removed. (June 2010) |
The history of computer software is most often traced back to the first software bug A software bug is the common term used to describe an error, flaw, mistake, failure, or fault in a computer program or system that produces an incorrect or unexpected result, or causes it to behave in unintended ways. Most bugs arise from mistakes and errors made by people in either a program's source code or its design, and a few are caused by in 1946. As more and more programs enter the realm of firmware, and the hardware itself becomes smaller, cheaper and faster due to Moore's law Moore's law describes a long-term trend in the history of computing hardware, in which the number of transistors that can be placed inexpensively on an integrated circuit has doubled approximately every two years. [see image nearby], elements of computing first considered to be software, join the ranks of hardware. Most hardware companies today have more software programmers on the payroll than hardware designers, since software tools have automated many tasks of Printed circuit board A printed circuit board, or PCB, is used to mechanically support and electrically connect electronic components using conductive pathways, tracks or traces etched from copper sheets laminated onto a non-conductive substrate. It is also referred to as printed wiring board or etched wiring board. A PCB populated with electronic components is a engineers. Just like the Auto industry The automotive industry designs, develops, manufactures, markets, and sells the world's motor vehicles. In 2007, more than 73 million motor vehicles, including cars and commercial vehicles were produced worldwide, the Software industry The software industry includes businesses involved in the development, maintenance and publication of computer software using any business model. The industry also includes software services, such as training, documentation, and consulting has grown from a few visionaries operating out of their garage with prototypes A prototype is an original type, form, or instance of something serving as a typical example, basis, or standard for other things of the same category. The word derives from the Greek πρωτότυπον , "primitive form", neutral of πρωτότυπος (prototypos), "original, primitive", from πρῶτος (protos), ". Steve Jobs Steven Paul Jobs is an American business magnate and inventor. He is well-known for being the co-founder and chief executive officer of Apple. Jobs also previously served as chief executive of Pixar Animation Studios; he became a member of the board of The Walt Disney Company in 2006, following the acquisition of Pixar by Disney and Bill Gates William Henry "Bill" Gates III, KBE is an American business magnate, philanthropist, author and chairman of Microsoft, the software company he founded with Paul Allen. He is consistently ranked among the world's wealthiest people and was the wealthiest overall from 1995 to 2009, excluding 2008, when he was ranked third. During his career were the Henry Ford Henry Ford was the American founder of the Ford Motor Company and father of modern assembly lines used in mass production. His introduction of the Model T automobile revolutionized transportation and American industry. He was a prolific inventor and was awarded 161 U.S. patents. As owner of the Ford Motor Company, he became one of the richest and and Louis Chevrolet Louis-Joseph Chevrolet , of French descent was a race car driver and co-founder (with William C. Durant) of the Chevrolet Motor Car Company, which was acquired by General Motors and is their best-selling brand nationwide and in many cases synonymous with General Motors itself of their times, who capitalized on ideas already commonly known before they started in the business. In the case of Software development Software development is the act of working to produce/create software. This software could be produced for a variety of purposes - the three most common purposes are to meet specific needs of a specific client/business, to meet a perceived need of some set of potential users , or for personal use (e.g. a scientist may write software to automate a, this moment is generally agreed to be the publication in the 1980's of the specifications for the IBM Personal Computer The IBM Personal Computer, commonly known as the IBM PC, is the original version and progenitor of the IBM PC compatible hardware platform. It is IBM model number 5150, and was introduced on August 12, 1981. It was created by a team of engineers and designers under the direction of Don Estridge of the IBM Entry Systems Division in Boca Raton, published by IBM International Business Machines (NYSE: IBM) is a multinational computer, technology and IT consulting corporation headquartered in Armonk, North Castle, New York, United States. IBM is the world's fourth largest technology company and the second most valuable by global brand (after Coca-Cola). IBM is one of the few information technology companies employee Philip Don Estridge Philip Donald Estridge , known as Don Estridge, led development of the original IBM Personal Computer (PC), and thus is known as "father of the IBM PC". His decisions dramatically changed the computer industry, resulting in a vast increase in the number of personal computers sold and bought, thus creating an entire industry of hardware. Today his move would be seen as a type of crowd-sourcing.
Until that time, software was bundled with the hardware by Original equipment manufacturers (OEMs) such as Data General, Digital Equipment and IBM. When a customer bought a minicomputer, at that time the smallest computer on the market, the computer did not come with Pre-installed software, but needed to be installed by engineers employed by the OEM. Computer hardware companies not only bundled their software, they also placed demands on the location of the hardware in a refrigerated space called a computer room. Most companies had their software on the books for 0 dollars, unable to claim it as an asset (this is similar to financing of popular music in those days). When Data General introduced the Data General Nova, a company called Digidyne wanted to use its RDOS operating system on its own hardware clone. Data General refused to license their software (which was hard to do, since it was on the books as a free asset), and claimed their "bundling rights". The Supreme Court set a precedent called Digidyne v. Data General in 1985. The Supreme Court let a 9th circuit decision stand, and Data General was eventually forced into licensing the Operating System software because it was ruled that restricting the license to only DG hardware was an illegal tying arrangement.[6] Soon after, IBM 'published' its DOS source for free, and Microsoft was born. Unable to sustain the loss from lawyer's fees, Data General ended up being taken over by EMC Corporation. The Supreme Court decision made it possible to value software, and also purchase Software patents. The move by IBM was almost a protest at the time. Few in the industry believed that anyone would profit from it other than IBM (through free publicity). Microsoft and Apple were able to thus cash in on 'soft' products. It is hard to imagine today that people once felt that software was worthless without a machine. There are many successful companies today that sell only software products, though there are still many common software licensing problems due to the complexity of designs and poor documentation, leading to patent trolls.
With open software specifications and the possibility of software licensing, new opportunities arose for software tools that then became the de facto standard, such as DOS for operating systems, but also various proprietary word processing and spreadsheet programs. In a similar growth pattern, proprietary development methods became standard Software development methodology.
Overview
A layer structure showing where operating system is located on generally used software systems on desktopsSoftware includes all the various forms and roles that digitally stored data may have and play in a computer (or similar system), regardless of whether the data is used as code for a CPU, or other interpreter, or whether it represents other kinds of information. Software thus encompasses a wide array of products that may be developed using different techniques such as ordinary programming languages, scripting languages, microcode, or an FPGA configuration.
The types of software include web pages developed in languages and frameworks like HTML, PHP, Perl, JSP, ASP.NET, XML, and desktop applications like OpenOffice, Microsoft Word developed in languages like C, C++, Java, C#, or Smalltalk. Application software usually runs on an underlying software operating systems such as Linux or Microsoft Windows. Software (or firmware) is also used in video games and for the configurable parts of the logic systems of automobiles, televisions, and other consumer electronics.
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, executable code consists of machine language instructions 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. Programs are an ordered sequence of instructions for changing the state of the computer 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.
| Look up software in Wiktionary, the free dictionary. |
Types of software
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.
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 - Microsoft Windows, Linux, and Mac OS X.
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.
Application software
Application software allows end users to accomplish one or more specific (not directly computer development related) tasks. Typical applications include:
- industrial automation
- business software
- video games
- quantum chemistry and solid state physics software
- telecommunications (i.e., the Internet and everything that flows on it)
- databases
- educational software
- medical software
- molecular modeling software
- image editing
- spreadsheet
- simulation software
- Word processing
- Decision making software
Application software exists for and has impacted a wide variety of topics.
Software topics
Architecture
See also: Software architectureUsers 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 and word processor templates. 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.
Documentation
Main article: Software documentationMost software has software documentation so that the end user can understand the program, what it does, and how to use it. Without clear documentation, software can be hard to use—especially if it is very specialized and relatively complex like 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.
Library
Main article: Software libraryAn 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.
Standard
Main article: Software standardSince 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.
Execution
Main article: Execution (computing)Computer software has to be "loaded" into the computer's storage (such as the hard drive or memory). 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.
Quality and reliability
Main articles: Software quality, Software testing, and Software reliabilitySoftware 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.
License
Main article: Software licenseThe 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.
Patents
Main articles: Software patent and Software patent debateSoftware 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.
Design and implementation
Main articles: Software development, Computer programming, and Software engineeringDesign and implementation of software varies depending on the complexity of the software. For instance, design and creation of Microsoft Word software will take much more 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()[7] 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.[8][9] A person who creates software is called a programmer, software engineer, software developer, or code monkey, terms that all have a similar meaning.
Industry and organizations
Main article: Software industryA great variety of software companies and programmers in the world comprise the software industry . Software can be quite a profitable industry: Bill Gates, the founder of Microsoft was the richest person in the world in 2009 largely by selling the Microsoft Windows and Microsoft Office software products. The same goes for Larry Ellison, largely through his Oracle database software. Through time the software industry has become increasingly specialized.
Non-profit software organizations include the Free Software Foundation, GNU Project and Mozilla Foundation. Software standard organizations like the W3C, IETF develop software standards so that most software can interoperate through standards such as XML, HTML, HTTP or FTP.
Other well-known large software companies include Novell, SAP, Symantec, Adobe Systems, and Corel, while small companies often provide innovation.
References
- ^ "Wordreference.com: WordNet 2.0". Princeton University, Princeton, NJ. http://www.wordreference.com/definition/software. Retrieved 2007-08-19.
- ^ software..(n.d.). Dictionary.com Unabridged (v 1.1). Retrieved 2007-04-13, from Dictionary.com website: http://dictionary.reference.com/browse/software
- ^ 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.
- ^ Paul Niquette (1995). "Softword: Provenance for the Word 'Software'". http://www.niquette.com/books/softword/tocsoft.html. adapted from Sophisticated: The Magazine ISBN 1-58922-233-4
- ^ "John Tukey, 85, Statistician; Coined the Word 'Software'". New York Times. July 28, 2000. http://query.nytimes.com/gst/fullpage.html?res=9500E4DA173DF93BA15754C0A9669C8B63.
- ^ Tying Arrangements and the Computer Industry: Digidyne Corp. vs. Data General
- ^ "MSDN Library". http://msdn.microsoft.com/en-us/library/default.aspx. Retrieved 2010-06-14.
- ^ v. Engelhardt, Sebastian (2008): "The Economic Properties of Software", Jena Economic Research Papers, Volume 2 (2008), Number 2008-045. (in Adobe pdf format)
- ^ "Why Open Source Is The Optimum Economic Paradigm for Software" by Dan Kaminsky 1999
Weblinks
- Software Wikia
Categories: Software
|
Fri, 30 Jul 2010 19:14:19 GMT+00:00
PC World ... next week for the CRM Evolution conference, which will feature discussions on how technologies and economic forces are changing the software segment. ...
500px x 760px | 89.10kB
[source page]
Outboard dbx 160XT Limiters 2 software digidesign Pro Tools TDM 6 9 Plug ins from Lexicon Focusrite TC Works Waves Mechanics Line 6 Waves BombFactory Antares McDSP Acess SansAmp
d1m
Fri, 30 Jul 2010 09:23:00 GM
Creative Technology Ltd has announced the Sound Blaster X-Fi MB2 suite, an audio enhancement . software. that promises to deliver.
Q. I am looking for software that can track the websites and webpages a user has visited. For example, I am operating a wireless router that connects 5-7 users to the Internet. I am interested in what are these people are doing with my wireless service, as in are they abusing the wireless service that I am providing to them? I am interested in how much time they are spending on the Internet, what websites they have visited or the webpages they are surfing and if they are downloading materials. I know that such software are available on the open market but so far, I'm not sure where to find them. I am hoping for examples of such software that I can use. Furthermore, I also wonder if the users on my wireless router can block such tracking… [cont.]
Asked by warlord - Wed Jul 11 00:17:16 2007 - - 1 Answers - 0 Comments
A. One solution is to setup a transparent proxy. This can be done as to not interfere with access but can provide all sorts of data including every web access or you can restrict certain sites if you really want to. There are several add-ons that have been done for squid to provide reporting from the logs that it can keep. A side benefit is that using caching you can maximize bandwidth and make browsing effectively quicker for sites that are visited frequently or by multiple users. This is basically a free solution. Any, say, old pentium machine with decent network cards, a fair amount of memory, HD space and Linux loaded on it can handle this. You could also use something like tcpdump (a packet capture utility) which can monitor *all*… [cont.]
Answered by tj - Wed Jul 11 00:56:10 2007


