Shared resource

From Wikipedia, the free encyclopedia

In computing, a shared resource is a device or piece of information on a computer that is accessed from another computer via a network, as if it were a local resource.

Examples are shared file access (also known as disk sharing and folder sharing), shared printer access (printer sharing), shared scanner access, etc. The shared resource is called a shared disk (also known as mounted disk), shared drive volume, shared folder, shared file, shared printer and shared scanner.

A few years ago the term file sharing was for shared file access, but that is today often associated with peer to peer file sharing. Shared file and printer access is based on the client-server paradigm, which is the opposite to peer-to-peer communication. A client process on the local user computer takes initiative to the communication, while a server process on the file server or printer server remote computer is passively waiting for missions.

Contents

[edit] Common file systems and protocols

Shared file and printer access require an operating system on the client that supports access to resources on a server, an operating system on the server that supports access to its resources from a client, and an application layer (in the four or five layer TCP/IP reference model) file sharing protocol and transport layer protocol to provide that shared access. Modern operating systems for personal computers include distributed file systems that support file sharing, while hand-held computing devices sometimes require additional software for shared file access.

The most common such file systems and protocols are:

Primary operating system Application protocol Transport protocol
Mac OS Apple Filing Protocol
Unix-like systems Network file system (NFS)
MS-DOS, Windows SMB, also known as CIFS
Novell NetWare (server)
MS-DOS, Windows (client)
NCP

The "primary operating system" is the operating system on which the file sharing protocol in question is most commonly used. Other operating systems might also implement that protocol; for example, Samba is an SMB server running on Unix-like operating systems and some other non-MS-DOS/non-Windows operating systems.

[edit] Naming convention and mapping

On a DOS or Windows PC computer, a shared folder can be addressed according to the following: \\server\folder, where server is the WINS name or DNS name of the server computer. For example \\server\c$ usually denotes a drive with drive letter c: on the server machine.

A shared drive or folder is often mapped, meaning that it is assigned a drive letter on the local PC computer.

[edit] Difference from file transfer and synchronization

Shared file access should not be confused with file transfer using the file transfer protocol (FTP), or the Bluetooth or IRDA OBject EXchange (OBEX) protocol. Shared access involves automatic synchronization of folder information whenever a folder is changed on the server, and may provide server side file searching, while file transfer is a more rudimentary service.

Shared file access is normally considered as a local area network (LAN) service, while FTP is an Internet service. Due to security reasons and, at least formerly, extensive communication load in the network, shared printer and file access is normally prohibited in firewalls from computers outside the LAN or enterprise Intranet. However, by means of virtual private networks (VPN), shared resources can securely be made available for certified users outside the local network.

Shared file access are transparent to the user, as if it was a file in the local file system, and supports a multi-user environment. This includes Concurrency control or locking of a remote file while a user is editing it, and file system permissions.

Shared file access resembles but should not be confused with, file synchronization and other information synchronization using for example the SyncML language. Shared file access is based on server side pushing of folder information, and is normally used over an "always on" Internet socket. File synchronization allows the user to be offline from time to time, and is normally based on an agent software that polls synchronized machines at reconnect, and sometimes repeatedly with a certain time interval, to discover differences. Modern operational systems often includes a local cache of remote files, allowing offline access and synchronization when reconnected.

[edit] See also