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.
Examples While all software development generally tries to avoid excessive size and including unnecessary code through various best practices and compiler optimization, lightweight software development implies the employment of specific programming techniques and styles designed to produce extremely small and performant software. A demonstrative example of the extreme end of lightweight software are complex programs developed entirely in assembly language.
KolibriOS – A fully-functional, bespoke operating system written in FASM assembly language, which is small enough to boot from a floppy diskette. RollerCoaster Tycoon – A construction and management simulation game written in x86 assembly language for MASM. Lightweight software for everyday use usually refers to apps that are used frequently, offer a limited set of features, and start and run quickly.
XFCE – A desktop environment for Unix-like operating systems, written in the C programming language, that is regarded as being highly performant, and especially suited to devices with older or minimal hardware capabilities. Neovim – A terminal-based text editor with an extremely broad feature set and programmability via Lua. Because Neovim lacks any graphical user interface (GUI), it can include many features, while remaining lightweight, because the graphics libraries are the "heaviest" part of most applications.
See also Software optimization Application footprint Light-weight process Lightweight protocol Lightweight Procedure Call Lightweight programming language Lightweight markup language Load (computing)
References


