P.I.P.S.

Last updated

P.I.P.S.
Stable release
1.7 / 10 April 2010;12 years ago (2010-04-10)
Written in C, C++
Operating system Symbian OS
Type Application programming interface
License ?

P.I.P.S. is a term (recursive acronym) for Symbian software libraries that means, P.I.P.S. Is POSIX on Symbian OS. It is intended to help C language programmers in migration of desktop and server middleware, applications to Symbian OS based mobile smartphone devices. [1] [2]

Contents

Software libraries

The PIPS software libraries provides C and C++ application programming interfaces in standard C libraries such as

Limitations

The P.I.P.S. environment does not support true signalling. Basic signal support is emulated using threads.

Extensions and successors: Open C and Open C++

Open C and Open C++ are extensions by Nokia of P.I.P.S. In contrast to mere P.I.P.S., they were only for Series 60 phones. [3]

Naming

The name was the result of an internal competition in the Symbian Developer Marketing department, organised by Bruce Carney (Developer Marketing) and Erik Jacobson (Product Manager). The full-stops were inserted by Symbian's Legal department to ensure there were no trademark or copyright infringements.

See also

Related Research Articles

The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines both the system- and user-level application programming interfaces (API), along with command line shells and utility interfaces, for software compatibility (portability) with variants of Unix and other operating systems. POSIX is also a trademark of the IEEE. POSIX is intended to be used by both application and system developers.

Qt (software) Object-oriented framework for software development

Qt is a cross-platform software for creating graphical user interfaces as well as cross-platform applications that run on various software and hardware platforms such as Linux, Windows, macOS, Android or embedded systems with little or no change in the underlying codebase while still being a native application with native capabilities and speed.

Java Platform, Micro Edition or Java ME is a computing platform for development and deployment of portable code for embedded and mobile devices. Java ME was formerly known as Java 2 Platform, Micro Edition or J2ME. As of December 22, 2006, the Java ME source code is licensed under the GNU General Public License, and is released under the project name phoneME.

Thread (computing) Smallest sequence of programmed instructions that can be managed independently by a scheduler

In computer science, a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system. The implementation of threads and processes differs between operating systems, but in most cases a thread is a component of a process. The multiple threads of a given process may be executed concurrently, sharing resources such as memory, while different processes do not share these resources. In particular, the threads of a process share its executable code and the values of its dynamically allocated variables and non-thread-local global variables at any given time.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

System call Mechanism used by an application program to request service from the kernel of the operating system

In computing, a system call is the programmatic way in which a computer program requests a service from the kernel of the operating system on which it is executed. This may include hardware-related services, creation and execution of new processes, and communication with integral kernel services such as process scheduling. System calls provide an essential interface between a process and the operating system.

S60 (software platform) Smartphone software platform

The S60 Platform is a software platform for smartphones that runs on top of the Symbian operating system. It was created by Nokia based on the 'Pearl' user interface from Symbian Ltd. It was introduced at COMDEX in November 2001 and first shipped with the Nokia 7650 smartphone. The platform has since seen 5 updated editions. Series 60 was renamed to S60 in November 2005.

SuperWaba is a discontinued Java-like virtual machine (VM) that targets portable devices. Software developers use application programming interfaces (APIs), accessed through associated libraries and small tools, to create applications that can run within the VM on supported platforms.

MinGW, formerly mingw32, is a free and open source software development environment to create Microsoft Windows applications.

The Native POSIX Thread Library (NPTL) is an implementation of the POSIX Threads specification for the Linux operating system.

POSIX Threads, commonly known as pthreads, is an execution model that exists independently from a language, as well as a parallel execution model. It allows a program to control multiple different flows of work that overlap in time. Each flow of work is referred to as a thread, and creation and control over these flows is achieved by making calls to the POSIX Threads API. POSIX Threads is an API defined by the standard POSIX.1c, Threads extensions .

WebKit is a browser engine developed by Apple and primarily used in its Safari web browser, as well as all iOS web browsers. WebKit is also used by the BlackBerry Browser, PlayStation consoles beginning from the PS3, the Tizen mobile operating systems, and a browser included with the Amazon Kindle e-book reader. WebKit's C++ application programming interface (API) provides a set of classes to display Web content in windows, and implements browser features such as following links when clicked by the user, managing a back-forward list, and managing a history of pages recently visited.

GLib Software library

GLib is a bundle of three low-level system libraries written in C and developed mainly by GNOME. GLib's code was separated from GTK, so it can be used by software other than GNOME and has been developed in parallel ever since.

CPython is the reference implementation of the Python programming language. Written in C and Python, CPython is the default and most widely used implementation of the Python language.

Linux kernel interfaces An overview and comparison of the Linux kernal APIs and ABIs.

The Linux kernel provides several interfaces to user-space applications that are used for different purposes and that have different properties by design. There are two types of application programming interface (API) in the Linux kernel that are not to be confused: the "kernel–user space" API and the "kernel internal" API.

EKA2 is the second-generation Symbian platform real-time operating system kernel, which originated in the earlier operating system EPOC.

Symbian Discontinued mobile operating system

Symbian is a discontinued mobile operating system (OS) and computing platform designed for smartphones. Symbian was originally developed as a proprietary software OS for PDAs in 1998 by the Symbian Ltd. consortium. Symbian OS is a descendant of Psion's EPOC, and was released exclusively on ARM processors, although an unreleased x86 port existed. Symbian was used by many major mobile phone brands, like Samsung, Motorola, Sony Ericsson, and above all by Nokia. It was also prevalent in Japan by brands including Fujitsu, Sharp and Mitsubishi. As a pioneer that established the smartphone industry, it was the most popular smartphone OS on a worldwide average until the end of 2010, at a time when smartphones were in limited use, when it was overtaken by iOS and Android. It was notably less popular in North America.

Bionic is an implementation of the standard C library, developed by Google for its Android operating system. It differs from the GNU C Library (glibc) in being designed for devices with less memory and processor power than a typical Linux system. It is a combination of new code and code from FreeBSD, NetBSD, and OpenBSD released under a BSD license, rather than glibc, which uses the GNU Lesser General Public License. This difference was important in the early days of Android, when static linking was common, and is still helpful in introducing Android to software companies used to proprietary operating systems, who can be wary of the LGPL, and unclear about the differences between it and the full GNU General Public License (GPL).

Mono (software) Computer software project

Mono is a free and open-source .NET Framework-compatible software framework. Originally by Ximian, it was later acquired by Novell, and is now being led by Xamarin, a subsidiary of Microsoft and the .NET Foundation. Mono can be run on many software systems.

Mingw-w64 is a free and open source software development environment to create Microsoft Windows PE applications. It was forked in 2005–2010 from MinGW.

References

  1. Symbian introduces POSIX libraries on Symbian OS Archived 18 November 2008 at the Wayback Machine
  2. "Symbian OS to gain POSIX libraries". Archived from the original on 5 September 2012.
  3. Wilcox, Mark and others, Porting to the Symbian Platform', pages 106–107, 2009, Wiley