text:
Yahoo! To Hold First Quarter 2012 Earnings Conference Call April 17, 2012
Yahoo! Inc. (NASDAQ:YHOO)
WHAT: Yahoo! Inc. (NASDAQ: YHOO) will host a conference call to discuss the Company's financial results for the first quarter ended March 31, 2012.
WHEN: Tuesday, April 17 at 2:00 p.m. Pacific/5:00 p.m. Eastern
HOW: The live Webcast of Yahoo!'s Q1 earnings call can be accessed at http://investor.yahoo.com. The Webcast will be archived within 24 hours of the event and will be available through the same link for 90 days following the call.About Yahoo! Yahoo! (NASDAQ:YHOO) is the premier digital media company, creating deeply personal digital experiences that keep more than half a billion people connected to what matters most to them, across devices and around the globe. That's how we deliver your world, your way. And Yahoo!'s unique combination of Science + Art + Scale connects advertisers to the consumers who build their businesses. For more information, visit the pressroom ( pressroom.yahoo.com) or the company's blog, Yodel Anecdotal ( http://ycorpblog.com/). Yahoo! is the trademark and/or registered trademark of Yahoo! Inc.
Select the service that is right for you!COMPARE ALL SERVICES
Action Alerts PLUSTry it NOW
Jim Cramer and Stephanie Link actively manage a real portfolio and reveal their money management tactics while giving advanced notice before every trade.
Product Features:
- $2.5+ million portfolio
- Large-cap and dividend focus
- Intraday trade alerts from Cramer
- Weekly roundups
TheStreet Quant RatingsTry it NOW
Only $49.95/yr
Access the tool that DOMINATES the Russell 2000 and the S&P 500.
Product Features:
- Buy, hold, or sell recommendations for over 4,300 stocks
- Unlimited research reports on your favorite stocks
- A custom stock screener
- Upgrade/downgrade alerts
Stocks Under $10Try it NOW
David Peltier, uncovers low dollar stocks with extraordinary upside potential that are flying under Wall Street's radar.
Product Features:
- Model portfolio
- Stocks trading below $10
- Intraday trade alerts
- Weekly roundups
Dividend Stock AdvisorTry it NOW
Jim Cramer's protege, David Peltier, identifies the best of breed dividend stocks that will pay a reliable AND significant income stream.
Product Features:
- Diversified model portfolio of dividend stocks
- Alerts when market news affect the portfolio
- Bi-weekly updates with exact steps to take - BUY, HOLD, SELL
Real Money ProTry it NOW
All of Real Money, plus 15 more of Wall Street's sharpest minds delivering actionable trading ideas, a comprehensive look at the market, and fundamental and technical analysis.
Product Features:
- Real Money + Doug Kass Plus 15 more Wall Street Pros
- Intraday commentary & news
- Ultra-actionable trading ideas
Options ProfitsTry it NOW
Our options trading pros provide daily market commentary and over 100 monthly option trading ideas and strategies to help you become a well-seasoned trader.
Product Features:
- 100+ monthly options trading ideas
- Actionable options commentary & news
- Real-time trading community
- Options TV


text:
LCwide + Krab at Dahican
Dahican Beach, Mati City, Davao OrientalThis photo was shot on film. Taken by icuresick with a Lomo LC-Wide (available in our Online Shop) loaded with Fuji Superia 400 (35mm) film in Davao City, Philippines. These tags describe this photo: underwater, beach, summer, sea, vacation, krab, resort, dahican, mati, davao, sand, blue, and aquamarine. Date: 2012-08-20. Time: Afternoon. This photo can also be found in the album Beach Time at Dahican!.
Please login to get more out of this site
You are currently not logged in, do so now to add comments, like articles as well as photos, submit to competitions, translate articles and gain access to unlimited photo upload! If you are not registered yet, go here to find out more about Lomography and join now! If you just want a limited account for now you can use Twitter or Facebook. We would love to have you as a member here!
38 people like this photo
Liking photos helps us to present the best ones to you and others. 38 people like this photo. 38 people like this photo: icequeenubia, juniardigiugno, lakritz, isabel_mebarak, jbeischer, srmarcus, pop_jazz, feelux, ryszardl70, lawypop, sorcery, tracyvmoore, ripsta, suizidekid, earlybird, goonies, tamsoam, sirio174, cocaneonkamerasutra, lazybuddha, oldstandby, rik041, boobert, ugodelcorso, mishika, wapclub, superlighter, ornella, endorphin, meryl, kimpy05, inine, cbadajos, bloomchen, walasiteodito, frenchyfyl, billy_chan, and sapphire-st.
1 comment

subset: commoncrawl


text:
Available Colors/Styles
Detail Pics
You should just plan for the inevitable harassment and potential incarceration that comes with being a skater. So, get out there and pop, shove, flip, and grind on Real Skateboard Lock Up Skate Deck as much as you can before Johnny Funstopper arrives ... it's destined to happen at some point.
- Seven-ply maple offers the most natural feel with its smooth blend of rigidity and flex and unmatched pop
- Medium concave turns precision foot placement into well-timed rotations


text:
A shared storage distributed file system is presented that provides users and applications with transparent access to shared data stored on network attached storage devices by utilizing layering techniques to inherit file management functionality from existing file systems. The present invention stores meta-data for the shared data as real-data in a standard, non-modified, client-server distributed file system, such as NFS. In effect, the standard client-server file system acts as a meta-data server. The name space consisting of inode files stored as real-data on the meta-data server acts as the name space for the shared data. Similarly, file attributes of the inode files are utilized as the file attributes of the shared data. By utilizing an existing client-server system as the meta-data server, development time and complexity are greatly reduced, while speed advances in the underlying client-server system may be incorporated without alteration of the present invention. A method for communicating with network attached storage devices over layered file systems is also presented.
1. A shared storage distributed file system having a namespace defining a directory structure of files and metadata that includes pointers to real-data, the file system comprising:
a) at least one server computer running server software for managing the namespace; and
b) a plurality of client computers each running client software, the client software
i) issuing namespace requests to the server computer, and
ii) directly retrieving, analyzing, and altering the metadata.
2. The file system of
3. The file system of
4. The file system of
5. The file system of
6. The file system of
7. The file system of
8. The file system of
9. A network of connected computing devices for implementing a shared storage distributed file system, the file system having a namespace, real-data, and metadata, the network comprising:
a) a network storage device connected to a network;
b) a server computer that manages the namespace in response to namespace requests, including requests to add new filenames to the namespace and to remove existing filenames from the namespace; and
c) a client computer in network communication with the server computer and the network storage device, wherein the client computer
i) issues namespace requests to the server computer,
ii) reads and writes the real-data directly from the network storage device, and
iii) creates, retrieves, and modifies the metadata.
10. The network of
11. The network of
12. The network of
13. The network of
14. The network of
15. The network of
16. The network of
17. The network of
18. The network of
19. The network of
20. The network of
21. The network of
22. The network of
23. An improved file system comprising:
a) a storage device;
b) a server software program that runs on a server computer and maintains a namespace; and
c) a client software program that runs on a client computer that responds to file system requests from an application program concerning a file, wherein the client software
i) obtains addressing metadata containing at least one pointer addressing real-data for the file,
ii) uses the addressing metadata to locate real-data associated with the file on the storage device, and
iii) alters the addressing metadata for the file.
24. The improved file system of
25. The improved file system of
26. The improved file system of
27. The improved file system of
28. The improved file system of
29. The improved file system of
30. The improved file system of
31. An improved file system comprising:
a) a storage device containing real-data and one or more direct pointers addressing the real-data;
b) a server software program that runs on a server computer, the server software program
i) maintains a namespace, and
ii) stores an indirect pointer within the namespace related to a file, the indirect pointer addressing at least one file related direct pointer on the storage device; and
c) a client software program that runs on a client computer that responds to file system requests from an application program concerning the file; the client software program
i) obtains the indirect pointer for the file from the server software program,
ii) uses the indirect pointer to obtain the file related direct pointer directly from the storage device, and
iii) uses the file related direct pointer to read and write real-data associated with the file directly from the storage device.
32. The improved file system of
33. The improved file system of
34. The improved file system of
35. The improved file system of
36. The improved file system of
37. An improved file system comprising:
a) a storage device;
b) a server computer running server software that maintains a namespace defining a directory structure of files, and
c) a client computer in network communication with the server computer and the storage device, the client computer running client software that
i) obtains allocation information concerning the allocation of storage on the storage device and
ii) alters the allocation information during file allocation and de-allocation.
38. The improved file system of
39. The improved file system of
40. The improved file system of
iii) obtains addressing metadata locating real-data for a particular file, p1 iv) uses the addressing metadata to access real-data associated with the particular file on the storage device, and
v) alters the addressing metadata for the file.
41. The improved file system of
42. The improved file system of
43. A network of connected computer devices comprising:
a) a first computer running software for
i) managing a directory structure of files, and
ii) servicing directory requests, the directory requests including requests to add filenames to the directory, remove filenames from the directory, and search the directory; and
b) a second computer running software for
i) submitting to the first computer directory requests relating to a file request, and
ii) analyzing and altering metadata relating to the file request, the metadata including pointers to real-data.
44. The network of
45. The network of
46. The network of
47. The network of
48. The network of
49. The network of
50. A method for handling a file request from an application, the file request relating to real-data of a file, the real-data being stored on a network connected, shared storage device, the method comprising:
a) receiving the file request from the application at a client computer;
b) requesting an indirect extent pointer for the file from a server computer;
c) receiving the requested indirect extent pointer at the client computer;
d) using the indirect extent pointer to retrieve metadata from the storage device;
e) for a file read request, the client computer
i) analyzing the metadata to determine the locations of the real-data stored on the storage device, and
ii) reading the real-data from the storage device; and
f) for a file write request, the client computer
i) analyzing the metadata to determine the locations of the real-data stored on the storage device,
ii) allocating additional storage space to the file,
iii) writing real-data to the storage device,
iv) updating metadata, and
v) storing updated metadata on the storage device.
51. The method of
52. A method for handling file requests by a file system comprising:
a) receiving the file request at a client computer;
b) requesting that a server computer perform a namespace search for the file of the request
c) analyzing and altering metadata relating to the location of real-data of the file request at the client computer; and
d) saving the metadata altered by the client computer.
53. The method of
54. A method for handling file requests by a file system comprising
a) receiving the file request at a client computer;
b) requesting namespace data relating to the file request from a server computer;
c) analyzing and altering metadata at the client computer, the metadata relating to the allocation information of storage on a storage device; and
d) saving the allocation information metadata altered by the client computer.
55. The method of
56. The method of
[0001] The present invention relates general to computer file systems. More specifically, the present invention involves a distributed file system based on two technologies: shared storage and file system layering.
[0002] File Systems
[0003] The term �file system� refers to the system designed to provide computer applications with access to data stored on storage devices in a logical, coherent way. File systems generally hide the details of how data is stored on a storage device from the application program. For instance, data on a storage device is generally block accessible, in that data is addressed with the smallest granularity of a block; with multiple blocks forming an extent. The size of the particular block depends upon the actual device involved. Application programs generally request data from file systems byte by byte. Consequently, file systems are responsible for seamlessly mapping between application program memory space and the storage device address space.
[0004] Application programs store and retrieve data from files as contiguous, randomly accessible segments of bytes. Users are responsible for organizing data stored in these files, since file systems are generally not concerned with the content of each file. With a byte-addressable address space, users may read and write data at any offset within a file. Users can grow files by writing data to the end of a file. The size of the file increases by the amount of data written. Conversely, users can truncate files by reducing the file size to a particular length.
[0005] To maximize storage efficiency, file systems place �holes� in areas within files that contain no data. Holes act as space holders between allocated sections of user data. File systems must manage holes, though no data is allocated to the holes until users write data to the location. When a user reads from a hole, the file system fills the user buffer with zeros.
[0006] A hole can either occupy space within an allocated block or occupy space of entire blocks. File systems manage block aligned holes in a manner similar to real-data blocks, yet no blocks are allocated. File systems manage holes internal to allocated blocks simply by zeroing the space of the hole.
[0007] In addition, file systems are generally responsible for maintaining a disk cache. Caching is a technique to speed up data requests from application programs by saving frequently accessed data in solid-state memory for quick recall by the file system without having to physically retrieve the data from the storage device. Caching is also useful during file writes; file system may write user data to cache memory and complete the request before the data is actually written disk storage.
[0008] Additionally, file systems maintain information indicating which data blocks are available to be allocated to files. File systems modify these free lists during file allocation and de-allocation. Most modem file systems manage free lists by means of bitmap tables. File systems set bits to signify blocks that are allocated to files.
[0009] File systems present data to application programs as files-contiguous, randomly accessible segments of bytes. These files, called regular files, are presented to application programs through directory files which form a tree-like hierarchy of files and subdirectories containing more files. The complete directory structure is called the file system name space. Link files are a third type of file used to provide multiple file names per physical file.
[0010] File systems are required to map this application level interface to the often non-contiguous data blocks stored on the storage device. Generally, information required to map a particular file or directory to the physical locations of the storage device is stored by the file system in an inode within a data block. Inodes contain information, called attributes, about a particular file, such as file type, ownership information, access permissions and times, and file size. Inodes also contain a list of pointers which address data blocks. These pointers may address single data blocks or address an extent of several consecutive blocks. The addressed data blocks contain either actual data or a list of other pointers. With the information specified by these pointers, the contents of a file can be read or written by an application program. When an application program writes to a file, data blocks may be allocated by the file system. Such allocation modifies the inode.
[0011] The terms meta-data and real-data classify file system structure data and user data, respectively. In other words, real-data is data that users store in regular files. Other terms for real-data include user data and file data. File systems create meta-data to store layout information, such as inodes and free block bitmap tables. Meta-data is not directly visible to users. Meta-data requires a fraction of the amount of storage space that real-data occupies and has significant locality of reference. As a result, meta-data caching drastically influences file system performance.
[0012] Meta-data consistency is to vital file system integrity. Corruption of meta-data may result in the complete destruction of the file system. Corruption of real-data may have bad consequences to users but will not effect the integrity of the whole file system.
[0013] Distributed Files Systems
[0014] File systems can generally be divided into two separate types. Local file systems allow computers to access files and data stored on locally attached storage devices. While local files systems have advanced significantly over the years, such file systems have limited usefulness when data needs to be shared between multiple computers. Distributed files systems have been developed in order to make shared data available to multiple computer systems over a computer network. Distributed file systems provide users and applications with transparent access to files and data from any computer connected to the file system. Distributed file system performance cannot equal local file system performance due to resource sharing and lack of data locality.
[0015] Traditional distributed file systems are based on client-server architectures. Server computers store shared data on locally attached storage devices, called server-attached devices. Clients send file system requests to server computers via networks. Early distributed file systems, such as Sun Microsystems Network File System (NFS), use a central server to store real and meta-data for the file system. These central servers locally maintain meta-data and transport only real-data to clients. The central server design is simple yet efficient, since all meta-data remains local to the server. Like local file systems, central servers only need to manage meta-data consistency between main memory and storage devices. In fact, central server distributed file systems often use local file systems to manage and store meta-data for the file system. In this regard, the only job of the central server file system is to transport real-data between client and server.
[0016] As the need grew for greater parallelism and enhanced availability, distributed file system designs evolved from central servers to multiple server configurations. As with central servers, multiple servers, also known as distributed servers, store all file system data on devices connected to server computers. Since multiple servers cooperatively manage the file system, servers may share meta-data between computers. The complexity of these designs increases an order of magnitude, since distributed system integrity requires strong meta-data consistency between servers. Such systems cannot use local file systems to store data. As a result, server software must manage, store, and transport meta-data between servers. Two examples of distributed server file systems are the Andrew File System from Carnegie Mellon University and the Sprite File System from the University of California at Berkeley.
[0017] Distributed server file systems have further evolved into designs where clients and servers are often difficult to distinguish. In these systems, clients manage, store, and transport real-data and meta-data between servers and other clients. Coda from Carnegie Mellon University and the xFS File System from the University of California at Berkeley are two examples of merged client-server designs.
[0018] One aspect of client-server file system designs that has remained unchanged among central server, distributed server, and merged client-server designs is the local attachment of storage devices to computers. Unfortunately, this architecture has performance and availability weaknesses. With devices attached to computers, a computer failure renders data stored on the storage device inaccessible. Although redundant devices on separate computers can be added to improve availability, such a technique adds complexity and cost to the system.
[0019] Furthermore, the architecture limits performance when clients access data stored on remote devices. The data-path between client and storage device includes a server computer. This server adds overheads caused by server workload and overheads relating to storage device interface to network interface protocol translations. Server computers designed to support large workloads are very expensive.
[0020] Shared Storage Distributed Files Systems
[0021] Distributed file system designs that use shared storage, or shared disk, technologies have followed a slightly different evolution path.
[0022] Instead of storing data on storage devices connected locally to computers, shared storage designs store data on devices shared between client computers. Shared storage systems have a short data-path between clients and devices.
[0023] These distributed system require arbitration for the storage devices and consistency management of any data cached on the clients. Consistency mechanisms are either centrally located or distributed within the system. The consistency mechanisms may include software running on computers, hardware mechanisms attached to the networks, or a combination of both.
[0024] Two distinct file system designs utilize shared storage technology. The first case uses private file managers, in which client computers independently access meta-data and real-data directly from the storage devices. Private file manager schemes do not require dedicated file servers, since all necessary data is taken directly from the shared storage devices. With private file manager designs, each client views storage as locally attached. Clients only service local file requests. No direct communication is needed between clients. Such systems are often derived from modified local file systems. Examples of such systems include the Cray Research Shared File System, the Digital VAXcluster, and the Global File System from the University of Minnesota.
[0025] As a result of their designs, clients utilizing private file manages remain independent from the failures and bottlenecks of other clients. Similarly, client resources such as memory, CPUs, and bus bandwidth are not spent servicing requests from other clients. However, private file manager designs do have several disadvantages. First, the designs can only support a primitive form of caching. Clients may only access data cached locally in memory or stored on the shared devices; data cached in the memory of other clients is not accessible. The second disadvantage deals with complications encountered during recovery. Since clients are not aware of other clients, clients must indirectly determine data corruption caused by other client failures.
[0026] The second type of shared storage distributed file system design utilizes file manager server computers. These file servers manage file system directory structures and meta-data on non-shared storage devices. Clients make requests to the servers, the servers determine the location of real-data on shared devices by calling and examining meta-data from the non-shared storage device. Once the location is determined, the servers either initiate transfers between clients and storage devices or inform clients how to invoke the transfer. Servers must maintain and store meta-data, manage real-data, and control transfers between clients and storage devices. These shared storage designs suffer from many of the same difficulties as client-server architectures based upon server-attached disks. The server design is complex, since servers need to provide a great deal of functionality. Servers that fail or become overworked tend to disrupt file system operation. Since this form of distributed file system differs considerably from other shared storage designs, these designs can be classified as shared file manager, shared storage systems. The HPSS/SIOF project at Livermore National Laboratories is an example that uses a shared file manager to facilitate transfers between storage servers and clients.
[0027] I/O Interfaces
[0028] I/O interfaces transport data between computers and devices as well as among computers. Traditionally, interfaces fall into two categories: channels and networks. Computers generally communicate with storage devices via channel interfaces. Channels predictably transfer data with low-latency and high-bandwidth performance; however, channels span short distances and provide low connectivity. High-performance requirements often dictate that hardware mechanisms control channel operations.
[0029] Computers communicate with other computers through networks. Networks are interfaces with more flexibility than channels. Software controls substantial network operations, providing networks with flexibility but low performance.
[0030] Recent interface trends combine channel and network technologies into single interfaces capable of supporting multiple protocols. For instance, Fibre Channel (FC) is an emerging ANSI serial interface that supports channel and network operations. Fibre Channel supports traditional network protocols like Transmission Control Protocol/Internet Protocol (TCP/IP); Fibre Channel supports traditional channel protocols such as Small Computer System Interface (SCSI-3). Combined interfaces allow shared storage file systems to have high connectivity, connect long distances, and operating in unpredictable environments. A new term for I/O interfaces that support shared storage is storage area network (SAN). Shared storage devices that connect to SANs are also referred to as network attached storage (NAS) devices. The term NAS device refers to extent addressable storage systems connected to a network.
[0031] File System Layering
[0032] File system designers can construct complete file systems by layering, or stacking, partial designs on top of existing systems. The new designs reuse existing services by inheriting functionality of lower levels. For instance, NFS is a central-server architecture that utilizes an existing local file system to store and retrieve data on a storage device attached locally to the server. By layering NFS on top of local file systems, NFS software is free from the complexities of name space, file attribute, and storage management. NFS software consists of simple caching and transport functions. As a result, NFS benefits from performance and recovery improvements made to local file systems.
[0033] Other examples of file system layering include adding quota support to existing file system, strengthening consistency of cached data in an existing distributed file system, and a file system layer that compresses or encrypts files for a file system without such support.
[0034] Installable File System Interfaces
[0035] Most modern operating systems include installable file system interfaces to support multiple file system types within a single computer. In UNIX, the Virtual File System (VFS) interface is an object-oriented interface that supports various file system types within a single operating system. VFS occupies the level between the user/system call interface and installed file systems. Each installed file system provides the UNIX kernel with functions associated with VFS and vnode operations. VFS functions operate on whole file systems and perform tasks such as mounting, unmounting, and reading status. Vnode operations manipulate individual files. Vnode operations include opening, closing, creating, removing, reading, writing, and renaming files.
[0036] Vnode structures are the objects upon which vnode functions operate. A vnode is the VFS virtual equivalent of an inode. VFS creates and passes vnodes to file system vnode functions. Each vnode includes a pointer, called ν_data, for file systems to attach private structures such as inodes.
[0037] While several UNIX implementations incorporate VFS, the interfaces differ slightly between platforms. Several non-UNIX operating systems, such as Microsoft Windows NT, have interfaces similar to VFS. Installable file system interfaces such as VFS allow multiple file system types within an operating system. Each system is capable of making calls to other file systems though the virtual file system interface. For instance, an NFS server may be implemented to access a local file system through VFS. In this manner, the server software does not need to be specifically coded for the local file system type; new file systems may be added to an operating system without reconfiguring NFS.
[0038] The present invention is a shared storage distributed file system that provides users and applications with transparent access to shared data stored on network attached storage devices. The file system uses layering techniques to inherit file management functionality from existing systems. Meta-data in the present invention is stored and shared among multiple computers by storing the meta-data as real-data in regular files of a standard, non-modified, client-server distributed file system. In effect, the standard client-server file system serves as the meta-data file system (MFS) for the present invention.
[0039] Real-data is stored on network attached storage devices attached to a storage area network. SFS benefits from direct network device attachment, since NAS devices off-load time-consuming data transfers from server computers. Furthermore, client computers operating under the present invention store file system meta-data on a meta-data file system. Using this meta-data, clients manage real-data stored on the network attached storage devices. The meta-data file systems also maintain the present file system name space and file attributes.
[0040] By utilizing an existing client-server system as a meta-data file system, the present invention is able to utilize the small-file access speed, consistency, caching, and file locking that is built into modern client-server file systems. Not only is development work reduced, but implementation is also simplified. Furthermore, future advances in client-server architectures are able to be incorporated easily and quickly.
[0041]FIG. 1 is a representational drawing of a network environment utilizing a file system of the present invention.
[0042]FIG. 2 is a representational drawing of the network environment of FIG. 1, showing additional details of the client element.
[0043]FIG. 3 is a flow chart showing the basic structure of meta-data file consistency management of the present invention.
[0044]FIG. 4 is a representational drawing of a directory structure that the present invention stores in the name space of the meta-data file system.
[0045]FIG. 5 is a representational drawing of an inode file data layout of the present invention.
[0046]FIG. 6 is a flow chart showing the basic structure of the file creation process of the present invention.
[0047]FIG. 7 is a flow chart showing the basic structure of reading and writing file data of the present invention.
[0048]FIG. 8 is a flow chart showing the basic structure of the file removal process of the present invention.
[0049]FIG. 9 is a flow chart showing the basic structure of retrieving an inode file of the present invention.
[0050]FIG. 10 is a flow chart showing the basic structure of updating an inode of the present invention.
[0051]FIG. 11 is a flow chart showing the basic structure of storage block allocation of the present invention.
[0052]FIG. 12 is a flow chart showing the basic structure of file truncation of the present invention.
[0053] The present invention is a distributed file system that provides users and applications with transparent access to shared data found on storage devices attached directly to a network. This access is provided by utilizing existing, non-modified, client-server distributed file systems for meta-data storage. The client-server file system also provides file attribute and name space management. For purposes of this application, the present invention will be referred to as the Shared File System, or SFS.
[0054] Referring to FIG. 1, a network environment 100 is shown that utilizes a file system of the present invention. In the figure, network environment 100 has both a local area network (LAN) 102 and a storage area network (SAN) 104. The storage area network 104 is represented as a subset of the local area network 102 to illustrate that SAN 104 often exists merely as part of the LAN 102. For instance, Fibre Channel is an interface standard that can simultaneously support both local area network 102 and storage area network 104 traffic. However, it is conceivable and within the scope of this invention for the SAN 104 to be separate from the LAN 102, utilizing different interface protocols and different physical links than LAN 102. Example interfaces that could be used by SAN 104 include Fibre Channel, High Performance Parallel Interface (HiPPI), Intelligent Peripheral Interface (IPI-2) and Small Computer System Interconnect version 2 (SCSI-2). These SAN interfaces may utilize different protocols including SCSI-3 and IPI-3. Interfaces suitable for LAN 102 are Ethernet, Fibre Channel, and Asynchronous Transfer Mode (ATM). Examples of LAN protocols are Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) on Internet Protocol (IP).
[0055] Attached to the LAN 102 are SFS clients 106 and a meta-data file system (MFS) server 108. The MFS server 108 has direct access to a local storage device 112. Attached to the SAN 104 are SFS clients 106 and network attached storage (NAS) devices 110. For the purposes of this invention, NAS devices 110 are considered to include all extent addressable storage systems connected to a network. Example NAS devices 110 include single disk drives, striped disks, disk arrays, solid-state storage devices, tape drives, tape robots, and even computers with locally-attached disks running special software that make disk storage extent addressable. These devices 110 communicate with the SFS clients 106 through SAN 104.
[0056] SFS is currently implemented in the Silicon Graphics IRIX 6.2 operating system under the Virtual File System (VFS) interface. SFS use the Sun Microsystems Network File System (NFS) as the meta-data file system. SFS stores real-data on Fibre Channel network attached SCSI devices. Fibre Channel may be used to communicate between MFS clients and servers, though an Ethernet LAN suffices. While these implementation details specify an existing, preferred embodiment, alternatives to one or all of these protocols would be obvious to one skilled in the art and are within the scope of the present invention. For instance, it would be obvious to one skilled in the art to utilize a Microsoft Server Message Block (SMB) based distributed file system or the Distributed File System (DFS) (a Distributed Computing Environment, or DCE, application based on the Andrew File System) as the meta-data file system.
[0057] Under the present invention, the MFS server 108 is actually operating an existing, prior art distributed file system, such as NFS. The meta-data requested by client 106 is like any other regular file for which the MFS server 108 is responsible. For instance, an SFS inode file that contains the block addresses of the real-data stored on the NAS devices 110 is simply a regular real-data file for the MFS server 108. SFS client software operating on clients 106 is responsible for storing the SFS meta-data in MFS regular files. Because of the structure of the SFS system, clients 106 are able to use the MFS directory structure and file attributes with very little modification.
[0058] The utilization of an unaltered distributed file system as a meta-data file system allows SFS to maintain meta-data consistency using the distributed file systems built-in file locking mechanisms. In addition, since most distributed file systems have good small file performance and failure recovery processes, such systems are ideal candidates for handling meta-data. The availability of the MFS to the network environment 100 can be enhanced using redundant servers 108, and devices 112, which is well known in prior art distributed file systems. Finally, this structure for handling meta-data files eliminates much of the complex and tedious tasks of directory and file attribute manipulation, caching, and consistency that are inherent in other techniques for shared storage file systems.
[0059] Multiple File Systems
[0060] In order for the SFS system to utilize an existing client-server file system as the MFS 108, it is necessary for the client-server system to be operating and accessible to the SFS software running on client 106. One method of accomplishing this is to implement SFS on a system allowing for multiple file systems to coexist. In the preferred embodiment, SFS is implement through the use of the UNIX Virtual File System interface (VFS). FIG. 2 illustrates the utilization of the VFS interface 122 on SFS client 106. User application 120 is a program running in user space on client 106. When the application 120 needs to store or retrieve file data stored on an SFS file system, the application 120 makes the request to the operating system. The request is received by the kernel-level, Virtual File System (VFS) interface 122, which routes the request to SFS software 124.
[0061] In order to access file data on NAS device 110, SFS software 124 must receive the inode file (meta-data) for the file from the meta-data file system 132, which is comprised of the MFS client 126 and the MFS server 108. To obtain this meta-data, SFS software 124 makes a request for the file containing the meta-data through VFS 122. The VFS 122 routes this request to the MFS client (NFS client) software 126. The MFS client software 126 forwards the request to the MFS server 108 through network device drivers 128 and the local area network 102. The MFS server 108 then retrieves the requested file from local storage 122, and returns the file to the requesting MFS client software 126. MFS server 108 may also be utilizing the Virtual File System interface to coordinate communication between the request from the MFS client 126 and a local file system controlling data on local storage 112.
[0062] The meta-data file received by MFS client software 126 is then returned to SFS software 124 via the VFS interface 122. When the SFS software 124 receives the inode file, SFS software 124 then transfers the real-data through the NAS device drivers 130 of the client 106. These drivers 130 access one or more of the NAS devices 110 connected to the storage area network 104. The NAS device drivers 130 may consist of multiple layers of drivers. One layer may control single NAS devices 110 and a higher layer may group single devices into logical NAS devices 110.
[0063] As seen in FIG. 2, the meta-data path of the present invention is considerably longer than the real-data path. However, meta-data may be cached on the SFS client 106 or in the main memory of the MFS server 108 through standard caching and consistency mechanisms built into the MFS client-server architecture. The SFS software 124 may cache real-data in SFS client 106 main memory, though SFS software 124 may bypass caching for large requests with no locality. SFS software 124 maintains real-data consistency by comparing the time data is cached with the modification time of the inode file retrieved from MFS server 108. If these times differ, the cached data is invalid.
[0064] In functioning in this manner, the application program 120, the VFS interface 122, the MFS client software 126 and MFS server 108, the device drivers 128, 130, and the storage devices 110, 112 all operate without alteration from the previously known prior art. In other words, the present invention allows the implementation of a shared storage distributed files system merely by operating SFS software 124 on SFS clients 106.
[0065] Meta-Data Consistency
[0066] SFS clients 106 manage meta-data file consistency using file locking mechanisms built into MFS 132. Both read-locks and write-locks can be placed on files in MFS 132. MFS 132 grants read-locks when a file is not locked or is locked with other read-locks; MFS 132 grants write-locks when a file is not already locked. FIG. 3 illustrates how SFS software 124 utilizes MFS 132 file locking mechanisms when accessing meta-data files. At step 140, SFS 124 decides whether the meta-data is to be modified. If SFS 124 intends to modify the meta-data, SFS 124 submits to MFS 132 a write-lock request for the meta-data file at step 150. If SFS 124 intends to access without modifying the meta-data, SFS 124 submits to MFS 132 a read-lock request for the meta-data file at step 142. SFS 124 must wait for the lock requested in steps 142 or 150 to be granted by MFS 132 before proceeding to steps 144 or 152. By requiring write-lock on an SFS meta-data file before the file can be modified, it is impossible to modify a meta-data file that is currently being utilized by another client 106. Similarly, the requirement of obtaining a read-lock before use prevents the use of a meta-data file that is currently being modified by a different client.
[0067] At steps 144 and 152, SFS 124 submits to MFS 132 read requests for the meta-data file. At step 146, SFS 124 uses the meta-data without modification. After step 146, the process continues to step 148. On the modify branch at step 154, SFS 124 modifies the meta-data. This branch continues to step 156, where SFS 124 submits to MFS 132 write requests of the modified meta-data file. The process ends at step 148 where SFS 124 unlocks the meta-data file.
[0068] SFS Meta-Data
[0069] SFS 124 stores meta-data files in an MFS 132 directory structure shown in FIG. 4. These files are not directly accessible to user applications 120, but rather are utilized by the SFS software 124 to store information about the NAS devices 110 and the real-data file stored on these devices 110. This information includes system wide information, such as superfile 164, the remove directory 166, and segment files 170; as well as inode files 180 which contain information on the various files in the file system. Most of the meta-data is contained in the superfile 164, the segment files 170, and the inode files 180. Table 1 lists the specific contents of these three main types of meta-data files. The remove directory 166 is used only for temporary storage of files prior to deletion.
[0070] SFS 124 utilizes the name space and directory structure of the inode files 180 on MFS 132 to maintain the name space and directory structures for the real-data files stored on NAS devices 110. By allowing application programs 120 to view the file locations and directory structure of the inode files 180 on MFS, there is no need for SFS to maintain a separate file structure. SFS software 124 also does not need to manage directory and link files. SFS 124 forwards, without modification, directory and link file requests between the user application 120 and MFS 132.
[0071] The circled areas 160 in FIG. 4 enclose user visible files and directories and thereby show the name space for SFS 124. In this Figure, inode files f1 through f6 (180) in subdirectory tree are SFS inode files stored as MFS 132 regular files. Directories d1 and d2 (172) are standard MFS 132 directories. The SFS file system is mounted on the directory called root 162. The name space subdirectory tree 160 rooted at root/mount is also visible to users. For instance, users access file f4 with the path root/d2/f4. SFS 124 translates the user path into root/mount/d2/f4 in order to access the f4 inode file stored on MFS 132. FIG. 4 also shows that the other meta-data files such as the superfile 164, the remove directory 166, and the segments directory 168 are not visible to user applications 120.
[0072] Superfile
[0073] As was shown in FIG. 1, each network environment 100 utilizing the SFS file system consists of one or more shared NAS devices 110 attached to the SAN 104. Several NAS storage devices 110 may form a logical volume to comprise a single, logical device. SFS 124 stores information about logical NAS devices 110 in a meta-data file called a superfile 164. This device information includes the device name, number, and capacity.
[0074] The superfile 164 also contains the file system block size. This block size is a multiple of the least common multiple of all client computers 106 page sizes. Suppose some clients 106 have 4096 byte page size and other have 16384 byte page sizes. The file system block size needs to be at least 16384 bytes but could be 32768 bytes or 65536 bytes. The choice of block size is a tradeoff between performance and storage efficiency. Larger block sizes require less meta-data transfer and reduce external fragmentation, but reduce storage efficiency since partially filled, large blocks waste more space than partially filled, small blocks.
[0075] Segment files
[0076] SFS 124 partitions logical NAS devices 110 into multiple segments in order to exploit parallelism in the network environment 100. Segmentation allows multiple processes to simultaneously allocate and de-allocate file data. Each segment contains multiple data blocks found on NAS device 110, and has its own allocation table associated with these data blocks. Allocation tables store information about currently unused data blocks that are available to be allocated to file. These allocation tables are implemented via bitmap tables, as is well-known in the prior art. Each of the segment files 170 contains the allocation table associated with that segment. SFS software 124 retrieves and modifies the appropriate segment files 170, designated by segment file number, during file allocation, file de-allocation, and file system statistic gathering operations.
[0077] Inode File
[0078]FIG. 5 illustrates an inode file 180. Each inode file 180 maintains information pertaining to a single SFS 124 regular file stored on an NAS device 110. Since MFS 132 treats inode files 180 as real-data, MFS 132 maintains file attributes for each file, such as file name, ownership, access privileges, access, creation, and modification times, and file size. SFS uses these inode file attributes as the attributes for the associated SFS file. In this manner, SFS 124 is freed from the overhead of maintaining file attributes. File attribute requests received from user application 120 can be forwarded to MFS 132 with little overhead. Responses from MFS 132 can similarly be forwarded back to the inquiring user application 120.
[0079] Each inode file 180 contains a list of extents that address data blocks storing file real-data. To minimize meta-data space, each extent 184 may address several consecutive device data blocks. To indicate all the necessary addressing information, each extent 184 includes a flag, the segment number of the segment containing the real-data, the block offset into the segment, and the number of blocks within the extent that contain real-data. The flag determines whether or not the extent addresses real-data or a hole in the file.
[0080] Some file attributes are not maintained directly by MFS 132. As a result, each inode file 180 also contains a fixed-size header 182 for such attributes and any additional information not maintained by MFS 132, such as the number of extents in the inode.
[0081] SFS 124 cannot determine file size based upon the amount of normal inode data, since a file's meta-data is typically only a small fraction of the size of the file's real-data. Rather than store the real file size in the inode header, SFS 124 appends a single byte, the last-byte 188, to the inode file 180 beyond the end of the list of extents 184. This last-byte 188 is positioned at an offset that creates an empty space or hole 186 in the inode file 180. This hole 186 requires almost no storage space on MFS 132, yet increases the file size of the inode file 180 by the length of the hole 186. SFS 124 can then translate the inode file size 190 to the real file size 192 by subtracting a constant length from the inode file size 190 maintained by MFS.
[0082] In the preferred embodiment, SFS 124 calculates the file size 192 by subtracting the size of the header 182, one extent 184, and one byte from the inode file size 190. For instance, an empty file has a file size 192 of zero. The inode file 180 of this empty file has a length equal to the size of the header 182, one extent 186, and the last-byte 188.
[0083] SFS 124 supports user level record locking by placing MFS 132 record locks on inode files 180. SFS 124 forwards user lock requests to MFS 132 with the slight modification to the requested lock record, in that SFS 124 increments the byte offset of the lock record by the size of the inode file header 182. Since inode file sizes 190, including holes 186, are always larger than the real file size 192, adjusted lock record offsets fall within the real file size 192 range. Other clients 106 requesting record locks at the same file locations will receive a notice, originating from MFS 132 and forwarded by SFS 124, that the requested records are already locks.
[0084] SFS and the VFS Interface
[0085] As shown in FIG. 2, SFS 124 is accessible through the VFS interface 122. User application 120 requests route through the VFS interface 122 to SFS software 124. Furthermore, SFS 124 makes meta-data requests through VFS 122 to the meta-data file system client 126. SFS 124 maintains MFS client 126 vnodes for directories, links, and meta-data files.
[0086] SFS 124 maintains several structures during the course of file operations, including an SFS vnode, an in-core SFS inode, and an MFS vnode. For each open file, the kernel retains pointers to the corresponding SFS vnode. The VFS interface 122 passes this pointer to all SFS vnode routines.
[0087] SFS 124 maintains an in-core inode for each regular file. This inode contains a copy of the inode file header 182, and some or all of the file extents. The SFS inode also includes a pointer to the MFS vnode of the inode file 180. SFS 124 routines pass this MFS vnode pointer to MFS 126 vnode routines. Using MFS file locks, SFS 124 maintains consistency between the in-core inode and the inode file 180.
[0088] SFS software 124 maintains similar structures for directories and links. Like regular files, directory and link structures include an SFS vnode, an SFS inode, and an MFS vnode. Since SFS 124 redirects directories and links requests to MFS 132, SFS 124 maintains no extent lists. MFS 132 manages directories and links without SFS 124 intervention.
[0089] Basic File System Operations
[0090] The basic file system operations are creating a file, writing to a file, reading from a file, and removing a file. These operations require other operations such as reading and writing inode files as well as allocating and de-allocating files.
[0091] File Creation
[0092] A file creation operation of the present invention is illustrated in the flow chart shown in FIG. 6. The process starts by an application program 120 running on one of the SFS clients 106 desiring to create a new file. The application program 120 submits a create request to the SFS software 124, as shown in step 200. At step 202, the SFS software 124 receives this request, and then summits a request to MFS 132 for a name space 160 search for the file name given by the application program 120. If, at step 204, MFS 132 indicates that the file already exists, the operation concludes. However, if the file does not already exist, SFS 124 submits a request to MFS 132 to create the file. At step 208, MFS 132 creates a regular file for SFS 124. At step 210, SFS 124 writes an inode file 180 to this newly created regular file. Since no data has been allocated to the SFS file, the inode file 180 contains no valid extents 184. The process of writing an inode file to MFS 132 is described in more detail below in connection with FIG. 10. The file creation process then completes.
[0093] File Reads and Writes
[0094] Read and write operations are illustrated in the flow chart shown in FIG. 7. The process starts by application program 120 desiring to transfer program data between user memory and a file. The application 120 submits either a read or a write request to SFS 124, as shown in step 220. At step 222, the SFS software 124 receives this request, and in turn submits to MFS 132 a lock request for the inode file 180 corresponding to the real-data file. MFS 132 grants the lock when it becomes available. After the inode file is locked, SFS 124 reads the inode file 180 from MFS 132, as shown in step 224. Reading an inode file is shown in more detail in FIG. 9.
[0095] The request made at step 224 is now seen to be simple requests for regular file data from the client-server file system operating as the MFS 132. In step 226, MFS 132 retrieves the requested file from local storage 112 or MFS cache, and MFS 132 delivers the file to client 106. SFS 124 receives the meta-data for the requested file from MFS 132, and in step 228 determines how to map the application 120 request to NAS devices 110 disk blocks.
[0096] If the application program 120 submits a read request in step 220, as determined at step 230, SFS 124 retrieves data blocks from devices 110 and delivers real-data to the application program 120 at step 232. Once the step 232 transfer is complete, SFS 124 submits a request to MFS 132 to unlock the inode file 180 at step 242.
[0097] If the application program 120 submits a write request in step 220, SFS 124 must decide at step 234 whether additional data blocks stored on NAS devices 110 need to be allocated. If SFS 124 determines that no new data needs to be allocated to the SFS file, SFS 124 at step 240 writes the application 120 data to the devices 110. At step 242, SFS 124 completes the operation by submitting a request to MFS 132 to unlock the inode file 180.
[0098] If, at step 234, SFS 124 determines data must be allocated to the SFS file, SFS 124 must read and alter one or more segment files 170 stored on MFS 132 at step 236. This step is shown in more detail in FIG. 11. At step 238, SFS 124 then updates the inode file 180 and saves it to MFS 132. This latter step is further explained in connection with FIG. 10. The process continues to step 240 as explained above.
[0099] File Removal
[0100] A file removal operation of the present invention is illustrated in the flow chart shown in FIG. 8. The process starts by an application program 120 desiring to remove an existing file. The application program 120 submits a remove request to the file system of the present invention, as shown in step 250.
[0101] Removing a file in a file system like NFS requires several state transitions. Given a failure between any state, the file system may become inconsistent. To compensate, SFS 124 modifies the name space 160 of MFS 132 before removing a file. At step 252, SFS 124 renames the inode file 180 corresponding to the SFS regular file marked for removal. This inode file 180 is moved to the SFS 124 remove directory 166 and renamed to a unique name allocated by the file system. In the preferred embodiment, SFS 124 uses the MFS 132 inode number of the file to create a unique name. At step 254, SFS 124 truncates the file to zero bytes in length. This truncation de-allocates the file data blocks. SFS 124 then removes the inode file 180 from the remove directory 166 in step 256 by issuing a remove command to MFS 132. Data block de-allocation is further explained in connection with FIG. 12.
[0102] Inode File Read
[0103] SFS software 124 periodically needs to read inode files 180 from MFS 132. The process is illustrated in the flow chart shown in FIG. 9. Starting at step 260, SFS 124 reads the inode file 180 from MFS 132 as a regular file. Since the inode file 180 may contain many extents and occupy thousands of bytes of data, SFS 124 reads only a fixed size buffer of data at one time. MFS 132 transfers a portion of this file to the SFS buffer memory. At step 262, SFS 124 unpacks the inode header 182 from the inode file 180 into a memory structure. At step 264, SFS software 124 verifies the consistency of the inode magic number. If this magic number is invalid, the process terminates with an error. If the magic number is valid, SFS 124 assumes the inode header 182 is valid. At step 266, SFS 124 checks the number of extents field of the header 182. If this field indicates that there are zero extents in the inode extent list 184, the process terminates successfully.
[0104] If the inode header 182 indicates the inode contains extents, the process continues to step 268. At step 268, SFS 124 unpacks all extents in the current buffer into SFS client 106 memory. At step 270, SFS 124 verifies the consistency of each extent by checking for valid extent flags. If any extent is invalid, the process terminates with an error. If all extents in the buffer are valid, at step 272, SFS 124 determines if the inode file 180 contains extents not yet read. When copies of all extents are in SFS client 106 memory, the process completes successfully. If more extents need to be read, SFS 124 reads another buffer from MFS 132 and returns to step 268.
[0105] Inode File Write
[0106] SFS software 124 periodically needs to write inode files 180 to MFS 132. The process is illustrated in the flow chart shown in FIG. 10. Starting at step 280, SFS 124 determines if the inode file 180 can be transferred with one write request. If the inode file size 190 is less than or equal to the write buffer size, the process proceeds to step 282. At step 282, SFS 124 packs the inode header 182, extent list 184, and last-byte 188 into the write buffer. SFS 124 then writes this buffer to MFS 132 as file real-data. The process completes successfully after step 284.
[0107] If at step 280 the inode file size 190 is greater than the write buffer, the process continues to step 286. SFS 124 proceeds to request that MFS 132 truncate the inode file 180 to zero bytes in length. At step 288, SFS 124 writes the last-byte 188 to MFS 132 at the inode file size 190 offset. Then, SFS 124 packs the buffer with the inode header 182. At step 292, the buffer is not full, so SFS 124 packs the remaining buffer space with inode extents. Once the buffer is full, SFS 124 writes the buffer to MFS 132 as file real-data. At step 296, if more extents need to be written, the process returns to step 292. Once the entire extent list 184 is written, the process completes.
[0108] Block Allocation
[0109] During a file write, SFS software 124 may need to allocate storage from the network attached storage devices 110. The process is illustrated in the flow chart shown in FIG. 11. Starting at step 300, SFS 124 chooses the segment from which to allocate data blocks. This selection may be random or follow a more advanced heuristic. The goal of the section is to balance system level accesses across all segments as well as attempt to allocate sequential storage blocks for the file. Once a segment is chosen, the process continues to step 302. At step 302, SFS 124 requests a write-lock of the segment file 170 from MFS 132. SFS 124 proceeds to read the segment data from this MFS 132 file. At step 304, SFS 124 searches through the segment allocation table for free blocks. SFS 124 allocates blocks until the allocation request is satisfied or all segment blocks are allocated. At step 306, SFS 124 proceeds to write and unlock the modified segment file 170 stored on MFS 132. If the allocation request is complete, the process ends successfully. If the allocation request is not complete, SFS 124 attempts to select a different segment. If such a segment exists, the process returns to step 300 and selects this segment for allocation. If SFS 124 has exhausted all segments and requires additional blocks, the process terminates with an �out of space� error.
[0110] File Truncation
[0111] File truncation occurs during file removal or a truncation request from an application program 120. During truncation, SFS 124 modifies the inode file size 190 and possibly de-allocates storage of network attached storage device 110 blocks. The process is illustrated in the flow chart shown in FIG. 12. Starting at step 320, SFS 124 locks the inode file 180 by acquiring a write-lock of the file from MFS 132. Once the lock is granted by MFS 132, SFS 124 reads the inode file 180. At step 322, SFS 124 appropriately modifies the inode extent list 184. In the process, SFS 124 builds a memory list of extents to free. At step 324, SFS 124 writes the modified inode file 180 back to MFS 132 and then unlocks the inode file. The process proceeds to step 326. From the list of extents to free, SFS 124 selects a segment to begin de-allocation. At step 328, SFS 124 locks and reads the segment file 170 from MFS 132. At step 330, SFS 124 frees all blocks in free list corresponding to the current segment. SFS 124 then writes the modified segment file 170 to MFS 132 and unlocks the segment file 170. If the extent list contains additional extents to free, the process returns to step 326. Once all extents are freed, the process terminates successfully.
[0112] Failure Recovery
[0113] Failure recovery is a vital element of distributed systems. Recovery must be timely, and damage caused by corrupted meta-data must be limited to single files rather than entire file systems. File system layering provides the present invention with a great deal of protection. By layering SFS 124 on top of MFS 132, MFS 132 manages name space, file locking, and meta-data file recovery. MFS 132, however, does not facilitate consistency between meta-data update operations. Without atomic meta-data updates, a failure while modifying meta-data may leave an SFS file system in an inconsistent state. To compensate, SFS 124 sequences meta-data update operations in an order that contains such inconsistencies to single files or permits repairable inconsistencies.
[0114] For instance, during file allocation, SFS 124 updates segment file 170 allocation tables before updating inode files 180. If a failure occurs before the inode 180 is updated, the segment file 170 becomes inconsistent with the remainder of the file system. The allocation table reflects data blocks as allocated, though no inode 180 points to these blocks.
[0115] During file de-allocation, SFS 124 updates inode files 180 before modifying segment files 170. If a failure occurs before the segment files 170 are updated, the allocation tables indicate blocks as erroneously allocated. These inconsistencies are temporary, since SFS utilities can dynamically repair segment files 170.
[0116] Segment inconsistencies do not affect normal file system operation, with the temporary exception that less storage space is available. SFS utilities provide a recovery tool to repair this inconsistency. The tool reads through all inode files 180 and creates a list of blocks that are allocated to files. Using this list, the tool reconstructs consistent segment files 170 in order to restore data blocks for file allocation. This utility can be run while the file system is on-line.
[0117] Alternative Embodiments
[0118] Several known alternative embodiments to the file system of the present invention exist that may improve the performance of the file system in one or more areas. Some improvements break the separation of meta-data and real-data. Benefits of these improvements may vary according to MFS server 108 performance, network performance 102, and workload.
[0119] Stuffed Inodes
[0120] SFS 124 is optimized for large file performance. Every file access requires SFS 124 to read the file inode 180 from MFS 132 and access real-data on the shared storage devices 110 . For small files, this overhead time may be longer than the time needed to access a similar sized file directly from the MFS server 108. Furthermore, each SFS 124 file requires a minimum fixed storage overhead. For instance, a one byte file may require a minimum of four kilobytes of data on the MFS server 108 as well as four kilobytes on the shared storage devices 110. This internal fragmentation is significant for small files.
[0121] To reduce small file access times and internal fragmentation, SFS 124 could stuff inode files 180 with real-data. Stuffed inodes store real-data on the MFS server 108. Transparent to the users, SFS 124 would forward stuffed file requests to MFS 132 similar to directory and link files. SFS 124 would convert files that grow beyond the stuffing threshold into normal, shared-storage files. SFS 124 also would stuff non-stuffed files during file truncation. SFS 124 could determine whether an inode file 180 is stuffed with real-data by examining a flag in the header 182 or by examining the file size 190 of the inode file 180.
[0122] Segment Bitmaps on Network Attached Storage Devices
[0123] Segment files 170 contain segment header information as well allocation tables. During file allocation and de-allocation, SFS 124 modify the segment headers and allocation tables. For large file systems, segment files 170 may be hundreds of kilobytes. MFS 132 manages and transports segment files 170 to SFS 124. With high file system activity, the MFS server 108 may be overloaded.
[0124] To reduce server 108 workloads, SFS 124 could store segment headers information on MFS 132 and segment allocation tables on the network attached storage devices 110. With this optimization, the NAS devices 110 host meta-data as well as real-data. Segment meta-data could be distributed evenly across several devices 110.
[0125] Inode File Extents on Network Attached Storage Devices
[0126] Large, highly fragmented files may have relatively large inode files 180. To reduce server 108 load and distribute extent list accesses, SFS 124 could store inode file extents 184 on the NAS devices 110. SFS 124 would read inode file headers 182 from MFS 132. SFS 124 would then use extents in this header 182 to address shared storage device 110 data blocks that contain direct extents. These direct extents address real-data.
[0127] This optimization could have benefits for large files with many extents, since MFS 132 would maintain and transport less data; however, the additional indirection requires extra data transfers. Instead, a combination of both approaches could satisfy extreme cases. A flag within the inode file header 182 could indicate whether direct extents are stored on the MFS server 108 or on the NAS devices 110.
[0128] Meta-Data Consistency Manager
[0129] Meta-data consistency is extremely important. SFS 124 uses file locks managed by the MFS server 108 to preserve consistency. Although centralized servers can easily manage file locks and recovery, this centralized mechanism eventually becomes a bottleneck. SFS 124 may benefit from a distributed lock manager running on clients 106 or storage devices 110. Such a distributed lock manager could utilize techniques known in the prior art.
[0130] Store File Size in Inode Header
[0131] The SFS 124 implementation described above fills inode files 180 with holes to extend the inode size 190 to be larger than the file the inode 180 represents. This approach is based upon the assumption that SFS 124 can access MFS 132 file attributes quicker than reading file data. If this assumption ceases, storing the file size in the inode header 182 may improve file performance.
[0132] The invention is not to be taken as limited to all of the details thereof as modifications and variations thereof may be made without departing from the spirit or scope of the invention.
Referenced by
Legal Events
Original Image


text: Become a Member of Gateway Hills Health Club! Give Yourself the Gift of Health In today's fast-paced world, people rarely find the time to give something back to themselves. Now, with our around-the-clock services, you don't have to go by anyone else's schedule - just yours! Our facilities are open 24 hours a day, 7 days a week, and 365 days a year. At Gateway Hills Health Club, we believe that fitness and wellness is meant to be a lifestyle lived every day and every moment. Jump to a membership option: Standard Membership ($29 per month) All-Inclusive Membership ($59 per month) Personal Training ($159 per month) Get A Free Day Pass! One visit to our pristine Nashua health club and fitness center and you will understand why our innovative approach to healthy living is the best way to get results. Conveniently located in Nashua, we are just a short drive away from the hustle and bustle of city life, yet tucked away just enough to provide a real sense of sanctuary and solace. Because we cap our membership at 2,000 members, we make certain that we never compromise on quality of service, cleanliness, and class availability. Are you new to fitness? Call us today to request a free VIP Guest pass! Standard Membership for Just $29.99 per Month With a flat initiation fee of $49, your Standard Membership will include: 24/7 Health Club Access Cybex Studio LifeFitness Studio TRX Studio Virtual Studio 5K Running Trail Athletic Fields Wellness Coaches Nutritional Coaches Our 2014 Promotion: "Everything's Included" Membership Deal Our "Everything's Included" membership is a deal that you simply can't walk away from. Regularly priced at $119, we have given our potential members an incredible promotional deal. For just $59 per month, you can receive the invaluable gift of long-term health and wellness. With a flat initiation fee of $59, your "Everything's Included" membership will include: 24/7 Health Club Access Cybex Studio LifeFitness Studio Hot Yoga Studio Classes Hot Pilates Studio Classes SWEAT Small Group Personal Training TRX Studio Classes ZUMBA Studio Classes Spinning Studio Classes Barre Studio Classes Virtual Studio 5K Running Trail Athletic Fields Wellness Coaches Nutritional Coaches Complimentary BodyMetrix assessment Corporate Wellness Programs We at Gateway Hills Health Club value your health and wellness. If you are interested in providing the keys to health and wellness for your company, we offer great programs to meet the needs of your dedicated employees. We would be happy to meet with you or your human resources department to create a customized program aimed at minimizing the cost for your company's employees and increasing the morale of your devoted staff. Personal Training Specials Spring is over and summer is coming. Get the body you want with our athletic training and specialty personal training options! For unlimited semi-private personal training sessions, we are currently offering a Personal Training Special for just $149 per month. Your small group workout will consist of no more than 3 people per session. This way, you can still maintain an intimate, one-on-one workout with one of our expert personal trainers while being motivated to push past your plateau by a group of like-minded fitness enthusiasts. Join today. This could be the deal that changes your quality of life. Today is the day for you to make a commitment to your fitness. We have had the pleasure of working with real people, giving them the support to make real changes and seeing them use our support to achieve real success. We would love to provide you with a customized plan - completely formatted to suit your short- and long-term fitness goals. Are you interested in implementing a wellness program to help you increase your happiness or your general outlook on life? We're ready to go on the journey with you. Contact Gateway Hills Health Club today and ask for your free day pass to get started. Subscribe to Our Newsletter Get motivating health and fitness articles sent directly to your inbox.


text:
Radeon HD 6790 Graphics Card from PowerColor Reviewed
Posted 05 April 2011 - 02:27 AM
Intel Core 2 Quad Q9550 2.83GHz / ASUS P5Q Deluxe / Patriot Extreme Performance 2GB PC2-9600 DDR2-1200MHz / 2x Seagate ST3160827AS 160GB RAID 1 / Seagate ST31000340AS 1TB
Corsair TX750W / Sapphire HD 5870 1GB GDDR5 / SilverStone TJ05 / Scythe Zipang 140mm CPU Cooler / ASUS VH202T-P 20" widescreen monitor (x2) / XP Pro SP 3
"however, i cannot claim to be such a fish as i am not a fish at all..." - hardnrg,Jul 4 2005, 02:49 PM
Follow OCC on
Subscribe to the OCC Newsletter
Posted 05 April 2011 - 02:55 PM
OCC reviewer RHKCommander959 takes a look at a mid-range Radeon HD 6000-series card in his review of the PowerColor HD 6790 - http://www.overclock...owercolor_6790/
Glad to see AMD getting into the midrange market on this lineup. However at the same price point the GTX 460 is killing this card on fps, even in the AMD dominated Crysis
Life Begins @ 220mph
I7 2600K - ASUS Maximus IV Extreme-Z - 16GB Mushkin Redline 2133MHz - ASUS GTX 680- (2) Corsair Force GT 120GB SSDs RAID 0 - (2) 750GB WD Black HDDs RAID 0 - 900W Tagan BZ Series - U2-UFO
Dual Loop Water Cooling - Koolance RP-452X2 - CPU -> Koolance CPU-360 - Thermochill TA 120.3 - Liang D5 GPU -> D5 - XSPC RX360 - Koolance VID-NX680
The Cube Build Log - Update Coming
Guide for Unlocking MSi Afterburner
Posted 05 April 2011 - 03:19 PM
I remember the days when this argument was the other way around...when Crysis came out nVidia was wiping the floor with ATI cards of all types.
...even in the AMD dominated Crysis
GTX 770 replaced with watercooled GTX780...but too lazy to change the sig.
Posted 05 April 2011 - 04:38 PM
Current System
[CPU]Intel Xeon W3670 (i7-970) @3.20Ghz---[CPU Cooling]Thermalright Silver Arrow---[MOBO]ASUS Rampage Gene III---[RAM]G-Skill Rip Jaws (24GB)(6x4GB)---[GPU]ASUS GTX 780 OC---[PSU]KingWin Lazar LZ-1000---[CASE]Bitfenix Colossus Venom Edition---[HDDs]WD Dives(6.5TB total storage) and Samsung 250GB SSD(boot)---[Monitors] 3X NEC 24" LCD2490WUXi ISP Panels and 1X Seiki 39" 4K monitor
PC Audio System (Speakers) Triad InRoom Silver's --- (DAC) Schiit Modi --- (AMP) Emotiva MiniX-a-100 --- (Headphones) Sennheiser Momentums and Paradigm H15NC --- (Headphone AMP) --- Schitt Magni
Posted 05 April 2011 - 06:07 PM
Posted 06 April 2011 - 01:28 AM
Posted 06 April 2011 - 02:23 AM
AMD Athlon II X4 620 @ 3.3Ghz 1.375V | CoolerMaster Hyper 212+ with 2 Sickleflow fans 34C load/26C Idle | Asus M4A79XTD EVO
Gigabyte AMD Radeon HD6850 | Kingston HyperX 2X2GB DDR3-1600 CL8 | OCZ Modxstream 900W | Windows 7 64bit
Western Digital Caviar Black+Blue 2x1TB Raid 0 | Viewsonic VX2453 24" LED + 17" CRT monitors | CM Storm Sentential Advance gaming mouse & Logitech G110 Keyboard
Posted 06 April 2011 - 02:46 PM
I was ignoring this review for a while until I noticed that it said 6790 not 6970.
Its getting confusing with all the numbers
Main Gaming Rig
Intel 3960X
16GB of Corsair Vengeance
NVIDIA 780TI's in SLI
Corsair Force 3 GT 240GB SSD
Coolermaster 932 Case
Noctua D14 CPU Cooler
Thermaltake Toughpower XT Platinum 1275 Watts
3 X 24" LCD's
Donating to OCC :::: OCC Site Rules :::: OCC Reviews
RIP Verran and Nemo gone but never will be forgotten.
Posted 06 April 2011 - 02:50 PM
Its getting confusing with all the numbers
I agree. I saw it at first and thought it was another 6970, then it took a hard look to really see it was 6790. Can't these companies just keep things consistent?
Intel Core i5 4690K - ASUS Z97-A - EVGA GTX 770 2GB
Mushkin Ridgeback 16GB DDR3-2133 - Samsung 840 EVO 250GB SSD - Seagate 750GB + 1.5TB - WD 1TB - Cooler Master SPH 1050W
ASUS Xonar Xense + Sennheiser PC-350 Xense Edition + Sennheiser HD-280 Pro + HD-555 - Sapphire Vapor-X CPU Cooler - Cooler Master HAF XM
Follow OCC on
Posted 06 April 2011 - 02:58 PM
AMD Athlon II X4 620 @ 3.3Ghz 1.375V | CoolerMaster Hyper 212+ with 2 Sickleflow fans 34C load/26C Idle | Asus M4A79XTD EVO
Gigabyte AMD Radeon HD6850 | Kingston HyperX 2X2GB DDR3-1600 CL8 | OCZ Modxstream 900W | Windows 7 64bit
Western Digital Caviar Black+Blue 2x1TB Raid 0 | Viewsonic VX2453 24" LED + 17" CRT monitors | CM Storm Sentential Advance gaming mouse & Logitech G110 Keyboard
Posted 06 April 2011 - 03:15 PM
I was ignoring this review for a while until I noticed that it said 6790 not 6970.
I thought the exact same thing
Processor: Intel Core i5 3570k @4.4ghz | Motherboard: MSI z77a-g43 | Video Card: EVGA GTX 680 @1.3ghz core | Memory: 16gb Patriot ddr3 2133mhz (from OCC) | Case: Corsair 600T Alpine Edition | Power Supply: Corsair 700 Gamer Series
| Speakers: Corsair sp2500 (from OCC) | Headset: Logitech G35 | Mouse: Logitech g500 | Keyboard: Corsair K60 Red Switches
Posted 06 April 2011 - 03:39 PM
It never really was that way though. Just think back, the 4XXX series they had the 4870x2, and then they released the 4890 which was just a upgraded 4870.
I thought maybe they were going to only have XX90 on the dual gpu. So much for that idea.
I think the new XX90's are a weird naming schema. Hell, everything they do keeps getting changed around it's all confusing as hell.


text:
Join us for an opening reception on December 6th, 2014 from 7-11pm. Here We Are Nice is curated by and features the work of Soap Factory volunteers.
A handwritten sign on the side of the road proved an unlikely impetus for The Soap Factory's 2014 Volunteer Biennial. Spotted in its haphazard black scrawl, the sign read "ARE YOU EVEN NICE?". This anonymous inquiry challenged not only the ubiquitous core of our Minnesota Nice aspirations, but brought us face to face with one of the most overused four-letter words of our common vocabulary. As we toss that one syllable designation back and forth, it's not impossible to dispense with its pure meaning with each use of the word. What is it to be nice? Is it enough to be nice? ARE WE EVEN NICE?
We believe art is nice. Certainly, the spaces in which art can be shared are nice. Enjoying art in these spaces is nicer for all involved, and the dedicated individuals who volunteer their time, energy and talent toward the continued success of local art spaces are the nicest of all. As curators of this exhibition, Shelby Thomason and Christopher Barton hope that this showcase of appreciation to the dedicated volunteers of The Soap Factory - an exhibit which represents nearly every area of artistic endeavor - radiates as much inspiration and good will for the viewer as it does for us in our efforts to share it.
And to answer that inquisitive piece of graffiti, we may not be able to vouch for the beneficence beyond our walls, but within the galleries of this local art space, given the many years of hard work and tireless volunteer efforts witnessed within The Soap Factory, it's safe for us to at least offer this title as a kind of manifesto: HERE WE ARE NICE.
Twenty-five of The Soap Factory's volunteers are presenting their own work in this collaborative biennial show. Created and planned by artists who know The Soap Factory best, HERE WE ARE NICE showcases both the talents of The Soap Factory's volunteer force and the creative potential of its historic industrial space.
Participating artists: Nina Allen, Brandon Alvarado, Leslie Barlow, Michael Belloti, Carolina Borja, Tim Carrol, Kendall Erickson, Robert Fagerhaugh, Paul Fosaaen, Sam Isham-Schopf, Emily Janisch, Anna Johnson, Judd Kilgrore, Liam Lando, Will Lakey, Joe Lerro, Jessica McKenzie, Donna Meyer, Paul Miller, Jason Quick, Julia Sisson, Sarah Stone, Rosa Strandemo, Joni Van Bockel, Caroline Woodruff.


text:
Former Laker Josh Powell Arrested In Atlanta
Los Angeles Lakers
Buy Lakers Tickets
Full Schedule
Upcoming Games
Lakers CentralShop for Lakers Gear
Buy Lakers Tickets
NBA Scoreboard
NBA Standings
Team STATS
Team Schedule
Team Roster
Team Injuries
Sports Fan Insider
ATLANTA (AP) – Atlanta Hawks reserve forward Josh Powell was arrested before Saturday's game for refusing to move his car for an oncoming ambulance.
The 28-year-old Powell was not at Philips Arena while the Hawks played the Portland Trail Blazers.
Hawks spokesman Arthur Triche said the team was " aware of the traffic incident concerning Josh and that he is not at the game tonight." Triche also said he would have no additional comment until the team had gathered more information.
Triche said Powell was arrested late Saturday afternoon before the Hawks' 7 p.m. tipoff with Portland. Atlanta police charged Powell with failure to obey an authorized officer who was directing traffic and failure to yield to and obstruction of emergency equipment.
Powell, a seventh-year NBA veteran in his first season as a little-used Atlanta reserve, is averaging 4.9 points in 55 games.
(Copyright 2011 by The Associated Press. All Rights Reserved.)


text:
Brabantia Pedal Bin with Motion Control, 3.2 Gallons (12 Liter)
Available in Matte Steel (Fingerprint Proof)
Our Price: $75.55
List Price: $102.00, You Save: 26%, No Sales Tax, Except CT
Product Reviews5 2
Our 3.2 Gallon (12 Liter) pedal bin by Brabantia is a universal model and ideal for use in the kitchen and living room. It's large enough for your waste, but still small enough to fit under your worktop.
(W = side to side) (D = front to back) (H = top to bottom)
13-7/9"W x 9-5/6"D x 15-3/4"H
Ship Method:
Product Reviews:


text:
Oprah and Intention and singledom...
Find a Conversation
|Thu, 12-15-2011 - 11:29am
Okay folks.
I was watching Oprah on Dr.Oz and she says she does nothing without "intention" ..So I am t hinking that in 2012 if we dont want to be single then I am assuming we have to create the intention of not wanting to be single and work from there.
This to me means putting out all of the stops to find someone whether it be multiple dating sites, singles events, speed dating, networking. hanging out where opposite sex goes , sports bars, etc.etc.etc...
This morning I asked a fellow friend on facebook if he knew any single normal men .. He is about my age so he might know single normal men.. So that was my first attempt at the intention.
Any thoughts???
|Thu, 12-15-2011 - 12:26pm
I think it's always good to set an intention, "Chance favors the prepared mind" and "As a man thinketh..."
I feel exhausted reading your list of things you are thinking of doing. Not that you or I couldn't actually do all of those things, but I think this sort of "battle plan" can lead to feelings of failure and total frustration when you don't get your intention. "What am I doing wrong? Is there another activity I need to go do to meet someone?" you might think.
|Thu, 12-15-2011 - 1:01pm
I agree with you somewhat Florida and yes I have been doing alot of these things but I dont think I am doing enough of them and at times due to fear of rejection not following through as much as I should.. even if its my age or whatever which is a reality I am seeing older folks out there getting together and becoming couples.
Oh; i cant speak for others but my life is pretty good right now. I have setbacks and glitches but I have friends, family and I have a pretty decent life
|Thu, 12-15-2011 - 4:16pm
I think we all have to find the right balance between doing things w/ the intention or hope or goal, whatever you want to call it, of finding a partner, and then doing activities that havg nothing to do with that so we don't just go out of our minds.
|Thu, 12-15-2011 - 7:40pm
I think that's called doing what makes you happy- which is exactly what I do.
|Fri, 12-16-2011 - 11:21am
My exH was in his 50's and still blamed other people for everything--he always had this attitude that the world was out to get him and things that other people would realize that were just a bad accident, he looked at it like someone else was going to screw him over.
|Fri, 12-16-2011 - 11:28am
Somehow that doesn't seem to work that well for me, Marina--I don't know what I'm doing wrong.
|Fri, 12-16-2011 - 12:15pm
Good luck :)
|Fri, 12-16-2011 - 12:23pm
Yep. that is what I was thinking that when we are ready for something it appears.. Its like when the student is ready the teacher appears.. That is what I meant by intention.
I went to a singles mingle at the library last night.. There was a woman there who said she put a positive affirmation on the fridge asking God to get her a job.. A few weeks later she got a call for a job.. Now she said that she was sending out resumes and taking tests.. So it wasnt like she wasnt doing the work..
I guess we can wish till the cows come home but not sure if that will get us a man, job or whatever. There has to be some effort put into it..


text:
The Digital Art of George Grie
George Grie is a Russian – Canadian artist, one of the first digital surrealism artists, known for his 3D, 2D and matte paintings. His works render dream-like worlds, a merger between the reality and subconscious, emotions and philosophical thoughts. They are mental puzzles of supernatural illusions or even delusional trances that invite the viewers to a journey through inner thoughts their symbolisms. His images, neither conventional, nor comfortable, create states of controversy between the tension and the tranquility brought. Thus creating the impression of abstract or meaningless, but hidden beneath all of the different layers of his works, George Grie's work is something that needs discovering.
Born in 1962, during the Soviet regime, he graduated with a BA degree in Fine Arts and Applied Design. The artist likes surrealists Rene Magritte and Salvador Dali, fantastic realist such as Zdzislaw Beksinski and Wojciech Siudmak, also surreal photo manipulator Jerry Uelsmann who had heavily influenced his style. With such influences, it is evident that George Grie strayed from the get go of his professional career, the traditional, political altered art styles bounded by the Soviet Union, choosing the innovative neo-surrealism path instead.
Later on in his life, once settled in Toronto, Canada, George Grie saw the opportunity for a major change in his life and art style. He studied the latest digital art techniques and became more and more interested in this new path offered. For George Grie it was the beginning of a new phase, a complete freedom of self-expression; it gave him the possibility to combine his classical painting experience with the new digital medium.
George Grie's paintings exhibit strong and powerful images that capture visual paradoxes. They depict contemplative moments, solitude and melancholy that encourage introspection and self-observation. He does not force the comprehension of his works, leaving it up to viewer's knowledge and world perception, George Grie only giving hints through the titles of his compositions. Overall, a well-rounded artist that embraced the digital era and managed to create through it impressive works that awes the beholder.


text:
- 10/13/10 /
- Comment
Party Lines Slideshow: Colin Quinn, Taye Diggs, Kate Walsh, and More at Opening Night of A Life in the Theatre
Plus: David Mamet, Judy Gold, Angela Lansbury ...
Skip to content, or skip to search.
Plus: David Mamet, Judy Gold, Angela Lansbury ...
David Mamet's play is performed, word perfect, by Patrick Stewart and T.R. Knight. And that's the problem.
Pee-Wee Herman, a sort of 'Star Trek' invasion, and Sutton Foster singing "I Get a Kick Out of You" are a few of the expected delights of the upcoming season.
Princess Hijab, a Parisian artist, adds burkas to unsuspecting advertisements.


text:
Guests are important to us! Discover how you can be part of our community of Faith. We strive to be the Friendliest Church in America!
God has called all of us to a life of ministry. How will you minister today?
Sharing the love of Christ, from the inner city of Jackson to the far corners of the World.
Everything we do is designed to advance the Gospel by Connecting People and Transforming Lives.
From each according to his or her ability. To those according to their need. May we be faithful to return was God has given us.
Friday, June 27, 2014 - Tuesday, July 01, 2014
Saturday, June 28, 2014 - Saturday, July 05, 2014
Sunday, June 29, 2014, 6:00 PM - 8:00 PM | Sanctuary| First Baptist Jackson | Jackson, MS


text:
Market Hustle: Futures Rise Ahead of Fed Minutes; Target Slips
NEW YORK (TheStreet) -- U.S. stock futures were pointing to a stronger open Wednesday as investors anticipated minutes from the latest Federal Open Market Committee meeting.
Dow Jones Industrial Average futures were gaining 39 points, or 33.69 points above fair value, to 16,376. S&P 500 futures were adding on 4.25 points, or 2.42 points above fair value, to 1,872.25.
Nasdaq futures were ahead by 8.5 points, or 6.79 points above fair value, to 3,605.
Minutes from the FOMC's April 29-30 meeting will be released at 2 p.m. EDT. BNP Paribas economists said they expect the minutes to reveal further insight into how the Federal Reserve could increase interest rates and drain market liquidity when the FOMC ultimately decides to tighten policy. At the FOMC meeting in April there was a coincidental meeting of the Board of Governors the morning of April 30 to discuss medium-term monetary policy issues. The economists take this as a signal that the Fed was reviewing aspects of its exit strategy and expect the April FOMC meeting minutes to feature a preliminary discussion of different options for future monetary policy implementation.
- Federal Reserve Chair Janet Yellen is scheduled to deliver a commencement speech to NYU at Yankee Stadium at 11:30 a.m.
- New York Fed Bank President William Dudley, Kansas City Fed President Esther George, and Minneapolis Fed President Narayana Kocherlakota are all expected to give speeches on Wednesday.
- Netflix (NFLX) was advancing 0.66% in premarket trading as it revealed plans to expand into Germany, France and four other European countries later this year.
- Target (TGT) was down 0.53% after reporting another deep decline in quarterly earnings and after it cut its full-year guidance. The company continues to struggle with customer traffic and the aftermath of the massive data breach during the last holiday season. Lowe's (LOW) was trading sideways after missing first-quarter earnings per share by 2 cents at 58 cents a share. Revenue arrived above expectations.
- U.S. markets stumbled on Tuesday after disappointing earnings from Staples (SPLS) and Urban Outfitters (URBN). Small caps relinquished Monday's gains, shedding 1.4% amid a cautious backdrop.
- The global markets will be keeping an eye on European parliament elections this week. Overnight, the Bank of Japan maintained its current monetary policy stance. The FTSE 100 was down 0.15% and the DAX was up 0.2%. The Hang Seng finished little changed and the Nikkei 225 closed down 0.24%.
>>Read More: May 21 Premarket Briefing: 10 Things You Should Know Final Hour: Sentiment Blow From Retail Blues
Select the service that is right for you!COMPARE ALL SERVICES
Action Alerts PLUSTry it NOW
Jim Cramer and Stephanie Link actively manage a real portfolio and reveal their money management tactics while giving advanced notice before every trade.
Product Features:
- $2.5+ million portfolio
- Large-cap and dividend focus
- Intraday trade alerts from Cramer
- Weekly roundups
TheStreet Quant RatingsTry it NOW
Only $49.95/yr
Access the tool that DOMINATES the Russell 2000 and the S&P 500.
Product Features:
- Buy, hold, or sell recommendations for over 4,300 stocks
- Unlimited research reports on your favorite stocks
- A custom stock screener
- Upgrade/downgrade alerts
Stocks Under $10Try it NOW
David Peltier, uncovers low dollar stocks with extraordinary upside potential that are flying under Wall Street's radar.
Product Features:
- Model portfolio
- Stocks trading below $10
- Intraday trade alerts
- Weekly roundups
Dividend Stock AdvisorTry it NOW
Jim Cramer's protege, David Peltier, identifies the best of breed dividend stocks that will pay a reliable AND significant income stream.
Product Features:
- Diversified model portfolio of dividend stocks
- Alerts when market news affect the portfolio
- Bi-weekly updates with exact steps to take - BUY, HOLD, SELL
Real Money ProTry it NOW
All of Real Money, plus 15 more of Wall Street's sharpest minds delivering actionable trading ideas, a comprehensive look at the market, and fundamental and technical analysis.
Product Features:
- Real Money + Doug Kass Plus 15 more Wall Street Pros
- Intraday commentary & news
- Ultra-actionable trading ideas
Options ProfitsTry it NOW
Our options trading pros provide daily market commentary and over 100 monthly option trading ideas and strategies to help you become a well-seasoned trader.
Product Features:
- 100+ monthly options trading ideas
- Actionable options commentary & news
- Real-time trading community
- Options TV


text:
Discussion BoardsOpen MenuDiscussion Boards Open Menu
BlogsOpen Menu
- HP Support Forum Home
- >
- Desktop, Sprout by HP & Monitors
- >
- Monitors/Video
- >
- HP 2710 Monitor VESA Mounting
HP Support Forums
Join in the conversation.
- Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic to the Top
- Bookmark
- Subscribe
- Printer Friendly Page
HP 2710 Monitor VESA Mounting
The 2710m sales information & manual reflects that the monitor can be mounted with a standard 4 hole VESA mounting adapter. This is geat. The manual states the user should remove the cover on the back of the monitor to expose the 4 hole mounting. Well, this is not accurate. Remove the cover and there is no 4 hole pattern like the manual suggests. The unit can be mounted with a 4 hole VESA solution with standoffs with a 200 x 100 pattern if 4 of the 6 screws in the back are removed. The manual should be corrected to report the current model. I suspect the documentation was leveraged from previous models but not properly updated for the 2710m. Upon receiving the monitor one of my first tasks was to remove the base and mount the arm. My initial response was dismay as I have a solution that pretty much demands the unit be mounted on a swing arm. Well, I am not one to easily give up so I pondered the problem & studied the back of the unit a bit. The six screws beneath the cover are 6 mm screws, I guess, so with standoffs it does appear to be possible. I was able to solve the problem but for an average user this would have probably resulted in a support call. An FAQ would be great if the documentation is not corrected so users that require wall mounting can get it done. Just an observation. The monitor has a great picture for the price. The real push buttons for control are excellent and much better than touch buttons in my opinion. Overall a great product for the money. It just needs the attention to documentation for perfection.
This question was solved. View Solution.
Re: HP 2710 Monitor VESA Mounting
Send your solution to HP Support.
HP DV9700, t9300, Nvidia 8600, 4GB, Crucial C300 128GB SSD
HP Photosmart Premium C309G, HP Photosmart 6520
HP Touchpad, HP Chromebook 11
Custom i7-4770k,Z-87, 8GB, Vertex 3 SSD, Samsung EVO SSD, Corsair HX650,GTX 760
Custom i7-4790k,Z-97, 16GB, Vertex 3 SSD, Plextor M.2 SSD, Samsung EVO SSD, Corsair HX650, GTX 660TI
Windows 7/8 UEFI/Legacy mode, MBR/GPT
Re: HP 2710 Monitor VESA Mounting
You bet ya. HP monitors the support forums and should see the post. It is not a high priority bug or anything. I thought putting the post out here might help others that pick up the 2710m. It is a really beautiful monitor and the minor inconvenience detracts a little. If my post helps a few people get around the mistep in documentation great. If it really matters to HP they will update the FAQs or documentation to reflect how it really is. If it was a serious bug I would report it to HP with an email to email@example.com It is not a software bug so I feel the post on the support forum should be enough.
Re: HP 2710 Monitor VESA Mounting
I agree it's a great monitor. The picture is fantastic!!
I just hope they fix the Power Button lockout problem. I had to take my first 2710m back to the computer store for an exchange today.
Re: HP 2710 Monitor VESA Mounting
I have a 2710 as well and wish to arm mount - found the same data in the manual as others.
Please post additional info about your solution, if possible pictures.
Thank you -