SlideShare uma empresa Scribd logo
1 de 17
ExtendedPortal: Safe violation of the
assignment rule and single parent rule
enforcement
     Pablo Basanta-Val, Marisol García-Valls, Iria Estevez-
              Ayres and Carlos Delgado-Kloos

             DREQUIEM LAB. / GAST GROUP
              Universidad Carlos III de Madrid
          http://www.it.uc3m.es/drequiem/




                                                              1
Outline of the presentation
  Introduction
  Related work
  The problem of using the portals
  ExtendedPortal
    API
    Internal   implementations
  Thecost of the portals
  Conclusions


                                  2
Introduction
    The assignment and single parent rules of RTSJ
        One of the mayor differences between plain Java and the
         region based models
        Some new programming patterns are required: special
         programming techniques, the copy pattern, the portal
    Are those techniques sufficient?
        It seams that one of the goals of RTSJ 1.1 is to provide a
         mechanism able to violate the assignment
    Some applications are to hard to code
        One ironic example: the implementation of a region based
         distributed middleware
        Implementations results, mainly produced in the context of
         RTZen, come with a new set of programming paradigms and
         also some authors, Borg, suggested the necessity of having
         new mechanisms.

                                                        3
Introduction: our experience
  Implementing    DREQUIEMI a RTRMI approach
   to the distributed real-time Java
      There easy cases where a mechanism to violate
       the single parent rule is not necessary
            When is allocated in scoped memory
      But the general case it is no so easy
            Objects allocated in high level scoped memory instances
             whose access requires many linked pointers
  So, we decided to developed our extension:
   extended portal
      References are always write, weak and hard
       semantics


                                                      4
Some related work
    Patterns to program with the scoped memory
        Corsaro [JTRES04]: singleton, leader-follower, tunnels
        Benotwitz [JTRES03]: use of serialization mechanism to
         perform automatic copies
        The copy pattern: if you cannot hold a reference just maintain
         a copy
        Pizlo [ISORC04]: the usage of portals and wedge threads to
         avoid the destruction of regions
    They are 100% compatible with the current reference
     model
        The portal mechanism is used to avoid the assignment rule
         limitations



                                                       5
and more closer related work
    Borg [JTRES04] reference objects
        Improved navigation mechanism
        But no possibility to access to the stored reference and no hard
         semantics
    jTime pinning-scopes [JTIME02]
        Improved navigation, no linked portals need to access the creation
         context
        But the reference in the type of references that may be maintained by
         the model
    Higuera-Toledano [ISORC06, JTRES04] region model
        A medium level navigation mechanism that enforces the single
         parent rule
        But silent about the violation of the assignment rule
    Extended portals
        Medium level navigation, enforcing the single parent rule
        Any reference may be stored in a extended portal


                                                             6
The complexity of accessing to and
object allocated using the portal




  Complexity of accessing to an arbitrary object using portals: Θ(n)
  where n the nesting level
                                                       7
ExtendedPortal API




  -setPortal never fails
  -getPortal does not grant access in unsafe
    situations
  -enter may be used to access to the creation
    context of an object
                                          8
Internals: Data structure
  Extremely    easy
    Pointers   to get the reference
       One object attribute
       One native reference

   A  scope stack to remember the creation
     context of the reference
  Main   operations done over them:
    setting,
            unsetting, getting, weakening,
     hardening an extended portal

                                       9
Internals: setting the portal




  All regions of the scope stack are incremented –(2):+1 - to forbid the
  prior to time destruction of the object.

                                                       10
Internals: unsetting the portal




  All regions of the scope stack are decremented -(2):-1 - when the
  reference is hard.
                                                     11
Internals: getting the portal




   Only if the creation context of c is the invoking thread scope stack
   one, the access is granted. LIMITATION.
                                                      12
Internals: Entering the portal




   It may used to ensure that the object access never fails, entering
   the creation context before reading the reference
                                                     13
Internals: Weakening a hard
reference




  As in the destruction, the scope stack is decremented in order to allow the reference destruction but
  the reference and the scope stack are not destroyed.




                                                                               14
Internals: Hardening a weak
reference




   As in the destruction, the scope stack is decremented in order to
   allow the reference destruction.
                                                     15
The cost of having extended portals

  Performance
      Not a really issue
           In DREQUIEMI one get and one enter per remote
            invocation. Many assignment rule verifications done in
            between.
  Garbage        collection detection
    Hard references: They may produce region lekages
    Weak references: No problems.

    Note: current portals does not produce region leaks




                                                      16
Conclusions and future work
    The portals sometimes are hard when we want to
     violate the single parent rule an when want to access
     to objects allocated within scoped memory

    Extended portals provide a reasonable mechanism to
     access to of a reference but at the cost of introducing
     more memory leaks
        A new potential type of memory leak: the leakage of regions

    Some ongoing research
        Θ(1) implementation support
        enter removal


                                                      17

Mais conteúdo relacionado

Mais procurados

High performance and flexible networking
High performance and flexible networkingHigh performance and flexible networking
High performance and flexible networkingJohn Berkmans
 
Software Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_truptiSoftware Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_truptitrups7778
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SAMeh Zaghloul
 
Basic-networking-hardware
Basic-networking-hardwareBasic-networking-hardware
Basic-networking-hardwareIsus Isusay
 
Network Virtualization Architectural & Technological aspects
Network Virtualization Architectural & Technological aspectsNetwork Virtualization Architectural & Technological aspects
Network Virtualization Architectural & Technological aspectsdeshpandeamrut
 
Digital Kniznica 09 Ben Osteen Oxford
Digital Kniznica 09 Ben Osteen OxfordDigital Kniznica 09 Ben Osteen Oxford
Digital Kniznica 09 Ben Osteen Oxfordguest045ab43
 
Always Offline: Delay-Tolerant Networking for the Internet of Things
Always Offline: Delay-Tolerant Networking for the Internet of ThingsAlways Offline: Delay-Tolerant Networking for the Internet of Things
Always Offline: Delay-Tolerant Networking for the Internet of ThingsDaniel Austin
 
SDN: A New Approach to Networking Technology
SDN: A New Approach to Networking TechnologySDN: A New Approach to Networking Technology
SDN: A New Approach to Networking TechnologyIRJET Journal
 
Presentation11
Presentation11Presentation11
Presentation11KellyCheah
 
VMworld 2013: An Introduction to Network Virtualization
VMworld 2013: An Introduction to Network Virtualization VMworld 2013: An Introduction to Network Virtualization
VMworld 2013: An Introduction to Network Virtualization VMworld
 
Large-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and FinanceLarge-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and FinanceRick Warren
 
Content aware p2 p video streaming with lowlatency
Content aware p2 p video streaming with lowlatencyContent aware p2 p video streaming with lowlatency
Content aware p2 p video streaming with lowlatencyxiaoran815
 
Fiware: Connecting to robots
Fiware: Connecting to robotsFiware: Connecting to robots
Fiware: Connecting to robotsJaime Martin Losa
 
Three reasons why Networking is a pain in the IaaS
Three reasons why Networking is a pain in the IaaSThree reasons why Networking is a pain in the IaaS
Three reasons why Networking is a pain in the IaaSbradhedlund
 
Introduction To SPOT
Introduction To SPOTIntroduction To SPOT
Introduction To SPOTpauldeng
 
Lecture12 ie321 dr_atifshahzad - networks
Lecture12 ie321 dr_atifshahzad - networksLecture12 ie321 dr_atifshahzad - networks
Lecture12 ie321 dr_atifshahzad - networksAtif Shahzad
 
An experimental study of the skype peer to-peer vo ip system
An experimental study of the skype peer to-peer vo ip systemAn experimental study of the skype peer to-peer vo ip system
An experimental study of the skype peer to-peer vo ip systemxiaoran815
 

Mais procurados (20)

High performance and flexible networking
High performance and flexible networkingHigh performance and flexible networking
High performance and flexible networking
 
Network Virtualization
Network Virtualization Network Virtualization
Network Virtualization
 
Software Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_truptiSoftware Defined Networking(SDN) and practical implementation_trupti
Software Defined Networking(SDN) and practical implementation_trupti
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
 
Basic-networking-hardware
Basic-networking-hardwareBasic-networking-hardware
Basic-networking-hardware
 
Network Virtualization Architectural & Technological aspects
Network Virtualization Architectural & Technological aspectsNetwork Virtualization Architectural & Technological aspects
Network Virtualization Architectural & Technological aspects
 
Bcs 052 solved assignment
Bcs 052 solved assignmentBcs 052 solved assignment
Bcs 052 solved assignment
 
Peer to peer system
Peer to peer systemPeer to peer system
Peer to peer system
 
Digital Kniznica 09 Ben Osteen Oxford
Digital Kniznica 09 Ben Osteen OxfordDigital Kniznica 09 Ben Osteen Oxford
Digital Kniznica 09 Ben Osteen Oxford
 
Always Offline: Delay-Tolerant Networking for the Internet of Things
Always Offline: Delay-Tolerant Networking for the Internet of ThingsAlways Offline: Delay-Tolerant Networking for the Internet of Things
Always Offline: Delay-Tolerant Networking for the Internet of Things
 
SDN: A New Approach to Networking Technology
SDN: A New Approach to Networking TechnologySDN: A New Approach to Networking Technology
SDN: A New Approach to Networking Technology
 
Presentation11
Presentation11Presentation11
Presentation11
 
VMworld 2013: An Introduction to Network Virtualization
VMworld 2013: An Introduction to Network Virtualization VMworld 2013: An Introduction to Network Virtualization
VMworld 2013: An Introduction to Network Virtualization
 
Large-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and FinanceLarge-Scale System Integration with DDS for SCADA, C2, and Finance
Large-Scale System Integration with DDS for SCADA, C2, and Finance
 
Content aware p2 p video streaming with lowlatency
Content aware p2 p video streaming with lowlatencyContent aware p2 p video streaming with lowlatency
Content aware p2 p video streaming with lowlatency
 
Fiware: Connecting to robots
Fiware: Connecting to robotsFiware: Connecting to robots
Fiware: Connecting to robots
 
Three reasons why Networking is a pain in the IaaS
Three reasons why Networking is a pain in the IaaSThree reasons why Networking is a pain in the IaaS
Three reasons why Networking is a pain in the IaaS
 
Introduction To SPOT
Introduction To SPOTIntroduction To SPOT
Introduction To SPOT
 
Lecture12 ie321 dr_atifshahzad - networks
Lecture12 ie321 dr_atifshahzad - networksLecture12 ie321 dr_atifshahzad - networks
Lecture12 ie321 dr_atifshahzad - networks
 
An experimental study of the skype peer to-peer vo ip system
An experimental study of the skype peer to-peer vo ip systemAn experimental study of the skype peer to-peer vo ip system
An experimental study of the skype peer to-peer vo ip system
 

Semelhante a ExtendedPortal: Safe violation of the assignment and single parent rules

Common ASP.NET Design Patterns - Telerik India DevCon 2013
Common ASP.NET Design Patterns - Telerik India DevCon 2013Common ASP.NET Design Patterns - Telerik India DevCon 2013
Common ASP.NET Design Patterns - Telerik India DevCon 2013Steven Smith
 
Hands on kubernetes_container_orchestration
Hands on kubernetes_container_orchestrationHands on kubernetes_container_orchestration
Hands on kubernetes_container_orchestrationAmir Hossein Sorouri
 
Rain Technlogy by sumit kumar
Rain Technlogy by sumit kumarRain Technlogy by sumit kumar
Rain Technlogy by sumit kumarSumit Kumar
 
StorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UK
StorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UKStorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UK
StorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UKStorageOS
 
Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications OpenEBS
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Timothy St. Clair
 
The architecture of oak
The architecture of oakThe architecture of oak
The architecture of oakMichael Dürig
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSSteve Wong
 
indroduction of rain technology
indroduction of rain technologyindroduction of rain technology
indroduction of rain technologynarayan dudhe
 
Oracle RAC Internals - The Cache Fusion Edition
Oracle RAC Internals - The Cache Fusion EditionOracle RAC Internals - The Cache Fusion Edition
Oracle RAC Internals - The Cache Fusion EditionMarkus Michalewicz
 
An operational view into docker registry with scalability, access control and...
An operational view into docker registry with scalability, access control and...An operational view into docker registry with scalability, access control and...
An operational view into docker registry with scalability, access control and...Conference Papers
 
Introductio to Docker and usage in HPC applications
Introductio to Docker and usage in HPC applicationsIntroductio to Docker and usage in HPC applications
Introductio to Docker and usage in HPC applicationsRichie Varghese
 
Ippevent : openshift Introduction
Ippevent : openshift IntroductionIppevent : openshift Introduction
Ippevent : openshift Introductionkanedafromparis
 
Understanding Kubernetes
Understanding KubernetesUnderstanding Kubernetes
Understanding KubernetesTu Pham
 

Semelhante a ExtendedPortal: Safe violation of the assignment and single parent rules (20)

Project Voldemort
Project VoldemortProject Voldemort
Project Voldemort
 
Dsohowto
DsohowtoDsohowto
Dsohowto
 
Common ASP.NET Design Patterns - Telerik India DevCon 2013
Common ASP.NET Design Patterns - Telerik India DevCon 2013Common ASP.NET Design Patterns - Telerik India DevCon 2013
Common ASP.NET Design Patterns - Telerik India DevCon 2013
 
Hands on kubernetes_container_orchestration
Hands on kubernetes_container_orchestrationHands on kubernetes_container_orchestration
Hands on kubernetes_container_orchestration
 
Rain Technlogy by sumit kumar
Rain Technlogy by sumit kumarRain Technlogy by sumit kumar
Rain Technlogy by sumit kumar
 
StorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UK
StorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UKStorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UK
StorageOS, Storage for Containers Shouldn't Be Annoying at Container Camp UK
 
Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.
 
The architecture of oak
The architecture of oakThe architecture of oak
The architecture of oak
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OS
 
Rain technology
Rain technologyRain technology
Rain technology
 
indroduction of rain technology
indroduction of rain technologyindroduction of rain technology
indroduction of rain technology
 
RESTful Triple Spaces of Things
RESTful Triple Spaces of ThingsRESTful Triple Spaces of Things
RESTful Triple Spaces of Things
 
Oracle RAC Internals - The Cache Fusion Edition
Oracle RAC Internals - The Cache Fusion EditionOracle RAC Internals - The Cache Fusion Edition
Oracle RAC Internals - The Cache Fusion Edition
 
An operational view into docker registry with scalability, access control and...
An operational view into docker registry with scalability, access control and...An operational view into docker registry with scalability, access control and...
An operational view into docker registry with scalability, access control and...
 
Introductio to Docker and usage in HPC applications
Introductio to Docker and usage in HPC applicationsIntroductio to Docker and usage in HPC applications
Introductio to Docker and usage in HPC applications
 
Clean sw 3_architecture
Clean sw 3_architectureClean sw 3_architecture
Clean sw 3_architecture
 
Ippevent : openshift Introduction
Ippevent : openshift IntroductionIppevent : openshift Introduction
Ippevent : openshift Introduction
 
Understanding Kubernetes
Understanding KubernetesUnderstanding Kubernetes
Understanding Kubernetes
 
Hack the whale
Hack the whaleHack the whale
Hack the whale
 

Mais de Universidad Carlos III de Madrid

Towards a garbage collector for distributed real-time Java
Towards a garbage collector for distributed real-time JavaTowards a garbage collector for distributed real-time Java
Towards a garbage collector for distributed real-time JavaUniversidad Carlos III de Madrid
 
Towards a real-time reconfiguration service for distributed Java
Towards a real-time reconfiguration service for distributed JavaTowards a real-time reconfiguration service for distributed Java
Towards a real-time reconfiguration service for distributed JavaUniversidad Carlos III de Madrid
 
A synchronous scheduling service for distributed real-time Java
A synchronous scheduling service for distributed real-time JavaA synchronous scheduling service for distributed real-time Java
A synchronous scheduling service for distributed real-time JavaUniversidad Carlos III de Madrid
 
Simple asynchronous remote invocations for distributed real-time Java
Simple asynchronous remote invocations for distributed real-time JavaSimple asynchronous remote invocations for distributed real-time Java
Simple asynchronous remote invocations for distributed real-time JavaUniversidad Carlos III de Madrid
 

Mais de Universidad Carlos III de Madrid (13)

Tecnicas y extensiones para Java de tiempo real
Tecnicas y extensiones para Java de tiempo realTecnicas y extensiones para Java de tiempo real
Tecnicas y extensiones para Java de tiempo real
 
Towards a garbage collector for distributed real-time Java
Towards a garbage collector for distributed real-time JavaTowards a garbage collector for distributed real-time Java
Towards a garbage collector for distributed real-time Java
 
A simple data muling protocol
A simple data muling protocolA simple data muling protocol
A simple data muling protocol
 
Mejoras a la predictibilidad de la tecnología Java EE
Mejoras a la predictibilidad de la tecnología Java EEMejoras a la predictibilidad de la tecnología Java EE
Mejoras a la predictibilidad de la tecnología Java EE
 
Remote Memory Areas for distributed real-time Java
Remote Memory Areas for distributed real-time JavaRemote Memory Areas for distributed real-time Java
Remote Memory Areas for distributed real-time Java
 
Towards a real-time reconfiguration service for distributed Java
Towards a real-time reconfiguration service for distributed JavaTowards a real-time reconfiguration service for distributed Java
Towards a real-time reconfiguration service for distributed Java
 
Fine
FineFine
Fine
 
Basanta jtr2009
Basanta jtr2009Basanta jtr2009
Basanta jtr2009
 
No Heap Remote Objects for Distributed real-time Java
No Heap Remote Objects for Distributed real-time JavaNo Heap Remote Objects for Distributed real-time Java
No Heap Remote Objects for Distributed real-time Java
 
A synchronous scheduling service for distributed real-time Java
A synchronous scheduling service for distributed real-time JavaA synchronous scheduling service for distributed real-time Java
A synchronous scheduling service for distributed real-time Java
 
Simple asynchronous remote invocations for distributed real-time Java
Simple asynchronous remote invocations for distributed real-time JavaSimple asynchronous remote invocations for distributed real-time Java
Simple asynchronous remote invocations for distributed real-time Java
 
Enhancing the region model of RTSJ
Enhancing the region model of RTSJEnhancing the region model of RTSJ
Enhancing the region model of RTSJ
 
2011.jtr.pbasanta.
2011.jtr.pbasanta.2011.jtr.pbasanta.
2011.jtr.pbasanta.
 

Último

Using Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea DevelopmentUsing Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea Developmentchesterberbo7
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITWQ-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITWQuiz Club NITW
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Association for Project Management
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1GloryAnnCastre1
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4JOYLYNSAMANIEGO
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxMichelleTuguinay1
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...Nguyen Thanh Tu Collection
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfPatidar M
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdfMr Bounab Samir
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptxmary850239
 

Último (20)

Using Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea DevelopmentUsing Grammatical Signals Suitable to Patterns of Idea Development
Using Grammatical Signals Suitable to Patterns of Idea Development
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITWQ-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
Q-Factor HISPOL Quiz-6th April 2024, Quiz Club NITW
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1
 
Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4Daily Lesson Plan in Mathematics Quarter 4
Daily Lesson Plan in Mathematics Quarter 4
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
prashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Professionprashanth updated resume 2024 for Teaching Profession
prashanth updated resume 2024 for Teaching Profession
 
Active Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdfActive Learning Strategies (in short ALS).pdf
Active Learning Strategies (in short ALS).pdf
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdf
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 

ExtendedPortal: Safe violation of the assignment and single parent rules

  • 1. ExtendedPortal: Safe violation of the assignment rule and single parent rule enforcement Pablo Basanta-Val, Marisol García-Valls, Iria Estevez- Ayres and Carlos Delgado-Kloos DREQUIEM LAB. / GAST GROUP Universidad Carlos III de Madrid http://www.it.uc3m.es/drequiem/ 1
  • 2. Outline of the presentation  Introduction  Related work  The problem of using the portals  ExtendedPortal  API  Internal implementations  Thecost of the portals  Conclusions 2
  • 3. Introduction  The assignment and single parent rules of RTSJ  One of the mayor differences between plain Java and the region based models  Some new programming patterns are required: special programming techniques, the copy pattern, the portal  Are those techniques sufficient?  It seams that one of the goals of RTSJ 1.1 is to provide a mechanism able to violate the assignment  Some applications are to hard to code  One ironic example: the implementation of a region based distributed middleware  Implementations results, mainly produced in the context of RTZen, come with a new set of programming paradigms and also some authors, Borg, suggested the necessity of having new mechanisms. 3
  • 4. Introduction: our experience  Implementing DREQUIEMI a RTRMI approach to the distributed real-time Java  There easy cases where a mechanism to violate the single parent rule is not necessary  When is allocated in scoped memory  But the general case it is no so easy  Objects allocated in high level scoped memory instances whose access requires many linked pointers  So, we decided to developed our extension: extended portal  References are always write, weak and hard semantics 4
  • 5. Some related work  Patterns to program with the scoped memory  Corsaro [JTRES04]: singleton, leader-follower, tunnels  Benotwitz [JTRES03]: use of serialization mechanism to perform automatic copies  The copy pattern: if you cannot hold a reference just maintain a copy  Pizlo [ISORC04]: the usage of portals and wedge threads to avoid the destruction of regions  They are 100% compatible with the current reference model  The portal mechanism is used to avoid the assignment rule limitations 5
  • 6. and more closer related work  Borg [JTRES04] reference objects  Improved navigation mechanism  But no possibility to access to the stored reference and no hard semantics  jTime pinning-scopes [JTIME02]  Improved navigation, no linked portals need to access the creation context  But the reference in the type of references that may be maintained by the model  Higuera-Toledano [ISORC06, JTRES04] region model  A medium level navigation mechanism that enforces the single parent rule  But silent about the violation of the assignment rule  Extended portals  Medium level navigation, enforcing the single parent rule  Any reference may be stored in a extended portal 6
  • 7. The complexity of accessing to and object allocated using the portal Complexity of accessing to an arbitrary object using portals: Θ(n) where n the nesting level 7
  • 8. ExtendedPortal API -setPortal never fails -getPortal does not grant access in unsafe situations -enter may be used to access to the creation context of an object 8
  • 9. Internals: Data structure  Extremely easy  Pointers to get the reference  One object attribute  One native reference A scope stack to remember the creation context of the reference  Main operations done over them:  setting, unsetting, getting, weakening, hardening an extended portal 9
  • 10. Internals: setting the portal All regions of the scope stack are incremented –(2):+1 - to forbid the prior to time destruction of the object. 10
  • 11. Internals: unsetting the portal All regions of the scope stack are decremented -(2):-1 - when the reference is hard. 11
  • 12. Internals: getting the portal Only if the creation context of c is the invoking thread scope stack one, the access is granted. LIMITATION. 12
  • 13. Internals: Entering the portal It may used to ensure that the object access never fails, entering the creation context before reading the reference 13
  • 14. Internals: Weakening a hard reference As in the destruction, the scope stack is decremented in order to allow the reference destruction but the reference and the scope stack are not destroyed. 14
  • 15. Internals: Hardening a weak reference As in the destruction, the scope stack is decremented in order to allow the reference destruction. 15
  • 16. The cost of having extended portals  Performance  Not a really issue  In DREQUIEMI one get and one enter per remote invocation. Many assignment rule verifications done in between.  Garbage collection detection  Hard references: They may produce region lekages  Weak references: No problems.  Note: current portals does not produce region leaks 16
  • 17. Conclusions and future work  The portals sometimes are hard when we want to violate the single parent rule an when want to access to objects allocated within scoped memory  Extended portals provide a reasonable mechanism to access to of a reference but at the cost of introducing more memory leaks  A new potential type of memory leak: the leakage of regions  Some ongoing research  Θ(1) implementation support  enter removal 17