Log in Sign up
Back to Discover
💻

Plug-in (computing)

technology Maturity 9-11 war conflict
This article covers sensitive topics: war_conflict. Parents can manage visibility in Parental Controls.

Some computer programs can grow.

Plug-InExample.svg
Plug-InExample.svg
You can add new parts to them. These parts help the program do more. It is like adding a new tool to a kit. This makes the program work better for you. Do you like to add things to your games?

47 words

Some computer programs can grow.

Plug-InExample.svg
Plug-InExample.svg
You can add new parts to them. These parts are called plug-ins. They help a program do more work.
Mozilla plugins screenshot without subpixel rendering.png
Mozilla plugins screenshot without subpixel rendering.png
One part can add a new feature. Another part can help a program play sound. Some parts help a program show pictures. A program can work on its own. But plug-ins let you change how it works. This makes the program special for you. It is easy to add or update them. You do not have to build the whole program again.

93 words

Some computer programs can grow. You can add new parts to them. These parts are called plug-ins.

Plug-InExample.svg
Plug-InExample.svg

A plug-in is a small piece of software. It adds new tasks to a main program. It does this without rebuilding the whole system. This makes a program easy to customize.

Plug-ins work in a special way. The main program provides tools for the plug-in to use. The plug-in also tells the main program it is ready.

Mozilla plugins screenshot without subpixel rendering.png
Mozilla plugins screenshot without subpixel rendering.png

There are many ways to use them. Audio software uses plug-ins to make or study sound. Video game emulators use them to act like game consoles. Some plug-ins help email stay safe. Others help web browsers or text editors work better.

Using plug-ins helps keep programs small. The program does not have to load parts you do not use. It also lets other people make new features. This can happen even if the main program was made by someone else. You can add or update them easily. You do not need to change the main program to make it work.

181 words

A plug-in is a special piece of software. It helps a main program do more things. You might also hear people call them add-ins or extensions. These tools allow a system to be customized. They add new features without needing to rebuild the whole system. This makes it easy to change how a program works.

Plug-InExample.svg
Plug-InExample.svg

How does this way of working happen? The main program provides certain services for the plug-in to use. The plug-in must register itself with the main host application. They use a special set of rules called a protocol to exchange data. Most plug-ins cannot work all by themselves. They depend on the services the host application gives them. However, the host application can still run without any plug-ins at all. This lets users add or update tools without changing the main program.

Mozilla plugins screenshot without subpixel rendering.png
Mozilla plugins screenshot without subpixel rendering.png

People have used these ideas for a long time. In the mid-1970s, a text editor called EDT used a similar idea. It ran on the Unisys VS/9 operating system for the UNIVAC Series 90 mainframe. This allowed a program to run from the editor to change text. In 1987, early personal computer software like HyperCard and QuarkXPress used plug-ins. HyperCard was unique because it put the plug-in code inside its own documents. In 1988, Silicon Beach Software added this capability to Digital Darkroom and SuperPaint.

Many different kinds of software use plug-ins today. Audio tools like Audacity or FL Studio use them to process sound. Video game emulators like PCSX2 use them to act like a PlayStation 2. Some media players like VLC or Winamp use them to support different file types. Web browsers used to use plug-ins like Adobe Flash Player or QuickTime. Now, browsers mostly use extensions instead. Text editors like Visual Studio or Eclipse also use them to support new programming languages.

Think of a plug-in like a tool for a workshop. The workshop is the main program that stays the same. You can bring in a new saw or a new drill to do a specific job. You do not have to build a whole new workshop just to use a new tool. This keeps the main program from becoming too huge or heavy. It also lets other people create new tools for you to use. This is a great way to make software better for everyone.

395 words

A plug-in is a software component designed to extend the functionality of an existing system. You might also hear these called add-ins, add-ons, or extensions. The main purpose of a plug-in is to allow a software system to be customized. This happens without requiring the entire host system to be re-built from scratch. Developers use plug-ins to let third-party creators add new features to an application. This approach also helps keep the original application smaller. By using plug-ins, a system does not have to load every possible feature at once. This saves space and resources by only loading what is actually needed.

Plug-InExample.svg
Plug-InExample.svg

The way a plug-in works relies on a specific relationship with a host application. The host application provides essential services that the plug-in requires to function. One key service is a way for plug-ins to register themselves with the host. They also use a protocol, which is a set of rules, to exchange data. Most plug-ins cannot operate independently and must depend on the host's services. However, the host application is designed to operate perfectly on its own. This independence allows users to add or update plug-ins dynamically. Users can change their software without making any permanent changes to the host code.

Programmers use different technical methods to implement these components. Many typically write plug-ins as shared libraries. These libraries are loaded dynamically at run time, which means they are brought in while the program is already running. Another method involves loading a directory of simple script files. These files are often written in scripting languages like Python or Lua. A different approach involves a helper application. In a web browser, a helper application like Adobe Reader is a separate program. Unlike a standard plug-in, a helper application does not share the host's address space. This separation provides a safety benefit. If a helper application crashes, it cannot crash the host application.

Different categories of software utilize plug-ins for very specific tasks. Digital audio workstations, such as Audacity, Cubase, or Pro Tools, use them to process or analyze sound. Email clients may use plug-ins like Pretty Good Privacy to encrypt and decrypt messages. Video game emulators often use them to modularize different subsystems. For example, the PCSX2 emulator uses separate plug-ins for video, audio, and optical components to mimic a PlayStation 2. Graphics software like Photoshop uses them to support various file formats. Media players such as VLC, Winamp, or foobar2000 use them to apply filters or support specific file types.

Mozilla plugins screenshot without subpixel rendering.png
Mozilla plugins screenshot without subpixel rendering.png

Text editors and development environments also rely heavily on this technology. Tools like Visual Studio, Eclipse, and IntelliJ IDEA use plug-ins to support different programming languages. Some software can even be plugged into other applications. Visual Studio can be used this way through Visual Studio Tools for Office. Even specialized tools like packet sniffers use them to decode specific data formats. An example of a packet sniffer that uses plug-ins is OmniPeek. In remote sensing, applications like Opticks use them to process data from various sensor types.

The history of this concept stretches back several decades. In the mid-1970s, the EDT text editor ran on the Unisys VS/9 operating system. This editor allowed a program to run directly from the editor to access the in-memory edit buffer. This allowed for interactive compilation in the University of Waterloo Fortran compiler. Early personal computer software also featured these capabilities. In 1987, HyperCard and QuarkXPress were released on the Apple Macintosh with plug-in support. HyperCard was unique because it often included the plug-in code within its own documents, called stacks. This made a stack a self-contained application. In 1988, Silicon Beach Software added plug-in capabilities to Digital Darkroom and SuperPaint.

Web browsers provide a notable example of how these technologies evolve. Historically, browsers used executables as plug-ins. These included famous names like Adobe Flash Player, QuickTime, and Microsoft Silverlight. They also used the Java virtual machine for Java applets. However, these executable plug-ins are now considered deprecated, meaning they are being phased out. Today, web browsers primarily use a different type of module called browser extensions. While extensions are a separate type of installable module, they serve the same fundamental goal of customization and expansion.

702 words
🖼️ Images & Media (2)
File:Mozilla plugins screenshot without subpixel rendering.png
Mozilla plugins screenshot without...
File:Plug-InExample.svg
Plug-InExample.svg
Up Next
💻
Software portability
Technology
More to explore

What is Nepedia?

A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.