Lightweight Software
In computing, lightweight software also called lightweight program and lightweight application, is a computer program that is designed to have a small memory footprint (RAM usage) and low CPU usage, overall a low usage of system resources . To achieve this, the software should avoid software bloat and code bloat and try to find the best algorithm efficiency. See also * Software optimization * Application footprint * Light-weight process * Lightweight protocol * Lightweight Procedure Call * Lightweight programming language * Lightweight markup language * Load (computing) References Software optimization {{software-stub ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, hardware and software. Computing has scientific, engineering, mathematical, technological, and social aspects. Major computing disciplines include computer engineering, computer science, cybersecurity, data science, information systems, information technology, and software engineering. The term ''computing'' is also synonymous with counting and calculation, calculating. In earlier times, it was used in reference to the action performed by Mechanical computer, mechanical computing machines, and before that, to Computer (occupation), human computers. History The history of computing is longer than the history of computing hardware and includes the history of methods intended for pen and paper (or for chalk and slate) with or without the aid of tables. ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Software Optimization
In computer science, program optimization, code optimization, or software optimization is the process of modifying a software system to make some aspect of it work more efficiently or use fewer resources. In general, a computer program may be optimized so that it executes more rapidly, or to make it capable of operating with less memory storage or other resources, or draw less power. Overview Although the term "optimization" is derived from "optimum", achieving a truly optimal system is rare in practice, which is referred to as superoptimization. Optimization typically focuses on improving a system with respect to a specific quality metric rather than making it universally optimal. This often leads to trade-offs, where enhancing one metric may come at the expense of another. One popular example is space-time tradeoff, reducing a program’s execution time by increasing its memory consumption. Conversely, in scenarios where memory is limited, engineers might prioritize a slower ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Lightweight Markup Language
A lightweight markup language (LML), also termed a simple or humane markup language, is a markup language with simple, unobtrusive syntax. It is designed to be easy to write using any generic text editor and easy to read in its raw form. Lightweight markup languages are used in applications where it may be necessary to read the raw document as well as the final rendered output. For instance, a person downloading a software library might prefer to read the documentation in a text editor rather than a web browser. Another application for such languages is to provide for data entry in web-based publishing, such as blogs and wikis, where the input interface is a simple text box. The server software then converts the input into a common document markup language like HTML. History Lightweight markup languages were originally used on text-only displays which could not display characters in italics or bold, so informal methods to convey this information had to be developed. This ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Lightweight Programming Language
Lightweight programming languages are programming languages designed to have small memory footprint, are easy to implement (important when porting a language to different computer systems), and/or have minimalist syntax and features. These programming languages have simple syntax and semantics, so one can learn them quickly and easily. Some lightweight languages (for example Lisp, Forth, and Tcl) are so simple to implement that they have many implementations (dialects). Compiled languages BASIC BASIC implementations like Tiny BASIC were designed to be lightweight so that they could run on the microcomputers of the 1980s, because of memory constraints. Forth Forth is a stack-based concatenative imperative programming language using reverse Polish notation. Toy languages FALSEFALSE is a minimalist [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Lightweight Procedure Call
The Local Inter-Process Communication (LPC, often also referred to as Local Procedure Call or Lightweight Procedure Call) is an internal, undocumented inter-process communication facility provided by the Microsoft Windows NT kernel for lightweight IPC between processes on the same computer. As of Windows Vista, LPC has been rewritten as Asynchronous Local Inter-Process Communication (ALPC, often also Advanced Local Procedure Call) in order to provide a high-speed scalable communication mechanism required to efficiently implement User-Mode Driver Framework (UMDF), whose user-mode parts require an efficient communication channel with UMDF's components in the executive. The (A)LPC interface is part of Windows NT's undocumented Native API, and as such is not available to applications for direct use. However, it can be used indirectly in the following instances: * when using the Microsoft RPC API to communicate locally, i.e. between the processes on the same machine * by calling Windows A ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Lightweight Protocol
A lightweight protocol in computer networking is a communication protocol that is characterized by a relatively small overhead (caused e.g. by bulky metadata) in transmitted on top of the functional data: * Lightweight Directory Access Protocol * Lightweight Extensible Authentication Protocol * Lightweight Presentation Protocol * Internet Content Adaptation Protocol * Skinny Client Control Protocol * OpenLDAP OpenLDAP is a free, open-source implementation of the Lightweight Directory Access Protocol (LDAP) developed by the OpenLDAP Project. It is released under its own BSD-style license called the OpenLDAP Public License. LDAP is a platform-independ ... {{Set index article Network protocols ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Light-weight Process
In computer operating systems, a light-weight process (LWP) is a means of achieving multitasking. In the traditional meaning of the term, as used in Unix System V and Solaris, a LWP runs in user space on top of a single kernel thread and shares its address space and system resources with other LWPs within the same process. Multiple user-level threads, managed by a thread library, can be placed on top of one or many LWPs - allowing multitasking to be done at the user level, which can have some performance benefits. In some operating systems, there is no separate LWP layer between kernel threads and user threads. This means that user threads are implemented directly on top of kernel threads. In those contexts, the term "light-weight process" typically refers to kernel threads and the term "threads" can refer to user threads. On Linux, user threads are implemented by allowing certain processes to share resources, which sometimes leads to these processes to be called "light wei ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Application Footprint
{{unreferenced, date=February 2017 In computing, footprint of an application software (or application footprint) provides a sense of sizing of its various constituents, and hence, is a spatial measurement, in a given context, such as disk footprint, memory footprint (a.k.a. runtime footprint), network footprint, etc. In each case, footprint of an application excludes data that it may operate on, as part of storage or execution, but essentially includes programs (executable and libraries), configuration files, resources (binary or textual) and other context-specific components that may be considered as part of the software. Whereas disk footprint of an application refers to its storage size, runtime footprint translates to memory requirements at execution time. Network footprint, on the other hand, refers to the extent of control information that a network-based application references, again, excluding any data that it may require to transmit (download or upload) to carry its acti ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
LXDE Desktop Full
LXDE (abbreviation for Lightweight X11 Desktop Environment) is a free desktop environment with comparatively low resource requirements. This makes it especially suitable for use on older or resource-constrained personal computers such as netbooks or system on a chip computers. Overview LXDE was written in the C programming language, using the GTK 2 toolkit, and runs on Unix and other POSIX-compliant platforms, such as Linux and BSDs. The LXDE project aims to provide a fast and energy-efficient desktop environment. LXDE uses rolling releases for its individual components (or for groups of components with coupled dependencies). The default window manager used is Openbox, but one can configure a third-party window manager for use with LXDE, such as Fluxbox, IceWM or Xfwm. LXDE includes GPL-licensed code as well as LGPL-licensed code. History The project was started in 2006 by Taiwanese programmer Hong Jen Yee (), also known as PCMan, when he published PCManFM, a new file mana ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Computer Program
A computer program is a sequence or set of instructions in a programming language for a computer to Execution (computing), execute. It is one component of software, which also includes software documentation, documentation and other intangible components. A ''computer program'' in its human-readable form is called source code. Source code needs another computer program to Execution (computing), execute because computers can only execute their native machine instructions. Therefore, source code may be Translator (computing), translated to machine instructions using a compiler written for the language. (Assembly language programs are translated using an Assembler (computing), assembler.) The resulting file is called an executable. Alternatively, source code may execute within an interpreter (computing), interpreter written for the language. If the executable is requested for execution, then the operating system Loader (computing), loads it into Random-access memory, memory and ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Algorithm Efficiency
In mathematics and computer science, an algorithm () is a finite sequence of mathematically rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing calculations and data processing. More advanced algorithms can use conditionals to divert the code execution through various routes (referred to as automated decision-making) and deduce valid inferences (referred to as automated reasoning). In contrast, a heuristic is an approach to solving problems without well-defined correct or optimal results.David A. Grossman, Ophir Frieder, ''Information Retrieval: Algorithms and Heuristics'', 2nd edition, 2004, For example, although social media recommender systems are commonly called "algorithms", they actually rely on heuristics as there is no truly "correct" recommendation. As an effective method, an algorithm can be expressed within a finite amount of space and time"Any classical mathe ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |
|
Code Bloat
In computer programming, code bloat is the production of program code (source code or machine code) that is unnecessarily long, slow, or otherwise wasteful of resources. Code bloat can be caused by inadequacies in the programming language in which the code is written, the compiler used to compile it, or the programmer writing it. Thus, while code bloat generally refers to source code size (as produced by the programmer), it can be used to refer instead to the ''generated'' code size or even the binary file size. Examples The following JavaScript algorithm has a large number of redundant variables, unnecessary logic and inefficient string concatenation. // Complex function TK2getImageHTML(size, zoom, sensor, markers) ; The same logic can be stated more efficiently as follows: // Simplified const TK2getImageHTML = (size, zoom, sensor, markers) => ; Code density of different languages The difference in code density between various computer languages is so great that o ... [...More Info...]       [...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]   [Amazon] |