Wednesday, August 31, 2011

unix device files

1.they have inode entries
2.inode contains major minor number
3.do they contain driver information
4.do they have interface information
5.when filesystem is mounted , inode information is readin by disk driver and ram snapshot of
device files are made.the devices will be loaded and initialized as well??
6.every driver registers with Agent X,when device files are initialized it consults Agent X and
hooks to it.
7.makenode major,minor
8.load module major minor
9.access node,major minor, control routed
10.filesystem,disk driver runs default on nix
11.file nodes are created using those drivers
12.node is linked to filesystem and disk sectors
13.filesystem table has snapshot mbet in ram,each file has record in ram,loading a driver adds module
information into file record in file table
14.filesystem driver is different,disk driver is differrent
15.when makenode, filesystem driver add to file table in ram,disk driver add entry in disk sector
and link between them is stored in ram and sector
16.a loading module registers minor and major number, it searches the ram filetable for entry,
maps its interface to ram entry
17.major number identifies virtual address of driver code in ram
18.when a stream is opened on a driver y a context is created in driver y as well as in global driver Y
18.all stream driver has same major number??,single minor number represents single stream
19.stream head memory and resource allocation is done by stream driver,its physical link is known by the stream driver that creates it.
20.stream module is system wide known,it can be pushed into stream.
21.stream head has queue pair,mapping of process current and stream instance, ie minor number also threads
22.user mode represents stream head by fd
23.stream heads can be fused
24.how clone stream works
http://books.google.co.in/books?id=Z7qfu9NK7WQC&pg=PA600&lpg=PA600&dq=unix,stream+driver,major+number&source=bl&ots=RXliIaQO6T&sig=kiITVMAS74lZ63Lt61STl-9tnmo&hl=en&ei=qfVdTu3RFNDOrQfJi9HnDw&sa=X&oi=book_result&ct=result&resnum=2&ved=0CB8Q6AEwAQ#v=onepage&q=unix%2Cstream%20driver%2Cmajor%20number&f=false
25.the minor number stored by inode is used only after loading driver,its not persistant

c parser

1.makeheader
2cfunctions
3.cscope -L -1|8 1=FIND IN FILE
4.cpan c::scan