The document proposes a new agent-oriented design for operating systems (OS) that integrates concepts from multi-agent systems. It suggests defining the OS and applications as organizations of agents rather than processes. This would provide new abstractions like agents, roles, and contracts. The OS would function as a service-oriented architecture, providing functionality through services. This new design aims to improve OS goals like security, efficiency, and reliability in line with modern software trends.
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
Agent-based Operating Systems
1. Towards Organizational
Agent-based Operating
Systems
Javier Palanca
jpalanca@dsic.upv.es
Tuesday, March 10, 2009
2. Operating Systems
User
• very complex software
• critical functionality
Application
• high dependability constraints
Operating System
• efficiency constraints
Hardware
Tuesday, March 10, 2009
5. Operating Systems Goals
Security
Virtual Machine
Efficiency
Protect Resources
+ Reliability
Tuesday, March 10, 2009
6. Operating Systems Goals
Security
Virtual Machine
Efficiency
Protect Resources
+ Reliability
Tuesday, March 10, 2009
7. Multi-Agent System Issues
Security need OS policies
Efficiency VMs efficiency
+ Reliability Agent platforms manage
their own agent life-cycle
Tuesday, March 10, 2009
8. “Operating Systems designs are
far away from current trends in
software engineering”
Tuesday, March 10, 2009
9. “Operating Systems designs are
far away from current trends in
software engineering”
Old abstractions
Process
File
Permissions
Monolithic applications
Tuesday, March 10, 2009
10. “Operating Systems designs are
far away from current trends in
software engineering”
Computing as Interaction
Service-oriented systems
Autonomous systems
Cloud computing
Grid systems
Multi-agent systems
Tuesday, March 10, 2009
12. “Integrate concepts of the Multi-
Agent System technology as new
abstractions of the OS”
Tuesday, March 10, 2009
13. “Integrate concepts of the Multi-
Agent System technology as new
abstractions of the OS”
Definition of new abstractions:
- Process vs Agent
- Applications vs Organizations
- Memory vs Knowledge Base
- Permissions vs Contracts and agreements
- etc…
Tuesday, March 10, 2009
14. “Integrate concepts of the Multi-
Agent System technology as new
abstractions of the OS”
Tuesday, March 10, 2009
15. “Integrate concepts of the Multi-
Agent System technology as new
abstractions of the OS”
Tuesday, March 10, 2009
16. “Integrate concepts of the Multi-
Agent System technology as new
abstractions of the OS”
The agent model
- Complex computational entity
- Driven by goals and beliefs
- Reactive, Proactive, Autonomous and Social
Tuesday, March 10, 2009
18. Objectives
‣ Make a quality upgrade in OS design
‣ Change the way the applications are designed,
developed and executed
‣ Make OS autonomous, proactive and social
‣ Integrate critical middleware services inside the OS
Tuesday, March 10, 2009
20. Agent-oriented OS
Applications are sets of organized agents
Service Oriented Architecture
Goal-based Computing
Transactions controlled by Contracts
Tuesday, March 10, 2009
37. Organization Model
Functional View (Mission)
To maximize
utilization
Organizations
of resources
management
A
S
To protect
resources
GT
OProduces
Pu
A Operations and
rsu
GT Resources
es
Server
Pur
racts
sue management
e
OInt
s
To abstract
S
OS
Pursues
the hardware
GT
OI
s
A e nte
rsu rac
u OUses
TP ts
s
G
ue
To manage the Client
rs
Open-services
OOffers
orgs. life-cycle
Pu
management
GT
A
S
To give support
to open-services
A
Contracts
Tuesday, March 10, 2009
39. Organization Model
A
Structural View
Client
OC
ont
a insA
A -Ag
e nt
OContainsA-Agen
t
Server
OS
t
gen
A
sA-
A ain
OCont
t
Con e
ol OC
O
sR ont
ain ains
Manager nt R
ainsRol
ole
Co
O
e
Service
Organization Manager
Facilitator
Member
Contracts
Organization Service Operations Resources
Manager
Manager Manager Facilitator Facilitator
Tuesday, March 10, 2009
40. Organization Model
External Functional View Operations
Facilitator
Service
Organization Manager Service
Organization
Manager Facilitator
Member
Resources
Facilitator
OS
Tuesday, March 10, 2009
41. Organization Model
External Functional View Operations
Facilitator
Service
Organization Manager Service
Organization
Manager Facilitator
Member
WFProvides
Resources
WF
WFPro
WF
Us Facilitator
ses
es
es
s
U
FU
WFU
W
ses
s
W
vides
vide
FU
s
es
Pro
WF
Organizations Open-services Resources
Management Management management
S S S
OProvides
s
e
OP vid
ro
Pro
vid O
es
OS
Tuesday, March 10, 2009
43. Conclusions
Proposal of a new way of designing OS
Use of the MAS paradigm and agent organizations
Integrate MAS middleware inside OS
Better functionality w/o imposed limitations:
security policies, resources and user management...
New OS abstractions: agents, roles, contracts
Tuesday, March 10, 2009
Notas do Editor
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.
This support can be included inside the Operating System.
it improves the
efficiency in the context changes, memory management and other
parameters typical of the Operating System performance
This way, the computational entities of the system not only can
execute code in a sequential way, but can also be aware of their
environment and take proactive actions without external interaction.