IP Library Granted Patent US 8,984,529
Granted Patent B2
US 8,984,529 · App. 11/570,281 · Granted Mar 17, 2015

Computing device having a multiple process architecture for running plug-in code modules

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,984,529
App. No.
11/570,281
Granted
Mar 17, 2015
Kind
B2
Abstract

A computing device is provided with a multiple process architecture for running plug-in code modules in their own dedicated processes for increasing both the security and reliability of software systems using plug-in design patterns. In this regard, the computing device may have a process-based security model that permits a software application to utilize a plug-in module having security attributes different to or incompatible with those of the application by invoking the plug-in module as a separate process. Additional and alternative apparatuses and methods are also provided.

Claims (22)

1. An apparatus comprising a computing device, the computing device being configured to cause the apparatus to at least:

implement a process-based security model on the apparatus, wherein the process-based security model includes at least one set of permissions that defines allowable activities and accessible resources for a process;

implement a software application having security attributes, wherein the software application is invoked as a first process and wherein the first process is a separately executing process;

implement a plug-in module having security attributes different to, or incompatible with, the security attributes of the application;

invoke the plug-in module as a second process, the second process being a separate process from the first process of the software application, wherein the second process is a separately executing process;

wherein the software application seeking to invoke the plug-in module verifies the security attributes of the plug-in module before invoking the plug-in module and wherein the plug-in module verifies the security attributes of the application invoking the plug-in module; and

pass information from the software application to the plug-in module via a data structure before the plug-in is executed, wherein the information is used as handles to system resources or other objects.

2. A method comprising:

implementing a process-based security model on a computing device, wherein the process-based security model includes at least one set of permissions that defines allowable activities and accessible resources for a process;

implementing a software application having security attributes, wherein the software application is invoked as a first process and wherein the first process is a separately executing process;

implementing a plug-in module having security attributes different to, or incompatible with, the security attributes of the software application;

invoking the plug-in module as a second process, the second process being a separate process from the first process of the application, wherein the second process is a separately executing process;

wherein the software application seeking to invoke the plug-in module verifies the security attributes of the plug-in module before invoking the plug-in module and wherein the plug-in module verifies the security attributes of the software application invoking the plug-in module; and

passing information from the software application to the plug-in module via a data structure before the plug-in is executed, wherein the information is used as handles to system resources or other objects.

3. An apparatus comprising a computing device, the computing device being configured to cause the apparatus to at least:

implement an operating system having a process-based security model, wherein the process-based security model includes at least one set of permissions that defines allowable activities and accessible resources for a process;

implement a software application having security attributes, wherein the software application is invoked as a first process and wherein the first process is a separately executing process;

implement a plug-in module having security attributes different to, or incompatible with, the security attributes of the software application;

invoke the plug-in module as a second process, the second process being a separate process from the first process of the application, wherein the second process is a separately executing process;

wherein the software application seeking to invoke the plug-in module verifies the security attributes of the plug-in module before invoking the plug-in module and wherein the plug-in module verifies the security attributes of the application invoking the plug-in module; and

pass information from the software application to the plug-in module via a data structure before the plug-in is executed, wherein the information is used as handles to system resources or other objects.

4. The apparatus of claim 3 , wherein the computing device configured to implement the operating system includes being configured to implement the operating system having a process-based security model, the process-based security model being configured to use a process for implementing security features and memory protection.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2015
From: NOKIA CORPORATION
To: NOKIA TECHNOLOGIES OY
Reel/Frame 035280/0093 →