Owlcom software
basadOwlCom  Software
Let's Owl manage your files
Welcome Screenshots Buy now Download Write to Owl Subscribe to news FAQ Links
The data file To exchange data with pre-open OS UNIX file system calls are read and write. In the case should clearly specify what byte file to be read or write data, the system is also used lseek challenge. System call reading data from the file is read three arguments: read (fd, buffer, nbytes); The first argument is an integer variable fd relevant open file descriptor. The second argument is a pointer to the buffer area of user memory, which should put the matter of data. Number of bytes of memory that is set to integer argument nbytes. The function returns a true read a handful of bytes (it may be different from a given if, for example, has raised the area of reading, going beyond file), or error code -1. The beginning of the disk you want to read with the call read out in the system call is not reported. Reading starts with a byte, which indicates the offset offset in the file structure. This shift indicates the record number fd table of open files. After the call read shift offset increasing the number of bytes read. View Systems call records write similar challenge to read: write (fd.buffer.nbytes): The function write writes nbytes of buffer RAM buffer to a file descriptor fd out. The function write, as well as read, returns caused it to the real value of the programme of bytes or error code. Consider an example in which the application is working with the file, which is comprised of fixed-length records of 50 bytes: fd = open ( "/ doc/qwery/basel2.txt." 0_RDWR): readCfd.bufferl.50): read (fd.buffer2.2500): lseekCfd, 150.0): write (fd.output. 300): close (fd): In the fragment program after opening file / doc/query/base12.txt to read and write is your reading of the first file, and then read the file area, which includes about 50 entries, ranging from 2 to 51. After a handful of records (these are omitted) are moving pointer offsets in the file at the beginning of the fourth record and the record of six consecutive records, starting with the fourth. Completed fragment closing the file system through close call. All described the system calls are synchronous, that is a custom process will be placed in waiting until the I / O operation is completed. Described set of system calls, appeared in UNIX OS still in the 70 years, became the de facto standard for modern operating systems. These traditional system calls often in specific OS complemented by original system I / O calls, such as asynchronous operation type. Based on the input-output system calls are usually more powerful I / O library functions that make up the application interface OS. Locking Files Blocking files and individual records in the files are a means of synchronization between working in cooperation processes, trying to use the same file simultaneously. Processes can be appropriate access to the file, but simultaneous use of these rights (especially the right notes) can lead to incorrect results. A case is the simultaneous editing the same document multiple users. If a file is not controlled lock, every person who is entitled to write to a file, works with a copy of their data file. The result of this editing unpredictable, it depends on the order in which changes to a file recording the user application editors. Multiuser operating systems generally supported a special challenge to a system that allows a programmer to install and test the lock on the file and its sections. On UNIX systems such challenge is fcntl. In his arguments indicated descriptor file, which you need to install or check the lock, the type of operation (block or check, blocking access to reading or writing), and area closures, movement from the beginning and the size of the file in bytes. When checking locks set by other processes, call fcntl immediately return a message from management. When the lock can be set two modes of the system call: the transition process in a state of expectation, if not a lock (synchronous system call), and an immediate return to a situation with a negative message (asynchronous call). Block requested records could not be determined if another process is already set its blocking list for the same file. That is blocking record is exceptional. Lock reading are not exclusive and can be installed on a file, if not their area of overlap. If any of the file is read-blocking, then this area can not be blocked account. In UNIX, there are two modes of lock-advisory (advisory) and mandatory (mandatory). The main guideline for the use of a consultative mode. In its operating system is not blocking transactions with the file, but only sets the signs blocking of file structures that support operations with files. Kooperiruyuschiesya processes must check locks on the file to synchronize their work. If the lock is installed, but the process does not check them, the operating system does not prevent access of the file, the process makes the system calls read or write. Compulsory treatment ban on the operation with locked file supported operating system, therefore, in any case, will not have access to this file. However, the work in this mode operating system spends a lot of time and effort to maintain it, so it is usually not recommended. Standard input and output files, then withdrawal In the UNIX operating system were introduced at the time such a thing as a "standard input file", "standard output file" and "standard" file error. The three already open file there any custom process since its inception. The process may at any time to enter data from the standard input file by following a systematic challenge: read (stdio. bufer. nbytes); Here stdio-name predetermined constants, showing standard file descriptor entry. Similarly, as stdout-name descriptor predetermined standard output file, the process can move data to the standard output file using the system next challenge: write (stout. buffer, nbytes): For standard file error is addressed stderr. In fact, with a new process OS puts in its table of open files three entries: with the number 0-for standard input file (hence, stdin is always 0), the number-one file for standard output (stdout = l), and number 2-for standard file error (stderr = 2). Accordingly created three types of file structure, which indicates the first three entry of open files. In the early years of the existence of these three file structure associated operating system with a single file. As the file is a special file-terminal, which logged in user. The appointment of standard file naturally enough. Applications launched user during the session work, often display results and the error messages on the terminal screen, which is user and the keyboard of the same terminal read commands, and other basic data. Model standard file I / O is mainly alphanumeric terminals managed well describes the withdrawal stream of bytes, which appears in the form of lines of characters on the screen, and the flow of input bytes posed consecutive pushing buttons. The most well-known program, widely using standard file I / O, is the team interpreter, also called a shell (shell) operating system. Interpreter to read user input from the keyboard command (from the standard input file) and perform their own or with their internal functions (such teams are called domestic) or interpreted as a command name executable file on disk, which should start to perform as a single process (external commands). Communications interpreter arrives at the terminal screen is a standard output file. Standard input and input files are widely used not only command interpreter; But by the team. Many internal and external commands designed so that they either read their raw data from the standard input file, or display results in a standard output file. If the team is doing both, it is called a filter. Consider a few examples of UNIX commands, working with standard input and output files: ls dir2-read directory entry dir2 and displays them in a symbolic form of a standard output file; we-filter, which is a sequence of bytes read from the standard input file, counts the number of words, lines or characters in a matter of data, and displays the result in a standard output file; who, in a standard file displays information about users working in the system. Interpreter teams perform such an important function as a standard redirect input and output. This is the replacement terminal debug output log file, the default as the standard input and output files to an arbitrary file. Referral Mechanism based on the fact that the application does not know what the file is standard, but simply use a descriptor as a pointer to the file. Therefore, I / O redirection to make the process of executing the standard connection with a non-standard entries in the table of open files. Redirecting using special designs command language. For a interpreter to redirect standard input file to file uses the following structure: file To redirect the standard required following the withdrawal of construction: file For example, shown below command line record of the contents of a file directory dir2 a.txt: ls dir2> a.txt I / O redirection mechanism introduced OS UNIX has been widely disseminated in command interpreters many operating systems, such as MS-DOS, Windows, OS / 2.
Welcome    Screenshots    Download    Buy now Write to Owl    Subscribe to Owl news   FAQ   Links  
Copyright © 2004-2011 OwlCom Software .

Owl Commander

OISV - Organization of Independent Software Vendors - Contributing Member Software Submit .NET - FREE and PREMIUM search engines submission and software submission and software promotion service. Owl Commander

Valid HTML 4.01 Transitional