Explain the difference between the following

Published on December 2016 | Categories: Documents | Downloads: 92 | Comments: 0 | Views: 890
of 8
Download PDF   Embed   Report

Comments

Content

1. Explain the difference between the following a. High-Level and low level languages high level programming laguages is languages program than use languages or syntax which close to human languages so, it is easy to understanding the languages or syntax sunch as pascal or delphi language program. In short, high-level languages are the logical semantic evolution of mid-level languages. It makes a lot of sense when you consider the philosophy of simplification and increase of abstraction High-level languages tend to be extremely dynamic. Runtime flow is changed on the fly through the use of things like dynamic typing, open classes, etc. This sort of technique provides a tremendous amount of flexibility in algorithm design High level languages are: 1 - Visual Basic 2 - Pascal 3 - Java 4 - C++ HIGH LEVEL FEATURES: 1. reduced syntax (lack of full access to the processor architecture) 2. ability to provide more or less comfort debugging/monitoring

Characteristics
y y y y y y y

Interpreted Dynamic constructs (open classes, message-style methods, etc) Poor performance Concise code Flexible syntax (good for internal DSLs) Hybrid paradigm (object-oriented and functional) Fanatic community

Low level languages are: 1 - Machine Language 2 - Assembly Language Machine language and assembler require detailed knowledge of every aspect of the computer's architecture, including processor register function, I/O details, memory layout and access methods, etc. Prior to C, the only way programmers could manipulate processor and device registers to the bit level

was with machine or assembly code. These low-level languages provide fine-grained control of every function the machine can execute. They are therefore useful for writing high-performance, memorystingy routines, since a good assembly programmer can optimize for speed and memory usage more effectively than compilers can. (This is less true today than a few years ago, though). When processors were slow and memory expensive LOW LEVEL FEATURES: 1. problem with identifiers 2. lack of the structuring ability

Low-Level
Of all of the categories, it¶s probably easiest to define what it means to be a low-level language. Machine code is low level because it runs directly on the processor. Low-level languages are appropriate for writing operating systems or firmware for micro-controllers. They can do just about anything with a little bit of work, but obviously you wouldn¶t want to write the next major web framework in one of them (I can see it now, ³Assembly on Rails´).

Characteristics
y y y y y

Direct memory management Little-to-no abstraction from the hardware Register access Statements usually have an obvious correspondence with clock cycles Superb performance

C is actually a very interesting language in this category (more so C++) because of how broad its range happens to be. C allows you direct access to registers and memory locations, but it also has a number of constructs which allow significant abstraction from the hardware itself. Really, C and C++ probably represent the most broad spectrum languages in existence, which makes them quite interesting from a theoretical standpoint. In practice, both C and C++ are too low-level to do anything ³enterprisy´. As an aside, high-level languages usually perform poorly compared with low- or even mid-level languages. This is merely a function of the many layers of abstraction between the code and the machine itself. It¶s simply High Level Language means the language is easily understandable, and Low Level Language means the language is more to a machine language than a human understandable language.

b.

applications and Utilities

Applications Software that processes data for the user. In the entertainment world, it refers to games (see gaming). In the business world, it refers to the data entry, update, query and report programs that make up the company's payroll, order entry, billing, inventory, human resource and manufacturing systems (see CRM and ERP). The term may also refer to one of the so-called "productivity programs" such as spreadsheets, word processors and database programs. For a list of major application software categories, see application software. See productivity software, application, program and software. Contrast with system program.

Application Programs

Utilities A program that supports using the computer, an application or a development environment. Also called "utilities," utility software is programmed like any other software, except that it plays a supporting role. Usually relatively small programs, they typically perform a limited number of tasks. Utility programs include file management (creating, moving and renaming folders, copying and deleting files), file search, comparing file contents as well as performing diagnostic routines to check the performance and current health of the hardware.

Utility software is a kind of system software designed to help analyze, configure, optimize and maintain the computer. A single piece of utility software is usually called a utility (abbr. util) or tool. Utility software should be contrasted with application software, which allows users to do things like creating text documents, playing games, listening to music or surfing the web. Rather than providing these kinds of user-oriented or output-oriented functionality, utility software usually focuses on how the computer infrastructure (including the computer hardware, operating system, application software and data storage) operates. Due to this focus, utilities are often rather technical and targeted at people with an advanced level of computer knowledge. Most utilities are highly specialized and designed to perform only a single task or a small range of tasks. However, there are also some utility suites that combine several features in one piece of software. Most major operating systems come with several pre-installed utilities.

Utility software categories
y y y

y

Disk storage utilities Disk defragmenters can detect computer files whose contents are broken across several locations on the hard disk, and move the fragments to one location to increase efficiency. Disk checkers can scan the contents of a hard disk to find files or areas that are corrupted in some way, or were not correctly saved, and eliminate them for a more efficiently operating hard drive. Disk cleaners can find files that are unnecessary to computer operation, or take up considerable amounts of space. Disk cleaner helps the user to decide what to delete when their hard disk is full.

y

y

y

y y

y

y y y y y y y y y y

Disk space analyzers for the visualization of disk space usage by getting the size for each folder (including sub folders) & files in folder or drive. showing the distribution of the used space. Disk partitions can divide an individual drive into multiple logical drives, each with its own file system which can be mounted by the operating system and treated as an individual drive. Backup utilities can make a copy of all information stored on a disk, and restore either the entire disk (e.g. in an event of disk failure) or selected files (e.g. in an event of accidental deletion). Disk compression utilities can transparently compress/uncompress the contents of a disk, increasing the capacity of the disk. File managers provide a convenient method of performing routine data management tasks, such as deleting, renaming, cataloging, uncataloging, moving, copying, merging, generating and modifying data sets. Archive utilities output a stream or a single file when provided with a directory or a set of files. Archive utilities, unlike archive suites, usually do not include compression or encryption capabilities. Some archive utilities may even have a separate un-archive utility for the reverse operation. System profilers provide detailed information about the software installed and hardware attached to the computer. Anti-virus utilities scan for computer viruses. Hex editors directly modify the text or data of a file. These files could be data or an actual program. Data compression utilities output a shorter stream or a smaller file when provided with a stream or file. Cryptographic utilities encrypt and decrypt streams and files. Launcher applications provide a convenient access point for application software. Registry cleaners clean and optimize the Windows registry by removing old registry keys that are no longer in use. Network utilities analyze the computer's network connectivity, configure network settings, check data transfer or log events. Command line interface (CLI) and Graphical user interface (GUI) Allows the user to contact and make changes to the operating system. Screensavers were desired to prevent phosphor burn-in on CRT and plasma computer monitors by blanking the screen or filling it with moving images or patterns when the computer is not in use. Contemporary screensavers are used primarily for entertainment or security.

c. Shareware, open source, freeware
Shareware can also be distributed freely but the creator asks that if the user of the software finds it useful they make a small payment. The payment will often activate additional features in the software as an incentive to encourage payment

Open source software is software whose source code is published and made available to the public, enabling anyone to copy, modify and redistribute the source code without paying royalties or fees.[20] Open source code evolves through community cooperation. These communities are composed of individual programmers as well as very large companies. Examples of open-source software products are:[21] Programming language
y

PHP - Scripting language suited for the web

OS
y y y y y y y

GNU Project ² ³a sufficient body of free software´ Linux ² operating system kernel based on Unix NetBSD ² operating system derived from Unix OpenBSD ² operating system derived from Unix FreeBSD ² operating system derived from Unix OpenSolaris ² Unix Operating System from Sun Microsystems Symbian ² real-time mobile operating system

Server
y y y y y y y y y y y y y

Apache ² HTTP web server Tomcat web server ² web container MediaWiki ² wiki server software, the software that runs Wikipedia Alfresco ² content management system RenovatioCMS ² content management system Joomla ² content management system Drupal ² content management system TYPO3 ² content management system WordPress ² blog software MongoDB ² document-oriented, non-relational database Eclipse ² software development environment comprising an integrated development environment (IDE) Moodle ² course management system or virtual learning environment openSIS ² open source Student Information System

Client software
y y y y y y

osCommerce ² ecommerce PeaZip ² File archiver NASA World Wind ² virtual globe, geobrowser Mozilla Firefox ² web browser Mozilla Thunderbird ² e-mail client OpenOffice.org ² office suite

y y

Stockfish ² chess engine series, considered to be one of the strongest chess programs of the world 7-Zip ² File archiver

Freeware (from "free" and "software") is computer software that is available for use at no cost or for an optional fee,[1] but usually with one or more restricted usage rights.[2][3] Freeware is in contrast to commercial software, which is typically sold for profit. The term does not imply that the software is free and open source software (FOSS). Freeware is a loosely defined category, which includes both closed and open source proprietary software. The term freeware was coined by Andrew Fluegelman when he wanted to sell a communications program named PC-Talk that he had created but for which he did not wish to use traditional methods of distribution because of their cost.[4] Fluegelman actually distributed PC-Talk via a process now referred to as shareware. Current use of the term freeware does not necessarily match the original concept by Andrew Fluegelman.

Criteria
Software classified as freeware is licensed at no cost and is either fully functional for an unlimited time; or has only basic functions enabled with a fully functional version available commercially or as shareware.[5] In contrast to free software, the author usually restricts one or more rights of the user, including the rights to copy, distribute, modify and make derivative works of the software or extract the source code.[3][2][6][7] The software license may impose additional restrictions on the type of use including personal use, private use, individual use, nonprofit use, non-commercial use, academic use, educational use, use in charity or humanitarian organisations, non-military use, use by public authorities or various other combinations of these type of restrictions.[8] For instance, the license may be "free for private, non-commercial use". The software license may also impose various other restrictions, such as restricted use over a network, restricted use on a server, restricted use in a combination with some types of other software or with some hardware devices, etc.[6] The Free Software Foundation (FSF) has requested that people avoid referring to true Free Software as "freeware".[9][10] Members of FOSS community believe that "freedom to use" implies that the end user is free study, and modify, and distribute the software with minimal restriction.[11] Freeware is also distinct from shareware; the latter obliges the user to pay after some trial period or to gain additional functionality.[2]

The initiative endorsed by the Free Software Foundation that promotes freedom for computer users and considers proprietary software unethical. It holds that all software users are morally entitled to the freedoms granted by "free" software, which is often free of charge, but mostly free of restrictions (see free software). The first and main achievement of the free software movement was the GNU operating system. However, due to restrictions with application programs and embedded codes in hardware, the goal has yet to be fully realized

The free software movement is a social and political movement[1] with the goal of ensuring software users' four basic freedoms: the freedom to run it, to study and change it, and to redistribute copies with or without changes. The alternative terms "software libre", "open source", and "FOSS" are associated with the free software movement. Although drawing on traditions and philosophies among members of the 1970s hacker culture, Richard Stallman founded and launched the movement in 1983 by founding the GNU Project.[2] The free software philosophy at the core of the movement drew on the essence and incidental elements of what was called hacker culture by many computer users in the 1970s, among other sources. Stallman founded the Free Software Foundation in 1985 to support the movement.

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close