Request for services
Fax /Print services
Other remote services
Utility services & other services
Dynamic Data Exchange(DDE)
Object Linking and Embedding(OLE)
Common Object Request Broker Architecture(CORBA)
3. TOPICS (CONT)
Detailed server functionality
The network operating system
The server operating system
4. CLIENT SERVICES
• Responsible for managing the user interface
• Provides presentation services
• Accepts and checks the syntax of user inputs
• Acts as a consumer of services
• Processes application logic
• Extended at the client by adding logic that is not implemented in the host server application
automatic data entry,
help capabilities, and other logic processes
• Generates database request and transmits to server
• Passes response back to the server
5. REQUEST FOR SERVICES
A client workstation requests services form the attached server.
whatever may be the type of processor the format of request is the
It is the job if the NOS software to translate or add the necessary details
as required by the targeted requester to the application request.
6. MESSAGE PASSING
Allows process to communicate without restoring the shared data
Two processes involved in an IPC
Sending process for sending the message
Receiving process for receiving the message
Messages sent by the processes are classified into:
7. DIRECT COMMUNICATION
Processes have to specify the name of sender and recipient process name.
A link is established in between the sender and receiver along with full known
information of their names and addresses.
Link must be established in between the processes.
There is symmetry in between the communication of the processes.
10. INDIRECT COMMUNICATION(CONT)
•A link is established between a pair of processes, if they share a mailbox.
•A link is established between more then one processes.
•Different number of links can be established in between the two
11. INDIRECT COMMUNICATION(CONT)
Possible combinations of send and receive can be
•Blocking Send – Returns control to the user only after the message has
been sent or until ACK has been received.
•Non-blocking Send – Returns control as soon as the message queued or
•Blocking Receive – Returns only after message has been received.
•Non-blocking Receive – Receiver receives either a valid message or a
12. REMOTE PROCEDURES CALL (RPC)
RPC allow programs on different machines to interact using simple procedure call or
It appears as if the two programs were on the same machine.
It is based on extending the notion of conventional or local procedure calling.
So that the called procedure need not exist in the same address space as the calling
The two processes may be on the same system, or they may be on different systems with
a network connecting them.
Marshalling − transferring data structure used in remote procedure call from one
address space to another.
14. RPC MECHANISM
1. Client calls a local procedure on the client
2. The client stub acts as a proxy and
marshalls the call and the args.
3. The client stub send this to the remote
system (via TCP/UDP)
4. The server stub unmarshalls the call and
args from the client
5. The server stub calls the actual procedure
on the server
6. The server stub marshalls the reply and sends
it back to the client
15. WINDOW SERVICES
A client workstation may have several windows open on-screen at any time
Capability to provide activate, view, move, resize or hide a particular
They interact with message services provided to notify the user of events that
occur on a server.
Each application is written with the assumption that it has a virtual screen.
This virtual screen can be an arbitrary size and can even be larger than the
CLIENT SERVER COMPUTING / UNIT I15
16. WINDOW SERVICES(CONT’D)
The application using GUI software places data into the virtual screen.
Then the windowing services handle placement and manipulation of the
There is no need for the developer to build or manage the windowing services.
The client user is totally in control of his or her desktop and can give priority to
the most important tasks.
The NOS(Network Operating System) provides software on the client
workstation to manage the creation of pop-up windows that display alerts
generated from remote servers.
CLIENT SERVER COMPUTING / UNIT I16
18. SAFE TO DISABLE SERVICES
Tablet PC Input Service
Microsoft iSCSI Initiator Service
Encrypting File System
CLIENT SERVER COMPUTING / UNIT I18
19. PRINT/FAX SERVICES
The NOS enables the client to generate print requests even when the
printer is busy.
The NOS redirector software redirects it and the print server queue
manage further manage it.
The client has facility to view the status of the print queue at any time and
client is also notified when the print is completed.
The fax server also works like print server.
20. OTHER REMOTE SERVICES
Apps can be invoked from the client to execute remotely on a server .
E.g Backup Services.
Business functions such as downloading data from a host or checking a
list of stock prices might also be invoked locally to run remotely.
Software is provided by the NOS to run on the client workstation to
initiate these remote applications.
21. OTHER REMOTE SERVICES(CONT’D)
Mobile computing is increasingly being used to remain functional while
out of the office.
With appropriate architectural forethought, applications can be built to
operate effectively from the office LAN or the remote laptop.
The IPC protocol of choice for mobile access is TCP/IP based.
23. UTILTY AND OTHER SERVICES
The operating system facilitates some local functions which are very often used to perform actions like
edit, copy, move, compare and help which works on the client end.
Messages can be sent and received to or from the network synchronously.
The message services provide the buffering, scheduling and arbitration services to support this function.
The client workstation communicates with the network through protocol, some set of service and
API’s that creates, send and receive and format network messages.
In addition to the remote execution services that the NOS provide, custom applications will use
their own API’s embedded in an RPC to invoke specialized services form a remote server.
24. DYNAMIC DATA EXCHANGE(DDE)
• DDE -A conversation between two applications(a client application and a
• It is a feature of some operating systems (like Windows 98, OS/2)
presentation manager that enable users to pass data between applications
• Eg1: If an application wants to connect a Microsoft Excel spreadsheet
with Microsoft Word for windows report in such a way that changes to
the spreadsheet are reflected automatically in the report
• In the above case, Microsoft Word for windows is the client and
Microsoft Excel is the server.
• Primary function of DDE is to allow Windows applications to share data.
Eg2: A charting package can be linked to a database to provide the latest chart data
whenever the chart is reference
Concerned about a particular topic and a particular item.
The topic and item is the nature of the information that the client wants.
26. HOW TO SET UP A DDE LINK?
• Eg: If the Word for Windows document is to receive data automatically
from a range named IBM in a Microsoft Excel worksheet, named
• Then STOCKS.XLS is the topic and IBM is the item.
• Simplest way to set up a DDE link is
Copy a block of data from the server application to the clipboard
Activate the client application
Move the insertion point to the location in the receiving document where
you want the information to go
Then use a Paste Link command (With most server programs, some
times it requires to save data in a disk file before pasting).
A DDE link may be automatic or manual.
An automatic link is refreshed whenever the source data changes,
provided both the client and server applications are running.
A manual link is refreshed only when you issue a command in the
28. OBJECT LINKING AND EMBEDDING(OLE)
OLE is an extension to DDE that enables objects to be created with the object components
Aware -a reference to the object or one of its components automatically launches the
appropriate software that manipulate the data.
For example, a document created with a word processor may include an image created by
a graphics package.
The image can be converted to the internal graphics form of the word processor, such as
WPG form for WordPerfect.
With OLE, the image can be included in its original form within the document object; whenever the
image is selected or highlighted, the graphics package will take control to manipulate the image.
Viewer or launcher is the one by which software package accesses data created from another one.
It is custom built
Viewer-users can see data from one software package while they are running another package.
Launchers -invoke the software package that created the data and thus provide the full functionality of
the launched software.
Advantage: any DDE- or OLE-enabled application can use any software that supports these data
Eg: Microsoft has released its OLE 2.0 software development kit (SDK)
32. OLE 2.0
•OLE 2.0 extends OLE capabilities to enable a group of data to be defined as an object and
saved into a database.
•This object can then be dragged and dropped into other applications and edited without
the need to switch back to the application which created it.
• This provides a more seamless interface for the user.
ADVANTAGE OF OLE2.0 OVER OLE1.x:
•In OLE 1.x, double-clicking a Lotus 1-2-3 for Windows spreadsheet embedded in a
Microsoft Word for Windows document launches 1-2-3 and opens the document in a 1-2-
• Under OLE 2.0, the active window (Word's) menu and toolbar change to that of 1-2-3.
• The user deals only with the object.
33. COMMON OBJECT REQUEST BROKER
• CORBA is an object oriented architecture.
• It has the mechanism that allows various clients to share/call the
objects over mixed networks.
• The objects are the applications.
• In specific CORBA is a process of moving objects over networks
with cross platform data transfer.
• For the process to take place the client sends the request to an object
• The client that needs the service sends the request to ORB acting as a
directory of all the remote services available on the network.
• The representation of ORB is given as
The broker calls the relevant object and passes the relevant data.
The remote object services the request and replies to the broker
which in turn responses the client.
The object communication may rely on an RPC structure.
CORBA architecture is similar to the client server architecture.
In this a component can act as client and a server.
• How the component is considered as sever/client is given as,
• A component is considered as server if it contains CORBA objects
whose services are accessible from other CORBA objects.
• A component is considered a client if it accesses services from other
In case of single remote method invocation the role of client server
can be temporarily reversed.
This is possible because a single CORBA object can participate in
multiple interactions simultaneously.
Furthermore, any component that provides an implementation for an
object is considered as a server.
If a component creates an object and provides other components
with visibility to that object (i.e., allows other components to obtain
references to that object).
• Then that components acts as server for that object.
• Any requests made on that object by other components will be
processed by the components that creates the object.
• Thus, a CORBA server means the components execute methods for
a particular object on behalf of other components (Clients).
• An application component can provide services to other application
components while accessing services from other components.
• In that scenario, the components is acting as a client of one
component and as a server to the other components i.e., two
components can simultaneously act as client and server to each
41. REQUEST PROCESSING
Requests are issued by a client to the NOS services software resident on
the client machine.
These services format the request into an appropriate RPC and issue
the request to the application layer of the client protocol stack.
This request is received by the application layer of the protocol stack on
42. FILE SERVICES
File services handle access to the virtual directories and files located on the client
workstation and to the server's permanent storage.
All requests are mapped into the virtual pool of resources and redirected as
necessary to the appropriate local or remote server
43. FAX/PRINT/IMAGE SERVICES
High-quality printers, workstation-generated faxes, and plotters are natural
candidates for support from a shared server.
The server can accept input from many clients, queue it according to the
priority of the request and handle it when the device is available.
Incoming faxes can be queued at the server and transmitted to the
appropriate client either on receipt or on request.
In concert with workflow management techniques, images can be captured
and distributed to the appropriate client workstation from the image server
44. THE NETWORK OPERATING SYSTEM
IBM LAN Server
PC Network File Services (NFS)
45. NOVELL NETWARE
NetWare is a family of LAN products with support for IBM PC-compatible
and Apple Macintosh clients, and IBM PC-compatible servers.
NetWare is a proprietary NOS in the strict sense that it does not require
another OS, such as DOS, Windows
46. NETWARE ARCHITECTURE
NetWare to an open architecture
NetWare evolved from a very simple
concept: file sharing instead of disk
In 1983 when the first versions of
NetWare originated, all other competing
products were based on the concept of
providing shared direct disk access.
Novell's alternative approach was
validated by IBM in 1984, which helped
promote the NetWare product.
47. LAN MANAGER
LAN Manager was a Network Operating
System (NOS) available from multiple
vendors and developed by Microsoft in
cooperation with 3Com Corporation.
IBM LAN Server
PC Network File Services (NFS)
48. WHAT ARE THE AVAILABLE PLATFORMS?
Workstations in LAN Configuration
OLTP on a LAN
OLTP with UNIX
49. WORKSTATIONS IN LAN CONFIGURATION
This model is the most basic
implementation providing the
standard LAN services for file
and printer sharing.
50. LAN-TO-LAN/WAN CONFIGURATION
• Routers and communication servers will be used to provide communication
services between LANs and into the WAN
• In the client/server model, these connections will be provided transparently by
the SDE tools.
• There are significant performance implications if the traffic volumes are large.
IBM's LU6.2 implementation in APPC and TCP/IP provides the best support for
high-volume, LAN-to-LAN/WAN communications.
• DEC's implementation of DECnet always has provided excellent LAN-to-WAN
• Integrated support for TCP/IP, LU6.2, and IPX provides a solid platform for
client/server LAN-to-WAN implementation within DECnet. Novell 4.x provides
support for TCP/IP as both the LAN and WAN protocol. Internetworking also is
supported between IPX and TCP/IP.
51. OLTP ON A LAN
Online Transaction Processing applications are found in such industries
as insurance, finance, government, and sales—all of which process
large numbers of transactions.
OLTP has traditionally been the domain of the large mainframe
vendors—such as IBM and DEC—and of special-purpose, fault-tolerant
processors from vendors such as Tandem and Stratus. The client/server
model has the capability to provide all the services required for OLTP
at much lower cost than the traditional platforms..
52. OLTP WITH UNIX
As UNIX has matured, it has added many of the features found in other
commercial operating systems such as VMS and MVS.
There are now several offerings for OLTP with UNIX. IBM is promoting
CICS 6000 as a downsizing strategy for CICS MVS.
Database services will be provided by a combination of AIX and MVS
Novell purchased the Tuxedo product from AT&T with its acquisition of
USL. OSF selected the Transarc Ensina product as the basis for OLTP with
• NetWare is used by many organizations, large and small, for the
provision of file, printer, and network services.
• NetWare is a self-contained operating system. It does not require a
separate OS (as do Windows NT, OS/2, and UNIX) to run.
• Novell is taking steps to allow NetWare to run on servers with UNIX.
• Novell purchased USL and will develop shrink-wrapped products to
run under both NetWare and UNIX System V, Release 4.2.
• The products will enable UNIX to simultaneously access information
from both a NetWare and a UNIX server.
OS/2 is the server platform for Intel products provided by IBM in the
System Application Architecture (SAA) model.
OS/2 provides the storage protection and preemptive multitasking services
needed for the server platform.
Several database and many application products have been ported to OS/2.
he only network operating systems directly supported with OS/2 are LAN
Manager and LAN Server..
56. Windows NT
Windows NT is a family
of operating systems produced
by Microsoft, the first version of
which was released in July 1993.
It is a processor- independent,
user operating system.
Unix (all-caps UNIX for the trademark) is a family of multitasking,
multiuser computer operating systems that derive from the original
AT&T Unix, developed in the 1970s at the Bell Labs research centre
by Ken Thompson, Dennis Ritchie, and others.
58. UNIX ARCHITECTURE
A Unix architecture is a computer
operating system system architecture
that embodies the Unix philosophy.
It may adhere to standards such as the
Single UNIX Specification (SUS) or
similar POSIX IEEE standard.
No single published standard describes
all Unix architecture computer operating
systems - this is in part a legacy of the
59. UNIX ARCHITECTURE(CONT)
• Unix systems use a centralized operating system kernel which manages system and
• All non-kernel software is organized into separate, kernel-managed processes.
• Unix systems are pre-emptively multitasking: multiple processes can run at the same
time, or within small time slices and nearly at the same time, and any process can be
interrupted and moved out of execution by the kernel. This is known
as thread management.
• Files are stored on disk in a hierarchical file system, with a single top location throughout
the system (root, or "/"), with both files and directories, subdirectories, sub-
subdirectories, and so on below it.
• With few exceptions, devices and some types of communications between processes are
managed and visible as files or pseudo-files within the file system hierarchy. This is known
as everything is a file. However, Linus Torvalds states that this is inaccurate and may be
better rephrased as "everything is a stream of bytes"
60. UNIX Features
Multitasking and multiuser
Use of files as abstractions of devices and other objects
Built-in networking (TCP/IP is standard)
Persistent system service processes called "daemons" and managed by
init or inet