Monday 26 September 2011

Types of scheduling processes:

Long-term scheduling
once a new process is accepted (and partially created) it may enter the scheduling queues in one of two places:
If all resources (such as memory requirements) are initially 
fully available to the new process, it may be admitted to the tail
 of the Ready queue.
If not all resources are immediately available, the new process 
may be instantiated in the Blocked-Suspended queue until those 
resources are provided.

Medium-term scheduling

  • determines when processes are to be suspended and resumed
  • The medium-term scheduler runs more frequently, 
  • deciding which process’s pages to swap to and from the
  •  swapping device: typically once a second.
Short-term scheduling
determines which of the ready processes can have 
CPU resources, and for how long.
also called as the dispatcher
executes most frequently(every few hundredths of a second) making
fine-grained decisions
as to which process to move to Running next.
is invoked whenever an event occurs
provides the opportunity, or requires, the interruption of the
 current process and
the new (or continued) execution of another process.


BY:
NOR AQILAH BINTI KAMARUZAMAN
NURHAYATUN NISHA BT SAHARUDIN 
SHAIDATUL HIDAYU BT MOHAMMAD SABRI 






3.2.3 Explain the following scheduling algorithms

a)First In First Out(FIFO)

The simplest scheduling discipline

Processes are dispatched according to their arrival time on the ready queue
Process that has the CPU will run until complete
Non preemptive scheduling algo.

b. Round-Robin Scheduling

  • processes are given equal time slices called quanta (or quantums)
  • takes turns of one quantum each
  • if a process finishes early, before its quantum expires,
  • the next process starts immediately and gets a full quantum
  • in some implementations, the next process may get only the rest of the quantum
  • assume a new process arrives and goes into the 
  • queue before the process is removed from the processor
c. shortest job first
  • another name is Shortest Process Next algorithm
  • a better name may be shortest next-CPU-burst first
  • assumes we know the length of the next CPU burst of all ready processes
  • the length of a cpu burst is the length of time a process would 
  • continue executing if given the processor and not preempted
  • SJF estimates the length of the next burst based on the
  •  lengths of recent cpu bursts
  • starts with a default expected burst length for a new process
  • suppose that time intervals are numbered 1 for first cpu burst, 2 for second cpu burst, etc.
  • default length is e(1), the expected length of time for the first cpu burst
  • unlike other scheduling algorithms, this algorithm assumes that information about a process's burst length is stored between the times when it is ready.
  • in keeping with the need for efficiency, only a small amount of info is stored and only a simple calculation is performed
  • we can weight the previous expectation (representing all previous bursts) and the most recent burst with any two weights that add up to 1, e.g., say 0.5 and 0.5, or 0.9 for previous expectations and 0.1 for actual time for most recent cpu burst

d. shortest remaining time
·         very short processes get very good service

·     a process may mislead the scheduler if it previously ran quickly but now may be cpu intensive (this algorithm fails very badly for such a case)
·         the penalty ratios are small;
·         this algorithm works extremely well in most cases
this algorithm provably gives the highest throughput (number of processes completed) of all scheduling algorithms if the estimates are exactly correct.



e. priority
·         processor is allocated to the ready process with the highest
priority (we will assume that the highest priority is 0, as in UNIX and LINUX)

·         if all arrive at time 0 and are to run to completion, the C, D have 
the highest priority, etc.
·         if there is a tie, choose the processes in alphabetical order
·         impractical and unrealistic in practice


f. multilevel queue
·         priorities are implicit in the position of the queue that the ready process
 is currently waiting in
·         when process is running on the processor, the OS 
must remember which queue it came from
·         after a process has executed for one time quantum, 
it is moved down one queue
·         process is placed at the back of the queue
·         a ready process is initially (implicitly) given a 
high priority, then, as it uses time while still remaining ready,
·         this is close to what is used for the traditional UNIX scheduler
 its priority is lowered


By:
NUR FARRAHANA BT MOHD ROSLAN
NUR HIDAYAH BT AZIRID                       
ZATTY ILYANI BT ABDULLAH          










Saturday 20 August 2011

warga-warga utilities~


Warga2 GROUP B "UTILITIES"





SHAIDATUL HIDAYU BT MOHAMMAD SABRI 10QIP11F1051
NUR FARRAHANA BINTI MOHAMAD ROSLAN 10QIP11F1056

NOR AQILAH BINTI KAMARUZAMAN 10QIP11F1042

NURHAYATUN NISHA BT SAHARUDIN 10QIP11F1067

NUR HIDAYAH BINTI AZIRID 10QIP11F1053



ZATTY ILYANI BT ABDULLAH 10QIP11F1066 

USER INTERFACE

lA user interface is the system by which 
people (users) interact with a machine.
 The user interface includes hardware 
(physical) and software (logical) components.
lUser interfaces exist for various systems, 
and provide a means of:
-Input, allowing the users to 
manipulate a system, and/or
-Output, allowing the system to indicate
 the effects of the users' manipulation.

lUsers may also interact with the
operating system with some kind of 
software user interface like typing 
commands by using command line interface 
(CLI) or using a graphical user interface.
lFor hand-held and desktop computers
the user interface is generally considered
part of the operating system.
lOn large multi-user systems such as 
Unix-like systems, the user interface is
 generally implemented as an application 
program
that runs outside the operating system.










       




Operating System Placement

      The user interface has two main components:

lPresentation language, which
 is the computer-to-human part of the 
transaction.
lAction language that characterizes
the human-to-computer portion

Types of User Interfaces

  There are several types 
      of user interfaces:
lCommand Line Interfaces.
lMenu interfaces.
lGraphical User Interfaces (GUIs).
lVoice User Interfaces.
lWeb Form Interfaces.

Command interfaces

lUser types commands to give 
instructions to the system e.g. UNIX
lMay be implemented using
 cheap terminals.
lEasy to process using 
compiler techniques.
lCommands of arbitrary 
complexity can be created by 
command combination.
lConcise interfaces requiring
 minimal typing can be created.


Menu Interfaces
lMenu Interface presents user 
with a menu of choices.
lRather than learning specific 
commands, user choose them 
from the menu.
lMenus can contain submenus, 
in which case user need to 
memorize how to access a 
particular command.
lThis is still much easier than 
memorizing the actual command.

Graphical User Interface (GUI)
lgraphical user interface or GUI (sometimes
pronouncedgooey) is a type of user interface item that allows
people to interact with programs in more ways than typing such
as computers
lExamples: hand-held devices such as MP3 Players, Portable
Media Players or Gaming devices; household appliances and
office equipment with images rather than text commands.
lGUI offers graphical icons, and visual indicators, as
opposed to text-based interfaces, typed command labels or text
navigation to fully represent the information and actions available
to a user.
VoiceUser Interface
lA Voice User Interface (VUI) makes human interaction with computers possible through a voice/speech platform in order to initiate an automated service or process.

lThe VUI is the interface to any speech application.
lControlling a machine by simply talking to it was science fiction only a short time ago.
lHowever, with advances in technology, VUI have become more common place, and people are taking advantage of the value that these hands-free, eyes-free interfaces provide in many situations.

Web Form Interfaces
lWeb Form interfaces are onscreen forms displaying fields containing data items or parameters that need to be communicated to the user.
lWeb Form interfaces may be implemented using the Web
lA Web Form allows a user to enter data that is sent to a server for processing.
lWeb forms resemble paper forms because internet users fill out the forms using checkboxes, radio buttons, or text fields.
lFor example, Web Forms can be used to enter shipping or credit card data to order a product or can be used to retrieve data (e.g: searching on a search engine).
lIn addition to functioning as input templates for new information, Web Forms can also be used to query and display existing data in a similar manner to mail merge forms, with the same advantages..



WebForm Interfaces

lWeb Form interfaces are onscreen forms displaying fields containing data items or parameters that need to be communicated to the user.
lWeb Form interfaces may be implemented using the Web
lA Web Form allows a user to enter data that is sent to a server for processing.
lWeb forms resemble paper forms because internet users fill out the forms using checkboxes, radio buttons, or text fields.
lFor example, Web Forms can be used to enter shipping or credit card data to order a product or can be used to retrieve data (e.g: searching on a search engine).
lIn addition to functioning as input templates for new information, Web Forms can also be used to query and display existing data in a similar manner to mail merge forms, with the same advantages..


Tuesday 2 August 2011

Distributed Operating System

A Distributed Operating System is the one that runs on multiple, autonomous CPUs which provides its users an illusion of an ordinary Centralized Operating System that runs on a Virtual Uniprocessor.
Distributed Operating Systems provide resource transparency to the user processes.
  “If you can tell which computer you are using, you are not using a distributed operating system.” - Tanenbaum
The Distributed Operating System is unique and resides on different machines.
 User processes can run on any of the CPUs as allocated by the Distributed Operating System.
 Data can be resident on any machine that is the part of the Distributed System.
 All multi-machine systems are not Distributed Systems.

“It is the software not the hardware that determines whether a system is distributed or not” -
Tanenbaum
Advantages:
-Price/Performance advantage (Availability of cheap and powerful Microprocessors).
-Resources Sharing
-Computation speed up – load sharing
-Reliability and Availability.
-Provides Transparency.
Disadvantages:
1)Lack of security - Easy access also applies to secret data.

An example of a distributed system: Amoeba
-An open source microkernel-based distributed operating system developed by Andrew S. Tanenbaum and others at the Vrije Universiteit.
-The aim of the Amoeba project is to build a timesharing system that makes an entire network of computers appear to the user as a single machine.
-Development seems to have stalled: the files in the latest version (5.3) were last modified on 12 February 2001.
-Amoeba runs on several platforms, including i386, i486, 68030, Sun 3/50 and Sun 3/60.




WRITER-->Shaidatul Hidayu bt Mohammad Sabri (F1051)