<?xml version="1.0" encoding="UTF-8"?>
<uml:Package xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_CNQKwWC3Ed-C1YUm0CtSmw" name="myclasses">
  <elementImport xmi:id="_CPltEGC3Ed-C1YUm0CtSmw">
    <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
  </elementImport>
  <elementImport xmi:id="_CPuP8GC3Ed-C1YUm0CtSmw">
    <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
  </elementImport>
  <elementImport xmi:id="_CPuP8WC3Ed-C1YUm0CtSmw">
    <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/>
  </elementImport>
  <elementImport xmi:id="_CPuP8mC3Ed-C1YUm0CtSmw">
    <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
  </elementImport>
  <packagedElement xmi:type="uml:Class" xmi:id="_HpvBkGC3Ed-C1YUm0CtSmw" name="Process">
    <ownedAttribute xmi:id="_pmHngGC3Ed-C1YUm0CtSmw" name="my_pc" aggregation="composite"/>
    <ownedAttribute xmi:id="_tSZE8GC3Ed-C1YUm0CtSmw" name="my_max_steps" aggregation="composite"/>
    <ownedAttribute xmi:id="_VgFA8GMVEd-ztsqkfKIVAg" name="my_status" aggregation="composite"/>
    <ownedOperation xmi:id="_6NnlQGC3Ed-C1YUm0CtSmw" name="getPC">
      <ownedParameter xmi:id="_-P5u8GC3Ed-C1YUm0CtSmw" direction="return"/>
    </ownedOperation>
    <ownedOperation xmi:id="_ICJmwGMWEd-ztsqkfKIVAg" name="getStatus">
      <ownedParameter xmi:id="_Jf9BgGMWEd-ztsqkfKIVAg" direction="return"/>
    </ownedOperation>
    <ownedOperation xmi:id="_Kvc6gGMWEd-ztsqkfKIVAg" name="getMaxSteps">
      <ownedParameter xmi:id="_MVedIGMWEd-ztsqkfKIVAg" direction="return"/>
    </ownedOperation>
    <ownedOperation xmi:id="_QLcCEGMWEd-ztsqkfKIVAg" name="getProcessAction">
      <ownedParameter xmi:id="_XyBY8GMWEd-ztsqkfKIVAg" direction="return"/>
      <ownedParameter xmi:id="_XyBY8WMWEd-ztsqkfKIVAg" name="aStepNumber"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_NPOqcGC3Ed-C1YUm0CtSmw" name="IODevices implements Observable">
    <ownedAttribute xmi:id="_LoK_IGVvEd-WvuD4L3Jqjw" name="my_time" aggregation="composite"/>
    <ownedOperation xmi:id="_Mf8UoGVvEd-WvuD4L3Jqjw" name="notifyObservers">
      <ownedParameter xmi:id="_Nf9nMGVvEd-WvuD4L3Jqjw" direction="return"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_Sb0EEGC3Ed-C1YUm0CtSmw" name="ShareMemory">
    <ownedAttribute xmi:id="_0-ZzkGMWEd-ztsqkfKIVAg" name="my_mem_array" aggregation="composite"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_T6x8cGC3Ed-C1YUm0CtSmw" name="Scheduler">
    <ownedAttribute xmi:id="_mTjc0GMjEd-ztsqkfKIVAg" name="my_ready_queue" aggregation="composite"/>
    <ownedAttribute xmi:id="_o507gGMjEd-ztsqkfKIVAg" name="my_io_blocked_queue" aggregation="composite"/>
    <ownedOperation xmi:id="_4Eh3AGMWEd-ztsqkfKIVAg" name="getNextRunningProcess">
      <ownedParameter xmi:id="_7PhzYGMWEd-ztsqkfKIVAg" direction="return"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_VI-08GC3Ed-C1YUm0CtSmw" name="CPU implemets Observer">
    <ownedAttribute xmi:id="_cdz10GMaEd-ztsqkfKIVAg" name="my_counter" aggregation="composite"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Class" xmi:id="_WRsJcGC3Ed-C1YUm0CtSmw" name="SystemTimer implements Observable">
    <ownedAttribute xmi:id="_uNYVEGVuEd-WvuD4L3Jqjw" name="my_time" aggregation="composite"/>
    <ownedOperation xmi:id="_wcfQ8GVuEd-WvuD4L3Jqjw" name="notifyObservers">
      <ownedParameter xmi:id="_IvAZoGVvEd-WvuD4L3Jqjw" direction="return"/>
    </ownedOperation>
  </packagedElement>
  <packagedElement xmi:type="uml:Enumeration" xmi:id="_cjcgkGMWEd-ztsqkfKIVAg" name="ProcessAction">
    <ownedLiteral xmi:id="_kMNowGMWEd-ztsqkfKIVAg" name="CAL1"/>
    <ownedLiteral xmi:id="_mHV4sGMWEd-ztsqkfKIVAg" name="CAL2"/>
    <ownedLiteral xmi:id="_mM-moGMWEd-ztsqkfKIVAg" name="PRODUCE"/>
    <ownedLiteral xmi:id="_mYcPwGMWEd-ztsqkfKIVAg" name="CONSUME"/>
    <ownedLiteral xmi:id="_qPEjEGMWEd-ztsqkfKIVAg" name="IOREQUEST"/>
    <ownedLiteral xmi:id="_GAvnIGVwEd-WvuD4L3Jqjw" name="NOACTION"/>
    <ownedLiteral xmi:id="_rCgFwGV0Ed-WvuD4L3Jqjw" name="KEYBOARDINPUT"/>
  </packagedElement>
  <packagedElement xmi:type="uml:Enumeration" xmi:id="_tppHIGV0Ed-WvuD4L3Jqjw" name="Status">
    <ownedLiteral xmi:id="_wEcVoGV0Ed-WvuD4L3Jqjw" name="READY"/>
    <ownedLiteral xmi:id="_wJspEGV0Ed-WvuD4L3Jqjw" name="BLOCKED"/>
  </packagedElement>
</uml:Package>
