Unformatted text preview:

COT 4600 Operating Systems Fall 2009Lecture 6InterpretersAn abstract interpreter ProcessorsInterpreters are organized in layersExample – a calendar management programCommunication LinksThe Internet – an extreme example of what hides behind the communication link abstractionInternet Core and EdgeRouterRouter supporting QoS (Quality of Service)The network adaptorHourglass communication modelTransport and Network ServicesMultiplexing and DemultiplexingApplication, Transport, Network, and Data Link Layer ProtocolsIt's a long way to Tipperary it's a long way to go!! From Local Area to Wide Area NetworksMessage delivery to processesSockets and PortsNamingBinding and indirectionGeneric naming modelOperations on names in the abstract modelName mappingName-mapping algorithms1. Table lookupHow to determine the contextDynamic and multiple contexts2. Recursive name resolutionExample3. Multiple lookupComparing namesName discoveryComputer System OrganizationThe hardware layerCOT 4600 Operating Systems Fall 2009Dan C. MarinescuOffice: HEC 439 BOffice hours: Tu-Th 3:00-4:00 PMLecture 622Lecture 5Lecture 6 Last time:  Names and the basic abstractions 1. Storage  Today: 2. Interpreters 3. Communication Links Internet or what is behind the abstractions… Next Time Naming in computing systemsLecture 63Interpreters The active elements of a computer system Diverse  Hardware Æ Processor, Disk Controller, Display controller Software Æ script language: Javascropt, Pearl, Python text processing systems: Latex, Tex, Word  browser : Safari, Google Chrome,Thunderbird All share three major abstractions/components: Instruction reference Î tells the system where to find the next instruction Repertoire Î the set of actions (instructions) the interpreter is able to perform Environment reference Î tells the interpreter where to find the its environment, the state in which it should be to execute the next instruction3Lecture 64An abstract interpreter  The three elements allow us to describe the functioning of an interpreter regardless of its physical realization. Interrupt Î mechanism allowing an interpreter to deal with the transfer of control. Once an instruction is executed the control is passed to an interrupt handlerwhich may change the environment for the next instruction. More than a single interpreter may be present.4Lecture 655Figure 2.5 from the textbookLecture 66Processors Can execute instructions from a specific instruction set Architecture PC, IR, SP, GPR, ALU, FPR, FPU State is saved on a stack by the interrupt handler to transfer control to a different virtual processor, thread.6Lecture 67Interpreters are organized in layers Each layer issues instructions/requests for the next. A lower layer generally carries out multiple instruction for each request from the upper layer.7Lecture 688Figure 2.6 from the textbookLecture 69Example – a calendar management program Top layer a Java program with the following components: The instruction reference Î get the information provided by the keyboard and mouse and interpret them The repertoire Î add an event, delete an event, etc. The environment Î the files holding the current calendar Next layer Î JVM which interprets the program The instruction reference: next bytecode instruction JVM instructions The environment: IR, PC, etc Bottom layer Î the computer the JVM is running on 9Lecture 61010Figure 2.7 from the textbookLecture 611Communication Links Two operations SEND (link_name, outgoing_message_Buffer) RECEIVE (link_name, incoming_message_Buffer) Message Î an array of bits Physical implementation in hardware Wires Networks  Ethernet Internet The phone system11Lecture 612The Internet – an extreme example of what hides behind the communication link abstraction Internet Core and Edge The hardware Router Network adaptor Hourglass communication model Protocol stack It’s along way to Tipperary – the way a message squizes through protocol layersLecture 613Internet Core and EdgeLecture 614RouterSwitchingFabricInput PortLT - LineTerminationData Link ProtocolLookupForwardingQueuingOutput PortQueuingData Link ProtocolLTRouting ProcessorOutput PortInput PortInput PortOutput PortLecture 615ShaperPolicerClassifierOutputlinkInputflowsDispatcherand BufferAcceptanceRouter supporting QoS (Quality of Service)Lecture 616The network adaptorLecture 617TeleconferencingEmailTelnetApplication Layer Transport Layer Network Layer Physical and Data Link Layers LANsWirelessDirect Broadcast SateliiteATMDial-up ModemsVideoconferencingWWWFTPIPCableFrame RelayRealAudioTCPUDPHourglass communication modelLecture 618Transport and Network ServicesVirtual CircuitUnreliableConnectionlessServiceDatagramNetwork LayerTransport Layer(a) (b)ReliableConnection-OrientedServiceReliableConnection-OrientedServiceLecture 619Multiplexing and DemultiplexingLecture 620Application, Transport, Network, and Data Link Layer ProtocolsApplication LayerTransport LayerNetwork LayerHTTP FTP TELNETTCP UDPIPNFS RPC DNS SNTPData Link LayerEthernet WirelessSatelliteLecture 621It's a long way to Tipperary it's a long way to go!!Application Layer(Message)Transport Layer(Segment)Network Layer(Packet)Physical LayerHostHostNetwork LayerNetwork LayerRouter RouterPhysical LayerPhysical LayerPhysical LayerData Link Layer(Frame)Data Link Layer Data Link LayerNetworkApplication Layer(Message)Transport Layer(Segment)Network Layer(Packet)Data Link Layer(Frame)Lecture 622From Local Area to Wide Area NetworksPhysical LayerPhysical LayerApplication LayerTransport LayerNetwork LayerData Link LayerPhysical LayerHostApplication LayerTransport LayerNetwork LayerData Link LayerPhysical LayerHostPhysical LayerHubPhysical LayerData Link LayerBridgePhysical LayerData Link LayerBridgeNetwork LayerData Link LayerPhysical LayerNetwork LayerData Link LayerPhysical LayerRouter RouterWide Area NetworkLocal Area NetworkHubLocal Area NetworkLecture 623HostProcessNetwork Network RouterNetwork interfacePortIP address = (NetworkId, HostId)Message delivery to processesLecture 624Sockets and PortsHostProcessSocketInput message queueOutput message queuePortInternetLecture 625Naming The tree abstractions manipulate objects identified by name.  How could object A access object B: Make a copy of object B and include it in A Î use by value Safe Æ there is a


View Full Document

UCF COT 4600 - Lecture Notes

Download Lecture Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?