| Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994. |
....jitter sensitive tasks. At its most basic form, processor bandwidth may be expressed as a percentage of the CPU. Whilst this is useful in itself, it does not take into account the fact that di#erent tasks will have di#erent requirements for the frequency at which they receive access to the CPU. Black94] presents a scheduler that divides up the available CPU time into fixed length periods of time called jubilees. Within each jubilee, time is allotted to all processes according to their allocated percentage share. This provides a very simple run time scheduling algorithm, but requires that all ....
....a machine code stub is synthesised. Such stubs are cached, and reused later if a method with an equivalent bytecode sequence is processed. The low level bytecode used to describe marshalling actions allows significant code sharing to occur between stubs. A second form of IPC is the I O Channel [Black94, Barham96] this supports bu#ered asynchronous communication between domains using three areas of shared memory. The first area of memory contains the data bu#ers being transferred; the second is used as a FIFO from the consumer to the producer, for passing descriptors indicating empty bu#ers ....
[Article contains additional citation context not shown here]
Richard Black. Explicit Network Scheduling. PhD Thesis 361, University of Cambridge Computer Laboratory, December 1994. (pp 44, 51, 78)
....with low priority . This rather loose condition leaves many aspects of the thread scheduling policy dependent on the implementor. The motivation here is that it allows Java threads to be implemented in a reasonably natural way over a variety of hardware and operating systems. 9 As discussed in [Bla94] and [Ros95] this kind of priority based scheme is inherently unsuitable for many applications. For example, suppose that a single JVM contains two threads, each running on behalf of a separate Java applet. Based on the language specification it is not possible for the JVM s user to ensure that ....
Richard Black. Explicit Network Scheduling. Technical Report 361, University of Cambridge Computer Laboratory, December 1994. Ph.D. Dissertation.
.... defined in Nemesis provide applications with control over many of the resources that are required for their execution: Disk I O In Nemesis, User safe disks (usds) provide an extent based interface for data storage [Barham97] Clients perform i o operations over stream based rbufs channels [Black94] with which resource allocations or disk scheduling parameters may be associated. Access control is performed on an extent level granularity by a trusted 32 user space filesystem driver. The usd driver maintains a cache of permission checks and makes call backs to the filesystem driver upon cache ....
Richard Black. Explicit Network Scheduling. Technical Report TR361, University of Cambridge Computer Laboratory, December 1994. (p 32)
....fair share [30] can be provided by using the extra ag since unused resources are distributed by assigning very small time quantums in a round robin fashion (cyclically) to the applications that have the extra ag set to true. 2. 3 Rbufs and I O Channels Nemesis deploys a mechanism called Rbufs [10] for the inter domain transport of bulk I O through so called I O channels. Packets are formed using a data structure called I O Record or iorec. An iorec consists of a header and a sequence of base pointer and length pairs similar to the iovec structure in Unix, with the header denoting how many ....
R.J. Black. Explicit network scheduling. Technical Report 361, University of Cambridge Computer Laboratory, December 1994. Ph.D. Dissertation.
....deadlines are not specified by the applications but computed from the applications specifications. Setting the extra flag x to true means that the application wants a fair share of the non allocated part of the transmit bandwidth. Rbufs and I 0 Channels Nemesis deploys a mechanism called Rbufs [3] for the inter domain transport of bulk I O through so called I O channels. Packets are formed using a data structure called I O Record or iorec. An iorec consists of a header and a sequence of base pointer and length pairs similar to the iovec structure in Unix, with the header denoting how many ....
R.J. Black. Explicit network scheduling. Technical Report 361, University of Cambridge Computer Laboratory, December 1994. Ph.D. Dissertation.
....uses that to retrieve the binding from the final trader the returned binding need not have the intermediate trader as part of its route when all the traders are in the same name domain. 5 Events Event counters are described in the context of their use in the Fawn operating system described in [Black 95] and were used in the Nemesis operating system developed as part of the ESPRIT funded Pegasus project [Roscoe 95] Black 95] defines the operations that event counters support, and provides a number of examples in which many extant styles of concurrency control are implemented using them 9 . ....
....its route when all the traders are in the same name domain. 5 Events Event counters are described in the context of their use in the Fawn operating system described in [Black 95] and were used in the Nemesis operating system developed as part of the ESPRIT funded Pegasus project [Roscoe 95] Black 95] defines the operations that event counters support, and provides a number of examples in which many extant styles of concurrency control are implemented using them 9 . An event counter e is defined to support operations with the following semantics: read(e) This operation returns a value ....
Black R J, "Explicit Network Scheduling", Technical Report No 361, University of Cambridge Computer Laboratory, April 1995.
....the same amount of service in a real system as it would in a fluid flow system, like GPS. Although EEVDF uses two virtual times, it has the desirable property of keeping the lag, that is, the difference between actual 23 and optimal service in a proportional share system, at a constant. Black [9] describes a scheduling approach in the Nemesis operating system that enables processes to receive a proportional (weighted fair) share of CPU time. Similarly, Waldspurger and Weihl developed an algorithm called stride scheduling [62] which applies the properties of network based fair queueing to ....
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994.
....by the operating system. Whilst prototype workstations have been constructed which address this problem, it may be some time before they are commonplace. A software solution is therefore required. 1. 3 Contribution The author has built upon the work described in [Hyden94] Roscoe95] and [Black94], investigating the extension of a QoS based operating system to provide guarantees of I O performance which are useful at the application level. The thesis of this work is that a vertically structured operating system requires a device driver architecture where I O resources are: ffl ....
....access to a shared resource and for how long. In the past it has been considered sufficient to implement little more than access 1 Nemesis was written from scratch over a 2 year period by Timothy Roscoe, David Evers and the author, with significant influence from the Fawn system described in [Black94]. 23 Source: nemesis.tex DRAFT of 11:06, June 28, 1996 control on physical resources. It is becoming increasingly important to account, schedule and police shared resources so as to provide some form of QoS guarantee. Whilst it is necessary to provide the mechanisms for multiplexing resources, ....
[Article contains additional citation context not shown here]
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, 1994. (pp 4, 23, 24, 29, 30, 35, 37, 39, 59, 60, 61, 80)
....Nemesis a number of options were considered. 4.2.1 Priorities Priority based systems assign each schedulable process an integer representing its relative importance, and schedule the runnable process with the highest priority. They are generally unsuitable for supporting multimedia applications: [Black94] provides a comprehensive discussion of the problems of priority based scheduling. While scheduling algorithms which are based on priority are often simple and efficient, priority does not give a realistic measure of the requirements of an application: it says nothing about the quantity of CPU ....
....interrupts from devices, and the problems of communicating domains. Nevertheless, the PB idea (together with elements of Nemo s client interface) have been used in Nemesis. In particular, it represents a highly appropriate form of QoS specification. 51 4.2. 5 Fawn Jubilees The Fawn system [Black94] adopts a novel scheme whereby each process is allocated a particular slice of time over a system wide, fixed period (31.5 milliseconds in the system reported) called a jubilee. All processes are scheduled in turn within a jubilee. At the end of the jubilee all allocations of CPU time are reset. ....
[Article contains additional citation context not shown here]
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, 1994. (pp 49, 52, 93)
....to be co operative something that is often dangerous in a multiprogrammed, multi user environment. Running more than one real time application concurrently can lead to the same unpredictability in resource delivery that was present with conventional operating system schedulers [Nieh93, Black94b] This has prompted researchers to design operating systems capable of supporting a mix of soft real time and conventional applications, for example SUMO Chorus [Coulson93] Rialto [Jones95] RT Mach [Mercer94] and the locally conceived Nemesis [Leslie96] These systems aim to allow applications ....
....Priority provides no way to encode this high priority applications must be trusted not to consume excessive resources. Where several real time applications are to be run on the same system, it can be virtually impossible to assign priorities in a manner that produces acceptable results [Nieh93, Black94b] The situation is exacerbated further if, in the course of its operation, an application has to interact with other processes (e.g. the X Server) In order to maximise their utility to the user, soft real time applications may adapt their behaviour depending on the level of resources they ....
[Article contains additional citation context not shown here]
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, 1994. (pp 2, 16, 32, 137)
....(both deadline and non deadline constrained) as well as a mixture of static priority traffic (e.g. for out of band data) and fair bandwidth allocated traffic, that simultaneously compete for service. The characteristics of DWCS will be shown by experiments, which are described in Section 5. Black[4] describes a scheduling approach in the Nemesis operating system that enables processes to receive a proportional (weighted fair) share of CPU time. Similarly, Waldspurger and Weihl developed an algorithm called stride scheduling[22] which applies the properties of network based fair queueing to ....
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994.
....2. Scheduling Related Work DWCS[28, 29] has the desirable property of supporting fair allocation of bandwidth to packets, in proportion to their loss constraints and per packet deadlines. This is similar to fair scheduling[9, 30, 11, 3, 13, 20, 19, 2] at the network level, and proportional share[6, 25, 24] scheduling at the CPU level. However, almost all fair scheduling algorithms use a single weight for each stream, to compute weighted fair bandwidth allocations. DWCS complements this work by not only being able to perform fair scheduling but also being able to meet explicit delay and windowed ....
R. J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994.
....deadline and non deadline constrained) as well as a mixture of static priority traffic (e.g. for out of band data) and fair bandwidth allocated traffic, that simultaneously compete for service. The characteristics of DWCS will be shown by experiments, which are described in Section 3.3. Black[7] describes a scheduling approach in the Nemesis operating system that enables processes to receive a proportional (weighted fair) share of CPU time. Similarly, Waldspurger and Weihl developed an algorithm called stride scheduling[45] which applies the properties of network based fair queueing to ....
R. J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994.
....Methods perinstance state Closure Pointer to interface Method suite Text and read only data implementing object Figure 5: Module Interface Data Structures in Nemesis 2. 6 Nemesis IO System The design for high volume packet based data transfer in Nemesis is based on the Rbufs scheme in [2] (shown in figure 6) DATA AREA Domain A Domain B Control Area (A to B) Control Area (B to A) Figure 6: High Volume I O using Rbufs The data area consists of a small number of large contiguous regions backed by physical memory. Protection of the area is determined by use: the sender must have ....
Black, R. Explicit Network Scheduling. Tech. Rep. 361, University of Cambridge, England, University of Cambridge, Computer Laboratory, New Museums Site, Pembroke Street, Cambridge CB2 3QG, England, April 1995.
....suite Text and read only data implementing object Figure 5: Module Interface Data Structures in Nemesis coordinating such o sets proved prohibitive in allowing more sharing. 2. 6 Nemesis IO System The design for high volume packet based data transfer in Nemesis is based on the Rbufs scheme in [2] (shown in gure 6) DATA AREA Domain A Domain B Control Area (A to B) Control Area (B to A) Figure 6: High Volume I O using Rbufs The data area consists of a small number of large con4 tiguous regions backed by physical memory. Protection of the area is determined by use: the sender must ....
Black, R. Explicit Network Scheduling. Tech. Rep. 361, University of Cambridge, England, University of Cambridge, Computer Laboratory, New Museums Site, Pembroke Street, Cambridge CB2 3QG, England, April 1995.
....ACKs I O REQs I O REQs I O REQs I O ACKs I O ACKs Figure 3: Nemesis Device Driver Architecture coordinating such offsets proved prohibitive in allowing more sharing. 2. 6 Nemesis IO System The design for high volume packet based data transfer in Nemesis is based on the Rbufs scheme in [2] (shown in figure 5) DATA AREA Domain A Domain B Control Area (A to B) Control Area (B to A) Figure 5: High Volume I O using Rbufs The data area consists of a small number of large contiguous regions backed by physical memory. Protection of the area is determined by use: the sender must have ....
Black, R. Explicit Network Scheduling. Tech. Rep. 361, University of Cambridge, England, University of Cambridge, Computer Laboratory, New Museums Site, Pembroke Street, Cambridge CB2 3QG, England, April 1995.
....by out of band negotiation between the client and a QoS manager domain. The exact scheduling algorithms applied are likely to be device specific, but in general any algorithm which supports QoS guarantees is potentially applicable. Examples include stride scheduling [7] jubilee scheduling [8] and the RSCAN algorithm for disk head scheduling presented in section 7.1. Application domains communicate with block and packet based device drivers using an asynchronous shared memory communications mechanism known as RBufs [8] Each connection to the driver has an independent queue and so ....
....Examples include stride scheduling [7] jubilee scheduling [8] and the RSCAN algorithm for disk head scheduling presented in section 7.1. Application domains communicate with block and packet based device drivers using an asynchronous shared memory communications mechanism known as RBufs [8]. Each connection to the driver has an independent queue and so the QoS crosstalk, 3 prevalent in first come, first served (FCFS) queueing systems, is avoided. Rbufs also provide effective low latency feedback to applications since clients are able to observe both the length of the queue and ....
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, 1994.
....The Fairisle Port Controller basically consists of the network and the processor 12 17 section of the CryptoNode. Thus in our experiment, we are using the Fairisle Port Controller processor section to perform the dual functions of crypto and processor section of the CryptoNode. Fawn [21], a micro kernel that is capable of supporting QoS guarantee, runs on the Fairisle Port Controller as the controlling operating system. With such an operating system, we are able to allocate a guaranteed share of the CPU for the handling of the key hint event while processing the cell streams. We ....
R. J. Black, Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994. 12--29
....slotbytes : CARDINAL; buf : IDC.Buffer; events : Event.Pair ] RETURNS [ fifo : IREF FIFO ] RAISES Heap.NoMemory, BadSlotSize, BadEvents; Construct a FIFO using a pair of events. END. 19.3 IO An IO channel transfers data in packets by a mechanism functionally similar to the rbufs described in [Black 94] A packet is described by an array of IORecs, which are (base,len) pairs. NO internal concurrency control is performed. IO : LOCAL INTERFACE = NEEDS IDC; BEGIN An IO channel has to be one of two kinds, a Reader or Writer. Readers remove valid packets from the channel with GetPkt and send back ....
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, 1994. (p 93)
.... Cache Miss Cache Fill Stretch Driver Stretch Driver Schedule Control Swap Space Allocation QoS Admission USD Figure 6: The User Safe Backing Store Clients communicate with the USD via a FIFO buffering scheme called IO channels; these are similar in operation to the rbufs scheme described in [33]. The type of QoS specification used by the USD is in the form (p; s; x; l) where p is the period and s the slice; both of these are typically of the order of tens of milliseconds. Such a guarantee represents that the relevant client will be allowed to perform disk transactions totalling at most s ....
R. J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, April 1995.
....team that included Paul Barham, Richard Black, Robin Fairbairns, Eoin Hyden, Ian Leslie, Derek McAuley and Timothy Roscoe. The first version of Nemesis was written from scratch over a 2 year period by Timothy Roscoe, David Evers and Paul Barham. Other related systems are Nemo [Hyden 94] and Fawn [Black 94] both of which had some influence on the original implementation. This first version of Nemesis constituted a deliverable of the original Pegasus project. Since then, Nemesis has been further developed by Paul Barham, Richard Black, Steven Hand, Dickon Reed, Austin Donnelly, Stephen Early, Neil ....
....a single 64 bit value between two domains. The event mechanism was designed purely as a synchronisation mechanism for shared memory communication, although several simple protocols have been implemented which require nothing more than the event channel itself, e.g. the TAP protocol, described in [Black 94] used for start of day communication with the binder. Unlike message passing systems such as Mach [Accetta 86] or Chorus [Rozier 90] the kernel is not involved in the transfer of bulk data between two domains. Nemesis also separates the act of sending an event and that of losing the processor. ....
[Article contains additional citation context not shown here]
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge Computer Laboratory, 1994. (pp iv, 4, 6, 11, 13)
....construction of such services, references between the various parts of the code and data are simplified by the use of a single address space with protection between domains provided by the access control fields of address translations. For more details about various aspects of Nemesis please see [3, 2, 1, 5]. 3 Experimental Setup The experimental equipment uses three workstations running the Nemesis operating system and three networked audio digitisation and playback devices. The audio CODECs used were the AVA200 [4] devices (now sold by Fore Systems Inc. which attach, with the workstations, to a ....
Richard J. Black. Explicit Network Scheduling. Technical Report 361, University of Cambridge Computer Laboratory, December 1994. Ph.D. Dissertation.
....of the system and its general state in May 95 were described in [10] We now proceed to describe the work we have done in implementing traditional protocol families on that base. 2.2. Communications support The bulk (asynchronous) data transport mechanism in Nemesis is known as an Rbuf channel [5]. The design is based on a separation of the three logical issues in I O: ffl The actual data buffering memory. ffl The aggregation mechanisms (for Application Data Unit (ADU) support) ffl The memory allocation. To preserve QoS the I O channels are designed to be completely independent. No ....
....was low latency. Likewise, there is frequently a bandwidth tradeoff associated with the number of clients supported. Our performance goal is to sustain the QoS guarantees available to applications. Fortunately this is compatible with latency and bandwidth desires. 3.1. Hardware considerations In [5], it was proposed that network adapters be classified into two categories, self selecting and non self selecting. Self selecting hardware is able to demultiplex received data to its (hopefully final) destination directly; DEC s ATMWorks 750 (OTTO) board is a good example of such hardware. 3Com s ....
R. Black. Explicit Network Scheduling. Technical Report 361, University of Cambridge Computer Laboratory, December 1994. Ph.D. Dissertation.
....of priority is internal to the scheduler and not visible to client domains. The fixed Jubilees remove the need for EDF scheduling and is particular suited to situations where the application load is well understood and where the a single Jubilee size can be chosen. Complete details can be found in [20]. D. Intra domain scheduling This section considers the implementation of an intra domain scheduler to provide a familiar threaded environment. The intra domain scheduler is the code which sits above the virtual processor interface. The code is not privileged and can differ from domain to ....
....expensive it is very efficient to implement many schemes over event counts. The mutexes and conditional variables of SRC threads [21] POSIX threads, and the semaphores used in the Wanda system have all been implemented straightforwardly and efficiently over event counts. Details can be found in [20]. Implementing threads packages over the upcall interface has proved remarkably easy. A Nemesis module implementing both preemptive and non preemptive threads packages, providing both an interface to the event mechanism and synchronisation based on event counts and sequencers comes to about 2000 ....
[Article contains additional citation context not shown here]
R.J. Black, "Explicit Network Scheduling", Tech. Rep. 361, University of Cambridge Computer Laboratory, December 1994, Ph.D. Dissertation.
....what buffering strategies and asynchronous mechanisms were supported. As a result, the mechanism adopted is substantially different from that used in previous ATM device driver implementation such as Unix [Black94a] and Wanda [Dixon91] and in certain ways is more similar to the Rbuf mechanism of [Black94b]. The design choice requires user processes to issue read request(s) asynchronously, providing buffer memory to the device driver in advance for data to arrive in the future. The reasons for this are: ffl The NT system has various constraints on which areas on memory may be allocated or 2 In ....
....to the shared memory segment. These are converted by the driver into a (larger) array of similar pointer and length pairs where the differences between user virtual and kernel physical addresses have been taken into account (including breaking at page boundaries) This is following the design of [Black94b]. The main difference from the Windows NT driver is that there is no contiguous kernel virtual mapping for the user memory and so the driver must deal with the various discontiguous regions. Once this cost has been accepted it is then easy to allow the user space program a certain amount of ....
R.J. Black. Explicit Network Scheduling. Technical Report 361, University of Cambridge Computer Laboratory, December 1994. Ph.D. Dissertation. (pp 6--7, 6--13)
No context found.
Richard J. Black. Explicit Network Scheduling. PhD thesis, University of Cambridge, December 1994.
No context found.
R.J.Black, "Explicit Network Scheduling", Technical Report 361, Ph.D.Dissertation, University of Cambridge Computer Laboratory, April 1995
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC