07-11-2009
trying to understand rationale of unix stream i/o concept
I am an entry level programmer with no formal training in computer science. I am trying to enhance my conceptual knowledge about operating systems in general.
I have been using the C programming language on Linux systems for some time and have used the traditional unix stream I/O APIs. The introductory material in books and on the web, typically introduce the unix stream I/O model as "basic unix I/O model is a stream of bytes which can be accessed sequentially or randomly". I understand this part, but I am unable to visualize how else would one access the data. Were the I/O models different before the I/O stream model came in to existence? Are there models in current computing paradigm which are different from the stream I/O. I will appreciate if some can help me visualize both the stream I/O model vs other models (if they exist or existed). Pros-Cons will be a great addition too.
In addition, I came across the following statement on the web (
I/O System)
"The basic model of the UNIX I/O system is a sequence of bytes that can be accessed either randomly or sequentially. There are no
access methods and no
control blocks in a typical UNIX user process."
I do not understand the last statement - what are access methods and control blocks in the context of I/O?
Thanks
Kay
9 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi,
I would be very happy if someone could help me please. I am relatively new to UNIX, and still learning.
My understanding of things are:
Say I have a PC running Windows. This machine has a name. If I have 10 PC's, then I have 10 names, one for each PC. Each PC is independent of the other.... (4 Replies)
Discussion started by: ALon
4 Replies
2. UNIX for Advanced & Expert Users
if {"$my_ext_type" = MAIN]; then
cd $v_sc_dir
Filex.SH $v_so_dir\/$v_fr_file
Can somebody tell me what does this suggest. I am pretty new to unix and
I am getting confused.
What i understood from here is
If we have a file extension name as MAIN
which we have then we change the directory to... (1 Reply)
Discussion started by: pochaman
1 Replies
3. Shell Programming and Scripting
Hi
I used this command:
mplayer http://host/axis-cgi/mjpg/video.cgi -user root -passwd root \
-cache 1024 -fps 25.0 -nosound -vc ffh264 \
-demuxer 3 -dumpstream -dumpfile output.avi It's ok but...
Video Playing is very fast! Why? Is it a synch problem?
What parameter I have to use for... (1 Reply)
Discussion started by: takeo.kikuta
1 Replies
4. Shell Programming and Scripting
Hi,
I am new to this mail concept in unix. i have requirement to read the mail from mailbox.
Now to get the mail where i have to configure the mail id and also the mail server.
Kindly suggest me.
Thanks in advance. (3 Replies)
Discussion started by: krishna_gnv
3 Replies
5. Shell Programming and Scripting
Hi All,
I have a unix old script i but i am not able to understand the few commands in it and what it does. below is the script.
if ;
then
for F in $(find $DIR/. ! -name . -prune -name "DP_*.dat")
do
IN=${F##/*/}
OUT='ORD'$(echo $IN | cut -c7-)
exec.ksh $IN... (2 Replies)
Discussion started by: kam786sim
2 Replies
6. UNIX for Dummies Questions & Answers
Using the 9base port in {Net,Free}BSD, it appears that Plan 9's sed
1. restricts the max number of sed commands and thereby the length of sed scripts
2. does not recognise the \nn flag where nn is the number of a matched substring. See example below.
Questions:
1. Why would they limit... (1 Reply)
Discussion started by: uiop44
1 Replies
7. What is on Your Mind?
Is there a detailed page on the explanation of concept behind BITS and score used in this forum.
Just saw the index on my Banking page.
(Clicked the Banking hyperlink below my profile name on the topmost right corner of this screen)
Thanks in advance. (2 Replies)
Discussion started by: Manjunath B
2 Replies
8. Shell Programming and Scripting
i have a file something like this :
start:
01:00:00
01:30:00
02:30:00
05:30:00
end:
01:13:00
02:00:00
02:40:00
05:45:00
and i want (end - start) total run time in below format:
run:
00:13:00
00:30:00
00:10:00
00:15:00 (4 Replies)
Discussion started by: Acme
4 Replies
9. Red Hat
How to understand the unix time format as here i have pasted this is a unix time 1402565420 and its 3:00 PM here but its give this Output as long number How can i make it to understand format as i have 3:00 PM
Normal time format <----3:00PM = 1402565420----> Unix Time
Will Any one Explain to... (4 Replies)
Discussion started by: babinlonston
4 Replies
LEARN ABOUT DEBIAN
rdf::trine::store::hexastore
RDF::Trine::Store::Hexastore(3pm) User Contributed Perl Documentation RDF::Trine::Store::Hexastore(3pm)
NAME
RDF::Trine::Store::Hexastore - RDF store implemented with the hexastore index
VERSION
This document describes RDF::Trine::Store::Hexastore version 1.000
SYNOPSIS
use RDF::Trine::Store::Hexastore;
DESCRIPTION
RDF::Trine::Store::Hexastore provides an in-memory triple-store based on six-way indexing as popularized by Hexastore.
METHODS
Beyond the methods documented below, this class inherits methods from the RDF::Trine::Store class.
"new ()"
Returns a new storage object.
"new_with_config ( $hashref )"
Returns a new storage object configured with a hashref with certain keys as arguments.
The "storetype" key must be "Hexastore" for this backend.
This module also supports initializing the store from a file or URL, in which case, a "sources" key may be used. This holds an arrayref
of hashrefs. To load a file, you may give the file name with a "file" key in the hashref, and to load a URL, use "url". See example
below. Furthermore, the following keys may be used:
"syntax"
The syntax of the parsed file or URL.
"base_uri"
The base URI to be used for a parsed file.
The following example initializes a Hexastore store based on a local file and a remote URL:
my $store = RDF::Trine::Store->new_with_config(
{storetype => 'Hexastore',
sources => [
{
file => 'test-23.ttl',
syntax => 'turtle',
},
{
url => 'http://www.kjetil.kjernsmo.net/foaf',
syntax => 'rdfxml',
}
]});
"store ( $filename )"
Write the triples data to a file specified by $filename. This data may be read back in with the "load" method.
"load ( $filename )"
Returns a new Hexastore object with triples data from the specified file.
"temporary_store"
Returns a temporary (empty) triple store.
"get_statements ($subject, $predicate, $object [, $context] )"
Returns a stream object of all statements matching the specified subject, predicate and objects. Any of the arguments may be undef to
match any value.
"get_pattern ( $bgp [, $context] )"
Returns a stream object of all bindings matching the specified graph pattern.
"supports ( [ $feature ] )"
If $feature is specified, returns true if the feature is supported by the store, false otherwise. If $feature is not specified, returns
a list of supported features.
"get_contexts"
"add_statement ( $statement [, $context] )"
Adds the specified $statement to the underlying model.
"remove_statement ( $statement [, $context])"
Removes the specified $statement from the underlying model.
"remove_statements ( $subject, $predicate, $object [, $context])"
Removes the specified $statement from the underlying model.
"etag"
Returns an Etag suitable for use in an HTTP Header.
"nuke"
Permanently removes all the data in the store.
"count_statements ($subject, $predicate, $object)"
Returns a count of all the statements matching the specified subject, predicate and objects. Any of the arguments may be undef to match
any value.
BUGS
Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/perlrdf/issues>.
AUTHOR
Gregory Todd Williams "<gwilliams@cpan.org>"
COPYRIGHT
Copyright (c) 2006-2012 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms
as Perl itself.
perl v5.14.2 2012-06-29 RDF::Trine::Store::Hexastore(3pm)