Polyfont recognition, a term often used with OCR software, refers to the capability of computer software to read (or recognize) more than one type of font on a document.
Portable Software
Portable software refers to a type of software that can be used on more than one hardware platform, and easily switched from one to another.
Preemptive
Preemptive is a practice of an operating system if it allows the running task to be suspended when a task of higher priority becomes ready (or a task of equal priority is granted a turn). Non-preemptive schedulers are easier to be implemented but less appropriate for embedded systems, which must be responsive to external events
Pre-Emptive Multitasking
Pre-emptive multitasking, also known as preemptive multithreading, is a form of multitasking where the scheduler can interrupt and suspend ("swap out") the currently running task in order to start or continue running ("swap in") another task. The tasks under pre-emptive multitasking can be written as though they were the only task and the scheduler decides when to swap them. The scheduler must ensure that when swapping tasks, sufficient state is saved and restored that tasks do not interfere. Preemptive multitasking allows the computer system to more reliably guarantee each process a regular "slice" of operating time. It also allows the system to rapidly deal with important external events like incoming data, which might require the immediate attention of one or another process.
Preprocessor
A preprocessor is a program that takes text and performs lexical conversions on it. The conversions may include macro substitution, conditional inclusion, and inclusion of other files.
Priority Inversion
Priority inversion is the scenario in which a high-priority task is delayed while waiting for access to a shared resource that is not even being used at the time. This causes the execution of the high priority task to be blocked until the low priority task has released the resource, effectively "inverting" the relative priorities of the two tasks. If some other medium priority task attempts to run in the interim, it will take precedence over both the low priority task and the high priority task.
Procedural Language
Procedural language, a term used in contrast to declarative language, describes a language where the programmer specifies an explicit sequences of steps to follow to produce a result. Common procedural languages include Basic, Pascal, C and Modula-2.
Procedure
Procedure, in Computer Programming, also called routine, subroutine, and function, is a section of a program that performs a specific task.
Procedure Programing
Procedural programming refers to a programming paradigm based upon the concept of the procedure call. Procedures, also known as routines, subroutines, methods, or functions simply contain a series of computational steps to be carried out. Any given procedure might be called at any point during a program's execution, including by other procedures or itself. Procedural programming is often a better choice than simple sequential or unstructured programming in many situations which involve moderate complexity or which require significant ease of maintainability.
Processor-Independent Software
Processor-independent software refers to a type of software that is independent of the processor (or CPU) on which it will be run. Most programs that can be written in a high-level language are processor independent.
Explanation : Coherent detection, also referred to as coherent demodulation, is a technique of phase locking to the carrier wave to improve detection. Knowledge of the carrier phase improves demodulator performance.