diff --git a/doc/html/device_8h-source.html b/doc/html/device_8h-source.html new file mode 100644 index 0000000..1c5ddaf --- /dev/null +++ b/doc/html/device_8h-source.html @@ -0,0 +1,150 @@ + +
+00001 /***************************************************************************************** +00002 Copyright (c) 2002-2004 The UbixOS Project +00003 All rights reserved. +00004 +00005 Redistribution and use in source and binary forms, with or without modification, are +00006 permitted provided that the following conditions are met: +00007 +00008 Redistributions of source code must retain the above copyright notice, this list of +00009 conditions, the following disclaimer and the list of authors. Redistributions in binary +00010 form must reproduce the above copyright notice, this list of conditions, the following +00011 disclaimer and the list of authors in the documentation and/or other materials provided +00012 with the distribution. Neither the name of the UbixOS Project nor the names of its +00013 contributors may be used to endorse or promote products derived from this software +00014 without specific prior written permission. +00015 +00016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +00017 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +00018 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +00019 THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +00020 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +00021 OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +00022 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +00023 TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +00024 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +00025 +00026 $Id$ +00027 +00028 *****************************************************************************************/ +00029 +00030 #ifndef _DEVICE_H +00031 #define _DEVICE_H +00032 +00033 #include <ubixos/types.h> +00034 +00035 struct device_node { +00036 struct device_node *prev; +00037 struct device_node *next; +00038 struct device_interface *devInfo; +00039 struct device_resource *devRec; +00040 char type; +00041 int minor; +00042 }; +00043 +00044 struct device_resource { +00045 uInt8 irq; +00046 }; +00047 +00048 struct device_interface { +00049 uInt8 initialized; +00050 uInt32 size; +00051 int major; +00052 void *info; +00053 void (*read)(void *,void *,uInt32,uInt32); +00054 void (*write)(void *,void *,uInt32,uInt32); +00055 void (*reset)(void *); +00056 int (*init)(void *); +00057 void (*ioctl)(void *); +00058 void (*stop)(void *); +00059 void (*start)(void *); +00060 void (*standby)(void *); +00061 }; +00062 +00063 +00064 int device_add(int,char,struct device_interface *); +00065 struct device_node *device_find(int major,int minor); +00066 int device_remove(struct device_node *); +00067 #endif +00068 +00069 /*** +00070 $Log$ +00071 Revision 1.1.1.1 2006/06/01 12:46:15 reddawg +00072 ubix2 +00073 +00074 Revision 1.2 2005/10/12 00:13:37 reddawg +00075 Removed +00076 +00077 Revision 1.1.1.1 2005/09/26 17:23:51 reddawg +00078 no message +00079 +00080 Revision 1.14 2004/08/15 00:33:02 reddawg +00081 Wow the ide driver works again +00082 +00083 Revision 1.13 2004/08/14 21:56:44 reddawg +00084 Added initialized byte to the device system to make it easy to add child devices which use parent hardware. +00085 +00086 Revision 1.12 2004/07/21 10:02:09 reddawg +00087 devfs: renamed functions +00088 device system: renamed functions +00089 fdc: fixed a few potential bugs and cleaned up some unused variables +00090 strol: fixed definition +00091 endtask: made it print out freepage debug info +00092 kmalloc: fixed a huge memory leak we had some unhandled descriptor insertion so some descriptors were lost +00093 ld: fixed a pointer conversion +00094 file: cleaned up a few unused variables +00095 sched: broke task deletion +00096 kprintf: fixed ogPrintf definition +00097 +00098 Revision 1.11 2004/05/22 02:40:04 ionix +00099 +00100 +00101 fixed typo in device.h and initialized previous in device.c :) +00102 +00103 Revision 1.10 2004/05/22 02:34:03 ionix +00104 +00105 +00106 Added proto +00107 +00108 Revision 1.9 2004/05/21 15:12:17 reddawg +00109 Cleaned up +00110 +00111 +00112 END +00113 ***/ +00114 +
1.4.7
+
+
diff --git a/doc/html/device_8h.html b/doc/html/device_8h.html
new file mode 100644
index 0000000..6e04d9d
--- /dev/null
+++ b/doc/html/device_8h.html
@@ -0,0 +1,235 @@
+
+
+#include <ubixos/types.h>+Include dependency graph for device.h:

+This graph shows which files directly or indirectly include this file:

+Go to the source code of this file.
Data Structures | |
| struct | device_interface |
| struct | device_node |
| struct | device_resource |
Functions | |
| int | device_add (int, char, struct device_interface *) |
| device_node * | device_find (int major, int minor) |
| int | device_remove (struct device_node *) |
| int device_add | +( | +int | +, | +|
| + | + | char | +, | +|
| + | + | struct device_interface * | ++ | |
| + | ) | ++ |
+ +
+Definition at line 51 of file device.c. +
+References devices, deviceSpinLock, device_node::devInfo, device_interface::init, device_interface::initialized, kmalloc(), kprintf(), device_node::minor, device_node::next, NULL, device_node::prev, spinLock(), spinUnlock(), and device_node::type. +
+Referenced by fdc_init(), and initHardDisk(). +
+Here is the call graph for this function:

| struct device_node* device_find | +( | +int | +major, | +|
| + | + | int | +minor | + |
| + | ) | ++ |
+ +
+Definition at line 86 of file device.c. +
+References devices, deviceSpinLock, device_node::devInfo, device_interface::major, device_node::minor, device_node::next, spinLock(), and spinUnlock(). +
+Referenced by devfs_open(), devfs_read(), devfs_write(), and vfs_mount(). +
+Here is the call graph for this function:

| int device_remove | +( | +struct device_node * | ++ | ) | ++ |
+ +
+Definition at line 110 of file device.c. +
+References devices, deviceSpinLock, kfree(), device_node::next, NULL, spinLock(), and spinUnlock(). +
+Here is the call graph for this function:

+
1.4.7
+
+
diff --git a/doc/html/dir_000002_000003.html b/doc/html/dir_000002_000003.html
new file mode 100644
index 0000000..756963b
--- /dev/null
+++ b/doc/html/dir_000002_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » devfs | Includes file in src » sys » include |
|---|---|
| devfs.c | devfs / devfs.h |
| devfs.c | sys / device.h |
| devfs.c | lib / kmalloc.h |
| devfs.c | ubixos / kpanic.h |
| devfs.c | lib / kprintf.h |
| devfs.c | ubixos / spinlock.h |
| devfs.c | lib / string.h |
| devfs.c | ubixos / types.h |
| devfs.c | vfs / vfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000004_000013.html b/doc/html/dir_000004_000013.html
new file mode 100644
index 0000000..f1803ea
--- /dev/null
+++ b/doc/html/dir_000004_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » devfs | Includes file in src » sys » include » ubixos |
|---|---|
| devfs.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000004_000015.html b/doc/html/dir_000004_000015.html
new file mode 100644
index 0000000..74273ed
--- /dev/null
+++ b/doc/html/dir_000004_000015.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » devfs | Includes file in src » sys » include » vfs |
|---|---|
| devfs.h | file.h |
1.4.7
+
+
diff --git a/doc/html/dir_000005_000011.html b/doc/html/dir_000005_000011.html
new file mode 100644
index 0000000..431e493
--- /dev/null
+++ b/doc/html/dir_000005_000011.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » isa | Includes file in src » sys » include » sys |
|---|---|
| ne2k.h | device.old.h |
1.4.7
+
+
diff --git a/doc/html/dir_000005_000013.html b/doc/html/dir_000005_000013.html
new file mode 100644
index 0000000..7c8dc42
--- /dev/null
+++ b/doc/html/dir_000005_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » isa | Includes file in src » sys » include » ubixos |
|---|---|
| 8259.h | types.h |
| fdc.h | types.h |
| ne2k.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000006_000013.html b/doc/html/dir_000006_000013.html
new file mode 100644
index 0000000..a214df4
--- /dev/null
+++ b/doc/html/dir_000006_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » lib | Includes file in src » sys » include » ubixos |
|---|---|
| bioscall.h | types.h |
| kmalloc.h | types.h |
| kprint.h | types.h |
| kprintf.h | types.h |
| libcpp.h | types.h |
| string.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000007_000013.html b/doc/html/dir_000007_000013.html
new file mode 100644
index 0000000..b5afda3
--- /dev/null
+++ b/doc/html/dir_000007_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » mpi | Includes file in src » sys » include » ubixos |
|---|---|
| mpi.h | sched.h |
| mpi.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000009_000012.html b/doc/html/dir_000009_000012.html
new file mode 100644
index 0000000..1133d3d
--- /dev/null
+++ b/doc/html/dir_000009_000012.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » pci | Includes file in src » sys » include » ubixfs |
|---|---|
| hd.h | ubixfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000009_000013.html b/doc/html/dir_000009_000013.html
new file mode 100644
index 0000000..c575568
--- /dev/null
+++ b/doc/html/dir_000009_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » pci | Includes file in src » sys » include » ubixos |
|---|---|
| lnc.h | types.h |
| pci.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000010_000013.html b/doc/html/dir_000010_000013.html
new file mode 100644
index 0000000..e9e7d2f
--- /dev/null
+++ b/doc/html/dir_000010_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » sde | Includes file in src » sys » include » ubixos |
|---|---|
| sde.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000011_000013.html b/doc/html/dir_000011_000013.html
new file mode 100644
index 0000000..23e2e99
--- /dev/null
+++ b/doc/html/dir_000011_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » sys | Includes file in src » sys » include » ubixos |
|---|---|
| buf.h | types.h |
| cdefs.h | types.h |
| device.h | types.h |
| device.old.h | types.h |
| dma.h | types.h |
| driver.h | types.h |
| idt.h | types.h |
| signal.h | types.h |
| thread.h | types.h |
| tss.h | types.h |
| video.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000011_000015.html b/doc/html/dir_000011_000015.html
new file mode 100644
index 0000000..0ba10ce
--- /dev/null
+++ b/doc/html/dir_000011_000015.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » sys | Includes file in src » sys » include » vfs |
|---|---|
| buf.h | vfs.h |
| kern_descrip.h | file.h |
1.4.7
+
+
diff --git a/doc/html/dir_000012_000007.html b/doc/html/dir_000012_000007.html
new file mode 100644
index 0000000..ac4651f
--- /dev/null
+++ b/doc/html/dir_000012_000007.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixfs | Includes file in src » sys » include » mpi |
|---|---|
| ubixfs.h | mpi.h |
1.4.7
+
+
diff --git a/doc/html/dir_000012_000011.html b/doc/html/dir_000012_000011.html
new file mode 100644
index 0000000..12ce59d
--- /dev/null
+++ b/doc/html/dir_000012_000011.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixfs | Includes file in src » sys » include » sys |
|---|---|
| ubixfs.h | device.h |
1.4.7
+
+
diff --git a/doc/html/dir_000012_000013.html b/doc/html/dir_000012_000013.html
new file mode 100644
index 0000000..3e1e129
--- /dev/null
+++ b/doc/html/dir_000012_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixfs | Includes file in src » sys » include » ubixos |
|---|---|
| dirCache.h | types.h |
| ubixfs.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000012_000015.html b/doc/html/dir_000012_000015.html
new file mode 100644
index 0000000..e7cbdac
--- /dev/null
+++ b/doc/html/dir_000012_000015.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixfs | Includes file in src » sys » include » vfs |
|---|---|
| ubixfs.h | vfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000004.html b/doc/html/dir_000013_000004.html
new file mode 100644
index 0000000..4baa400
--- /dev/null
+++ b/doc/html/dir_000013_000004.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » devfs |
|---|---|
| init.h | devfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000005.html b/doc/html/dir_000013_000005.html
new file mode 100644
index 0000000..95d401c
--- /dev/null
+++ b/doc/html/dir_000013_000005.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » isa |
|---|---|
| init.h | 8259.h |
| init.h | atkbd.h |
| init.h | fdc.h |
| init.h | ne2k.h |
| init.h | pit.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000009.html b/doc/html/dir_000013_000009.html
new file mode 100644
index 0000000..6dc5c65
--- /dev/null
+++ b/doc/html/dir_000013_000009.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » pci |
|---|---|
| init.h | hd.h |
| init.h | pci.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000011.html b/doc/html/dir_000013_000011.html
new file mode 100644
index 0000000..aa39395
--- /dev/null
+++ b/doc/html/dir_000013_000011.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » sys |
|---|---|
| init.h | idt.h |
| init.h | kern_sysctl.h |
| sched.h | thread.h |
| sched.h | tss.h |
| syscalls_new.h | sysproto.h |
| time.h | io.h |
| times.h | _types.h |
| types.h | _types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000012.html b/doc/html/dir_000013_000012.html
new file mode 100644
index 0000000..3746036
--- /dev/null
+++ b/doc/html/dir_000013_000012.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » ubixfs |
|---|---|
| init.h | ubixfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000014.html b/doc/html/dir_000013_000014.html
new file mode 100644
index 0000000..5502571
--- /dev/null
+++ b/doc/html/dir_000013_000014.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » ufs |
|---|---|
| init.h | ufs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000015.html b/doc/html/dir_000013_000015.html
new file mode 100644
index 0000000..e52ba4f
--- /dev/null
+++ b/doc/html/dir_000013_000015.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » vfs |
|---|---|
| init.h | vfs.h |
| sched.h | file.h |
| syscalls.h | file.h |
| vitals.h | mount.h |
| vitals.h | vfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000013_000016.html b/doc/html/dir_000013_000016.html
new file mode 100644
index 0000000..db1b81c
--- /dev/null
+++ b/doc/html/dir_000013_000016.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ubixos | Includes file in src » sys » include » vmm |
|---|---|
| init.h | vmm.h |
1.4.7
+
+
diff --git a/doc/html/dir_000014_000011.html b/doc/html/dir_000014_000011.html
new file mode 100644
index 0000000..5964e38
--- /dev/null
+++ b/doc/html/dir_000014_000011.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ufs | Includes file in src » sys » include » sys |
|---|---|
| ffs.h | device.h |
| ufs.h | device.h |
1.4.7
+
+
diff --git a/doc/html/dir_000014_000013.html b/doc/html/dir_000014_000013.html
new file mode 100644
index 0000000..c75162b
--- /dev/null
+++ b/doc/html/dir_000014_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ufs | Includes file in src » sys » include » ubixos |
|---|---|
| ffs.h | types.h |
| ufs.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000014_000015.html b/doc/html/dir_000014_000015.html
new file mode 100644
index 0000000..554b4c8
--- /dev/null
+++ b/doc/html/dir_000014_000015.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » ufs | Includes file in src » sys » include » vfs |
|---|---|
| ffs.h | vfs.h |
| ufs.h | vfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000015_000011.html b/doc/html/dir_000015_000011.html
new file mode 100644
index 0000000..544b0c8
--- /dev/null
+++ b/doc/html/dir_000015_000011.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » vfs | Includes file in src » sys » include » sys |
|---|---|
| vfs.h | sysproto.h |
| vfs.h | thread.h |
1.4.7
+
+
diff --git a/doc/html/dir_000015_000012.html b/doc/html/dir_000015_000012.html
new file mode 100644
index 0000000..8838c4c
--- /dev/null
+++ b/doc/html/dir_000015_000012.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » vfs | Includes file in src » sys » include » ubixfs |
|---|---|
| file.h | dirCache.h |
1.4.7
+
+
diff --git a/doc/html/dir_000015_000013.html b/doc/html/dir_000015_000013.html
new file mode 100644
index 0000000..c559f11
--- /dev/null
+++ b/doc/html/dir_000015_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » vfs | Includes file in src » sys » include » ubixos |
|---|---|
| file.h | types.h |
| mount.h | types.h |
| vfs.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000016_000011.html b/doc/html/dir_000016_000011.html
new file mode 100644
index 0000000..266139e
--- /dev/null
+++ b/doc/html/dir_000016_000011.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » vmm | Includes file in src » sys » include » sys |
|---|---|
| paging.h | sysproto.h |
| paging.h | thread.h |
1.4.7
+
+
diff --git a/doc/html/dir_000016_000013.html b/doc/html/dir_000016_000013.html
new file mode 100644
index 0000000..1f01191
--- /dev/null
+++ b/doc/html/dir_000016_000013.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » include » vmm | Includes file in src » sys » include » ubixos |
|---|---|
| paging.h | types.h |
| vmm.h | types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000017_000003.html b/doc/html/dir_000017_000003.html
new file mode 100644
index 0000000..b15bfc4
--- /dev/null
+++ b/doc/html/dir_000017_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » init | Includes file in src » sys » include |
|---|---|
| main.c | ubixos / exec.h |
| main.c | sys / gdt.h |
| main.c | ubixos / init.h |
| main.c | lib / kmalloc.h |
| main.c | ubixos / kpanic.h |
| main.c | lib / kprintf.h |
| main.c | vfs / mount.h |
| main.c | ubixos / systemtask.h |
| main.c | sys / tss.h |
| main.c | sys / video.h |
| static.c | lib / kprintf.h |
1.4.7
+
+
diff --git a/doc/html/dir_000018_000003.html b/doc/html/dir_000018_000003.html
new file mode 100644
index 0000000..fd18d57
--- /dev/null
+++ b/doc/html/dir_000018_000003.html
@@ -0,0 +1,31 @@
+
+
+
1.4.7
+
+
diff --git a/doc/html/dir_000019_000003.html b/doc/html/dir_000019_000003.html
new file mode 100644
index 0000000..22fd73f
--- /dev/null
+++ b/doc/html/dir_000019_000003.html
@@ -0,0 +1,31 @@
+
+
+
1.4.7
+
+
diff --git a/doc/html/dir_000020_000003.html b/doc/html/dir_000020_000003.html
new file mode 100644
index 0000000..bdb08ed
--- /dev/null
+++ b/doc/html/dir_000020_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » kmods | Includes file in src » sys » include |
|---|---|
| kmod.c | assert.h |
| kmod.c | ubixos / elf.h |
| kmod.c | lib / kmalloc.h |
| kmod.c | ubixos / kmod.h |
| kmod.c | ubixos / kpanic.h |
| kmod.c | lib / kprintf.h |
| kmod.c | ubixos / lists.h |
| kmod.c | ubixos / sched.h |
| kmod.c | ubixos / spinlock.h |
| kmod.c | string.h |
| kmod.c | ubixos / types.h |
| kmod.c | vfs / vfs.h |
| kmod.c | vmm / vmm.h |
1.4.7
+
+
diff --git a/doc/html/dir_000021_000003.html b/doc/html/dir_000021_000003.html
new file mode 100644
index 0000000..3322711
--- /dev/null
+++ b/doc/html/dir_000021_000003.html
@@ -0,0 +1,31 @@
+
+
+
1.4.7
+
+
diff --git a/doc/html/dir_000022_000003.html b/doc/html/dir_000022_000003.html
new file mode 100644
index 0000000..8d92dbd
--- /dev/null
+++ b/doc/html/dir_000022_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » mpi | Includes file in src » sys » include |
|---|---|
| message.c | mpi / mpi.h |
| system.c | lib / kmalloc.h |
| system.c | mpi / mpi.h |
| system.c | ubixos / spinlock.h |
| system.c | lib / string.h |
1.4.7
+
+
diff --git a/doc/html/dir_000023_000003.html b/doc/html/dir_000023_000003.html
new file mode 100644
index 0000000..deb8cd6
--- /dev/null
+++ b/doc/html/dir_000023_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » pci | Includes file in src » sys » include |
|---|---|
| hd.c | devfs / devfs.h |
| hd.c | sys / device.h |
| hd.c | pci / hd.h |
| hd.c | sys / io.h |
| hd.c | lib / kmalloc.h |
| hd.c | lib / kprintf.h |
| hd.c | string.h |
| hd.c | sys / video.h |
| lnc.c | isa / 8259.h |
| lnc.c | sys / gdt.h |
| lnc.c | sys / idt.h |
| lnc.c | sys / io.h |
| lnc.c | lib / kmalloc.h |
| lnc.c | lib / kprintf.h |
| lnc.c | pci / lnc.h |
| lnc.c | ubixos / types.h |
| lnc.c | sys / video.h |
| pci.c | sys / io.h |
| pci.c | lib / kprintf.h |
| pci.c | pci / pci.h |
| pci.c | ubixos / types.h |
1.4.7
+
+
diff --git a/doc/html/dir_000024_000003.html b/doc/html/dir_000024_000003.html
new file mode 100644
index 0000000..ae0eac0
--- /dev/null
+++ b/doc/html/dir_000024_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » sys | Includes file in src » sys » include |
|---|---|
| device.c | assert.h |
| device.c | sys / device.h |
| device.c | lib / kmalloc.h |
| device.c | lib / kprintf.h |
| device.c | ubixos / spinlock.h |
| dma.c | sys / dma.h |
| dma.c | sys / io.h |
| dma.c | ubixos / types.h |
| idt.c | isa / 8259.h |
| idt.c | ubixos / endtask.h |
| idt.c | sys / gdt.h |
| idt.c | sys / idt.h |
| idt.c | sys / io.h |
| idt.c | lib / kmalloc.h |
| idt.c | ubixos / kpanic.h |
| idt.c | lib / kprintf.h |
| idt.c | ubixos / sched.h |
| idt.c | string.h |
| idt.c | ubixos / syscall.h |
| idt.c | vmm / vmm.h |
| io.c | sys / io.h |
| video.c | sys / io.h |
| video.c | ubixos / spinlock.h |
| video.c | ubixos / tty.h |
| video.c | ubixos / types.h |
| video.c | sys / video.h |
1.4.7
+
+
diff --git a/doc/html/dir_000025_000003.html b/doc/html/dir_000025_000003.html
new file mode 100644
index 0000000..9e5d7cf
--- /dev/null
+++ b/doc/html/dir_000025_000003.html
@@ -0,0 +1,31 @@
+
+
+
1.4.7
+
+
diff --git a/doc/html/dir_000026_000003.html b/doc/html/dir_000026_000003.html
new file mode 100644
index 0000000..94dd685
--- /dev/null
+++ b/doc/html/dir_000026_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » ufs | Includes file in src » sys » include |
|---|---|
| ffs.c | sys / buf.h |
| ffs.c | ufs / ffs.h |
| ffs.c | lib / kmalloc.h |
| ffs.c | ubixos / kpanic.h |
| ffs.c | lib / kprintf.h |
| ffs.c | lib / string.h |
| ffs.c | ufs / ufs.h |
| ffs.c | vfs / vfs.h |
| ufs.c | ufs / ffs.h |
| ufs.c | lib / kmalloc.h |
| ufs.c | ubixos / kpanic.h |
| ufs.c | lib / kprintf.h |
| ufs.c | lib / string.h |
| ufs.c | ufs / ufs.h |
| ufs.c | vfs / vfs.h |
1.4.7
+
+
diff --git a/doc/html/dir_000027_000003.html b/doc/html/dir_000027_000003.html
new file mode 100644
index 0000000..33f4ecc
--- /dev/null
+++ b/doc/html/dir_000027_000003.html
@@ -0,0 +1,31 @@
+
+
+| File in src » sys » vfs | Includes file in src » sys » include |
|---|---|
| file.c | assert.h |
| file.c | vfs / file.h |
| file.c | lib / kmalloc.h |
| file.c | ubixos / kpanic.h |
| file.c | lib / kprintf.h |
| file.c | vmm / paging.h |
| file.c | ubixos / sched.h |
| file.c | ubixos / spinlock.h |
| file.c | lib / string.h |
| file.c | vfs / vfs.h |
| file.c | ubixos / vitals.h |
| mount.c | sys / device.h |
| mount.c | lib / kmalloc.h |
| mount.c | ubixos / kpanic.h |
| mount.c | lib / kprintf.h |
| mount.c | vfs / mount.h |
| mount.c | lib / string.h |
| mount.c | ubixos / vitals.h |
| vfs.c | sys / kern_descrip.h |
| vfs.c | lib / kmalloc.h |
| vfs.c | lib / kprintf.h |
| vfs.c | lib / string.h |
| vfs.c | vfs / vfs.h |
| vfs.c | ubixos / vitals.h |
1.4.7
+
+
diff --git a/doc/html/dir_000028_000003.html b/doc/html/dir_000028_000003.html
new file mode 100644
index 0000000..f5c6fd4
--- /dev/null
+++ b/doc/html/dir_000028_000003.html
@@ -0,0 +1,31 @@
+
+
+
1.4.7
+
+
diff --git a/doc/html/file_8h-source.html b/doc/html/file_8h-source.html
new file mode 100644
index 0000000..7c2c8e6
--- /dev/null
+++ b/doc/html/file_8h-source.html
@@ -0,0 +1,130 @@
+
+
+00001 /************************************************************************************** +00002 Copyright (c) 2002 The UbixOS Project +00003 All rights reserved. +00004 +00005 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +00006 +00007 Redistributions of source code must retain the above copyright notice, this list of conditions, the following disclaimer and the list of authors. +00008 Redistributions in binary form must reproduce the above copyright notice, this list of conditions, the following disclaimer and the list of authors +00009 in the documentation and/or other materials provided with the distribution. Neither the name of the UbixOS Project nor the names of its +00010 contributors may be used to endorse or promote products derived from this software without specific prior written permission. +00011 +00012 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED +00013 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +00014 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +00015 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +00016 GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY +00017 OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +00018 OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +00019 +00020 $Id$ +00021 +00022 **************************************************************************************/ +00023 +00024 #ifndef _FILE_H +00025 #define _FILE_H +00026 +00027 #include <ubixos/types.h> +00028 #include <ubixfs/dirCache.h> +00029 #include <vfs/mount.h> +00030 +00031 #define SEEK_SET 0x0 +00032 +00033 #define VBLKSHIFT 12 +00034 #define VBLKSIZE (1 << VBLKSHIFT) +00035 #define SBLOCKSIZE 8192 +00036 #define DEV_BSHIFT 9 /* log2(DEV_BSIZE) */ +00037 #define DEV_BSIZE (1<<DEV_BSHIFT) +00038 +00039 struct dmadat { +00040 char blkbuf[VBLKSIZE]; /* filesystem blocks */ +00041 char indbuf[VBLKSIZE]; /* indir blocks */ +00042 char sbbuf[SBLOCKSIZE]; /* superblock */ +00043 char secbuf[DEV_BSIZE]; /* for MBR/disklabel */ +00044 }; +00045 +00046 typedef struct fileDescriptorStruct { +00047 struct fileDescriptorStruct *prev; +00048 struct fileDescriptorStruct *next; +00049 struct vfs_mountPoint *mp; +00050 uInt16 status; +00051 uInt16 mode; +00052 uInt32 offset; +00053 uInt32 size; +00054 uInt16 length; +00055 uInt32 start; +00056 char fileName[512]; +00057 char *buffer; +00058 uInt32 ino; +00059 struct cacheNode *cacheNode; +00060 uInt32 perms; +00061 struct dmadat *dmadat; +00062 int dsk_meta; +00063 uInt32 resid; +00064 } fileDescriptor; +00065 +00066 +00067 typedef struct userFileDescriptorStruct { +00068 struct fileDescriptorStruct *fd; +00069 uInt32 fdSize; +00070 } userFileDescriptor; +00071 +00072 extern fileDescriptor *fdTable; +00073 +00074 fileDescriptor *fopen(const char *,const char *); +00075 int fclose(fileDescriptor *); +00076 +00077 /* UBU */ +00078 +00079 +00080 int unlink(const char *path); +00081 int feof(fileDescriptor *fd); +00082 int fgetc(fileDescriptor *fd); +00083 size_t fread(void *ptr,size_t size,size_t nmemb,fileDescriptor *fd); +00084 size_t fwrite(void *ptr,int size,int nmemb,fileDescriptor *fd); +00085 int fseek(fileDescriptor *,long,int); +00086 +00087 void sysFseek(userFileDescriptor *,long,int); +00088 +00089 //Good +00090 void sysChDir(const char *path); +00091 void chDir(const char *path); +00092 char *verifyDir(const char *path); +00093 +00094 #endif +
1.4.7
+
+
diff --git a/doc/html/file_8h.html b/doc/html/file_8h.html
new file mode 100644
index 0000000..e2bc55d
--- /dev/null
+++ b/doc/html/file_8h.html
@@ -0,0 +1,716 @@
+
+
+#include <ubixos/types.h>#include <ubixfs/dirCache.h>#include <vfs/mount.h>+Include dependency graph for file.h:

+This graph shows which files directly or indirectly include this file:

+Go to the source code of this file.
Data Structures | |
| struct | dmadat |
| struct | fileDescriptorStruct |
| struct | userFileDescriptorStruct |
Defines | |
| #define | DEV_BSHIFT 9 |
| #define | DEV_BSIZE (1<<DEV_BSHIFT) |
| #define | SBLOCKSIZE 8192 |
| #define | SEEK_SET 0x0 |
| #define | VBLKSHIFT 12 |
| #define | VBLKSIZE (1 << VBLKSHIFT) |
Typedefs | |
| typedef fileDescriptorStruct | fileDescriptor |
| typedef userFileDescriptorStruct | userFileDescriptor |
Functions | |
| void | chDir (const char *path) |
| int | fclose (fileDescriptor *) |
| int | feof (fileDescriptor *fd) |
| int | fgetc (fileDescriptor *fd) |
| fileDescriptor * | fopen (const char *, const char *) |
| size_t | fread (void *ptr, size_t size, size_t nmemb, fileDescriptor *fd) |
| int | fseek (fileDescriptor *, long, int) |
| size_t | fwrite (void *ptr, int size, int nmemb, fileDescriptor *fd) |
| void | sysChDir (const char *path) |
| void | sysFseek (userFileDescriptor *, long, int) |
| int | unlink (const char *path) |
| char * | verifyDir (const char *path) |
Variables | |
| fileDescriptor * | fdTable |
| #define DEV_BSIZE (1<<DEV_BSHIFT) | +
| #define VBLKSHIFT 12 | +
| #define VBLKSIZE (1 << VBLKSHIFT) | +
+
| typedef struct fileDescriptorStruct fileDescriptor | +
+ +
| typedef struct userFileDescriptorStruct userFileDescriptor | +
+ +
+
| void chDir | +( | +const char * | +path | +) | ++ |
+ +
| int fclose | +( | +fileDescriptor * | ++ | ) | ++ |
+ +
+Definition at line 398 of file file.c. +
+References assert, fileDescriptorStruct::buffer, fdTable, fdTable_lock, kfree(), fileDescriptorStruct::next, NULL, vitalsStruct::openFiles, fileDescriptorStruct::prev, spinLock(), spinUnlock(), systemVitals, and x1. +
+Referenced by execFile(), kmod_load(), ldEnable(), sysExec(), sysFclose(), sysMkDir(), and systemTask(). +
+Here is the call graph for this function:

| int feof | +( | +fileDescriptor * | +fd | +) | ++ |
+ +
+Definition at line 220 of file file.c. +
+References fdEof, and fileDescriptorStruct::status. +
| int fgetc | +( | +fileDescriptor * | +fd | +) | ++ |
+ +
+Definition at line 251 of file file.c. +
+References vfs_mountPoint::fs, fileDescriptorStruct::mp, fileDescriptorStruct::offset, and fileSystem::vfsRead. +
+Referenced by sysFgetc(). +
| fileDescriptor* fopen | +( | +const char * | +, | +|
| + | + | const char * | ++ | |
| + | ) | ++ |
+ +
+Definition at line 274 of file file.c. +
+References fileDescriptorStruct::buffer, fdOpen, fdTable, fdTable_lock, fileAppend, fileBinary, fileDescriptorStruct::fileName, fileRead, fileWrite, vfs_mountPoint::fs, kfree(), kmalloc(), kprintf(), fileDescriptorStruct::mode, fileDescriptorStruct::mp, fileDescriptorStruct::next, NULL, fileDescriptorStruct::offset, vitalsStruct::openFiles, fileDescriptorStruct::prev, spinLock(), spinUnlock(), sprintf(), fileDescriptorStruct::status, strcpy, strstr(), strtok(), systemVitals, vfs_findMount(), and fileSystem::vfsOpenFile. +
+Referenced by execFile(), kmod_load(), ldEnable(), sys_open(), sysExec(), sysFopen(), and sysMkDir(). +
+Here is the call graph for this function:

| size_t fread | +( | +void * | +ptr, | +|
| + | + | size_t | +size, | +|
| + | + | size_t | +nmemb, | +|
| + | + | fileDescriptor * | +fd | + |
| + | ) | ++ |
+ +
+Definition at line 178 of file file.c. +
+References assert, vfs_mountPoint::fs, fileDescriptorStruct::mp, fileDescriptorStruct::offset, and fileSystem::vfsRead. +
+Referenced by execFile(), kmod_load(), ldEnable(), read(), sysExec(), and sysFread(). +
| int fseek | +( | +fileDescriptor * | +, | +|
| + | + | long | +, | +|
| + | + | int | ++ | |
| + | ) | ++ |
+ +
+Definition at line 208 of file file.c. +
+References fileDescriptorStruct::offset. +
+Referenced by execFile(), kmod_load(), ldEnable(), and sysExec(). +
| size_t fwrite | +( | +void * | +ptr, | +|
| + | + | int | +size, | +|
| + | + | int | +nmemb, | +|
| + | + | fileDescriptor * | +fd | + |
| + | ) | ++ |
+ +
+Definition at line 200 of file file.c. +
+References vfs_mountPoint::fs, fileDescriptorStruct::mp, fileDescriptorStruct::offset, and fileSystem::vfsWrite. +
+Referenced by sysFwrite(). +
| void sysChDir | +( | +const char * | +path | +) | ++ |
+ +
+Definition at line 102 of file file.c. +
+References _current, osInfo::cwd, taskStruct::oInfo, sprintf(), and strstr(). +
+Here is the call graph for this function:

| void sysFseek | +( | +userFileDescriptor * | +, | +|
| + | + | long | +, | +|
| + | + | int | ++ | |
| + | ) | ++ |
+ +
+Definition at line 92 of file file.c. +
+References userFileDescriptorStruct::fd, NULL, and fileDescriptorStruct::offset. +
| int unlink | +( | +const char * | +path | +) | ++ |
+ +
+Definition at line 480 of file file.c. +
+References vfs_mountPoint::fs, vfs_mountPoint::mountPoint, NULL, strtok(), vfs_findMount(), and fileSystem::vfsUnlink. +
+Referenced by sysUnlink(). +
+Here is the call graph for this function:

| char* verifyDir | +( | +const char * | +path | +) | ++ |
+ +
+
| fileDescriptor* fdTable | +
+
1.4.7
+
+
diff --git a/doc/html/graph_legend.html b/doc/html/graph_legend.html
new file mode 100644
index 0000000..1aa394c
--- /dev/null
+++ b/doc/html/graph_legend.html
@@ -0,0 +1,91 @@
+
+
++Consider the following example:
/*! Invisible class because of truncation */ +class Invisible { }; + +/*! Truncated class, inheritance relation is hidden */ +class Truncated : public Invisible { }; + +/* Class not documented with doxygen comments */ +class Undocumented { }; + +/*! Class that is inherited using public inheritance */ +class PublicBase : public Truncated { }; + +/*! A template class */ +template<class T> class Templ { }; + +/*! Class that is inherited using protected inheritance */ +class ProtectedBase { }; + +/*! Class that is inherited using private inheritance */ +class PrivateBase { }; + +/*! Class that is used by the Inherited class */ +class Used { }; + +/*! Super class that inherits a number of other classes */ +class Inherited : public PublicBase, + protected ProtectedBase, + private PrivateBase, + public Undocumented + public Templ<int> +{ + private: + Used *m_usedClass; +}; +
MAX_DOT_GRAPH_HEIGHT tag in the configuration file is set to 240 this will result in the following graph:+
++The boxes in the above graph have the following meaning:
1.4.7
+
+
diff --git a/doc/html/init_8h-source.html b/doc/html/init_8h-source.html
new file mode 100644
index 0000000..f88bde2
--- /dev/null
+++ b/doc/html/init_8h-source.html
@@ -0,0 +1,121 @@
+
+
+00001 /***************************************************************************************** +00002 Copyright (c) 2002-2004 The UbixOS Project +00003 All rights reserved. +00004 +00005 Redistribution and use in source and binary forms, with or without modification, are +00006 permitted provided that the following conditions are met: +00007 +00008 Redistributions of source code must retain the above copyright notice, this list of +00009 conditions, the following disclaimer and the list of authors. Redistributions in binary +00010 form must reproduce the above copyright notice, this list of conditions, the following +00011 disclaimer and the list of authors in the documentation and/or other materials provided +00012 with the distribution. Neither the name of the UbixOS Project nor the names of its +00013 contributors may be used to endorse or promote products derived from this software +00014 without specific prior written permission. +00015 +00016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +00017 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +00018 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +00019 THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +00020 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +00021 OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +00022 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +00023 TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +00024 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +00025 +00026 $Id$ +00027 +00028 *****************************************************************************************/ +00029 +00030 #ifndef _INIT_H +00031 #define _INIT_H +00032 +00033 #include <vmm/vmm.h> +00034 #include <vfs/vfs.h> +00035 #include <isa/8259.h> +00036 #include <sys/idt.h> +00037 #include <ubixos/sched.h> +00038 #include <isa/pit.h> +00039 #include <isa/atkbd.h> +00040 #include <ubixos/time.h> +00041 #include <net/net.h> +00042 #include <isa/ne2k.h> +00043 #include <devfs/devfs.h> +00044 #include <pci/pci.h> +00045 #include <ubixfs/ubixfs.h> +00046 #include <isa/fdc.h> +00047 #include <ubixos/tty.h> +00048 #include <ufs/ufs.h> +00049 #include <ubixos/static.h> +00050 #include <pci/hd.h> +00051 #include <sys/kern_sysctl.h> +00052 #include <ubixos/vitals.h> +00053 +00054 typedef int (*intFunctionPTR)(void); +00055 +00056 intFunctionPTR init_tasks[] = { +00057 vmm_init, +00058 static_constructors, +00059 i8259_init, +00060 idt_init, +00061 vitals_init, +00062 sysctl_init, +00063 vfs_init, +00064 sched_init, +00065 pit_init, +00066 atkbd_init, +00067 time_init, +00068 //net_init, +00069 //ne2k_init, +00070 devfs_init, +00071 //pci_init, +00072 //ubixfs_init, +00073 //fdc_init, +00074 tty_init, +00075 ufs_init, +00076 initHardDisk, +00077 }; +00078 +00079 int init_tasksTotal = sizeof(init_tasks)/sizeof(intFunctionPTR); +00080 +00081 #endif +00082 +00083 /*** +00084 END +00085 ***/ +
1.4.7
+
+
diff --git a/doc/html/init_8h.html b/doc/html/init_8h.html
new file mode 100644
index 0000000..328e1ec
--- /dev/null
+++ b/doc/html/init_8h.html
@@ -0,0 +1,178 @@
+
+
+#include <vmm/vmm.h>#include <vfs/vfs.h>#include <isa/8259.h>#include <sys/idt.h>#include <ubixos/sched.h>#include <isa/pit.h>#include <isa/atkbd.h>#include <ubixos/time.h>#include <net/net.h>#include <isa/ne2k.h>#include <devfs/devfs.h>#include <pci/pci.h>#include <ubixfs/ubixfs.h>#include <isa/fdc.h>#include <ubixos/tty.h>#include <ufs/ufs.h>#include <ubixos/static.h>#include <pci/hd.h>#include <sys/kern_sysctl.h>#include <ubixos/vitals.h>+Include dependency graph for init.h:

+This graph shows which files directly or indirectly include this file:

+Go to the source code of this file.
Typedefs | |
| typedef int(*) | intFunctionPTR (void) |
Variables | |
| intFunctionPTR | init_tasks [] |
| int | init_tasksTotal = sizeof(init_tasks)/sizeof(intFunctionPTR) |
| typedef int(*) intFunctionPTR(void) | +
+
| intFunctionPTR init_tasks[] | +
+Initial value:
{
+ vmm_init,
+ static_constructors,
+ i8259_init,
+ idt_init,
+ vitals_init,
+ sysctl_init,
+ vfs_init,
+ sched_init,
+ pit_init,
+ atkbd_init,
+ time_init,
+
+
+ devfs_init,
+
+
+
+ tty_init,
+ ufs_init,
+ initHardDisk,
+ }
++Definition at line 56 of file init.h. +
+Referenced by kmain(). +
| int init_tasksTotal = sizeof(init_tasks)/sizeof(intFunctionPTR) | +
+
1.4.7
+
+
diff --git a/doc/html/strcpy_8S-source.html b/doc/html/strcpy_8S-source.html
new file mode 100644
index 0000000..5d16dd1
--- /dev/null
+++ b/doc/html/strcpy_8S-source.html
@@ -0,0 +1,80 @@
+
+
+00001 .globl strcpy +00002 strcpy: +00003 movl 4(%esp),%ecx /* dst address */ +00004 movl 8(%esp),%edx /* src address */ +00005 pushl %ecx /* push dst address */ +00006 +00007 .align 2,0x90 +00008 L1: movb (%edx),%al /* unroll loop, but not too much */ +00009 movb %al,(%ecx) +00010 testb %al,%al +00011 je L2 +00012 movb 1(%edx),%al +00013 movb %al,1(%ecx) +00014 testb %al,%al +00015 je L2 +00016 movb 2(%edx),%al +00017 movb %al,2(%ecx) +00018 testb %al,%al +00019 je L2 +00020 movb 3(%edx),%al +00021 movb %al,3(%ecx) +00022 testb %al,%al +00023 je L2 +00024 movb 4(%edx),%al +00025 movb %al,4(%ecx) +00026 testb %al,%al +00027 je L2 +00028 movb 5(%edx),%al +00029 movb %al,5(%ecx) +00030 testb %al,%al +00031 je L2 +00032 movb 6(%edx),%al +00033 movb %al,6(%ecx) +00034 testb %al,%al +00035 je L2 +00036 movb 7(%edx),%al +00037 movb %al,7(%ecx) +00038 addl $8,%edx +00039 addl $8,%ecx +00040 testb %al,%al +00041 jne L1 +00042 L2: popl %eax /* pop dst address */ +00043 ret +00044 +
1.4.7
+
+
diff --git a/doc/html/strcpy_8S.html b/doc/html/strcpy_8S.html
new file mode 100644
index 0000000..60446e5
--- /dev/null
+++ b/doc/html/strcpy_8S.html
@@ -0,0 +1,582 @@
+
+
++Go to the source code of this file.
Functions | |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 | movb (%edx) |
| globl strcpy ecx | movl (%esp) |
Variables | |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx edx | addl |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx | addl |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx edx ecx +testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb +al je L2 al movb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb ecx testb | al |
| globl strcpy ecx edx pushl +ecx x90 al movb | al |
| globl strcpy ecx edx pushl ecx | align |
| globl strcpy ecx edx pushl +ecx x90 | L1 |
| globl strcpy | strcpy |
| globl strcpy ecx edx pushl ecx x90 al movb ecx testb al je L2 al movb ecx testb al je L2 al movb ecx testb al je L2 al movb ecx testb al je L2 al movb ecx testb al je L2 al movb ecx testb al je L2 al movb ecx testb al je L2 movb | +( | +% | +edx | +) | ++ |
+ +
| globl strcpy ecx movl | +( | +% | +esp | +) | ++ |
+ +
+
| globl strcpy strcpy | +
+ +
+Definition at line 3 of file strcpy.S. +
+Referenced by fopen(), sys_open(), sysExec(), and ubixfs_cacheNew(). +
+
1.4.7
+
+
diff --git a/doc/html/strlen_8S-source.html b/doc/html/strlen_8S-source.html
new file mode 100644
index 0000000..b7f3821
--- /dev/null
+++ b/doc/html/strlen_8S-source.html
@@ -0,0 +1,49 @@
+
+
+00001 .globl strlen +00002 strlen: +00003 pushl %edi +00004 movl 8(%esp),%edi /* string address */ +00005 cld /* set search forward */ +00006 xorl %eax,%eax /* set search for null terminator */ +00007 movl $-1,%ecx /* set search for lots of characters */ +00008 repne /* search! */ +00009 scasb +00010 notl %ecx /* get length by taking complement */ +00011 leal -1(%ecx),%eax /* and subtracting one */ +00012 popl %edi +00013 ret +
1.4.7
+
+
diff --git a/doc/html/strlen_8S.html b/doc/html/strlen_8S.html
new file mode 100644
index 0000000..2edda9b
--- /dev/null
+++ b/doc/html/strlen_8S.html
@@ -0,0 +1,127 @@
+
+
++Go to the source code of this file.
Functions | |
| globl strlen edi cld xorl +eax ecx repne scasb notl ecx | leal (%ecx) |
Variables | |
| globl strlen edi cld xorl | eax |
| globl strlen edi cld xorl eax | movl |
| globl strlen | strlen |
+ +
+
| globl strlen strlen | +
+ +
+Definition at line 4 of file strlen.S. +
+Referenced by devfs_makeNode(), strstr(), sysExec(), ubixfs_cacheNew(), and vsprintf(). +
+
1.4.7
+
+
diff --git a/doc/html/structopen__args.html b/doc/html/structopen__args.html
new file mode 100644
index 0000000..728cd08
--- /dev/null
+++ b/doc/html/structopen__args.html
@@ -0,0 +1,222 @@
+
+
+#include <sysproto.h>
++
Data Fields | |
| int | flags |
| char | flags_l_ [0] |
| char | flags_r_ [(sizeof(register_t)<=sizeof(int)?0:sizeof(register_t)-sizeof(int))] |
| int | mode |
| char | mode_l_ [0] |
| char | mode_r_ [(sizeof(register_t)<=sizeof(int)?0:sizeof(register_t)-sizeof(int))] |
| char * | path |
| char | path_l_ [0] |
| char | path_r_ [(sizeof(register_t)<=sizeof(char *)?0:sizeof(register_t)-sizeof(char *))] |
+ +
+Definition at line 56 of file sysproto.h.
| int open_args::flags | +
+ +
+Definition at line 58 of file sysproto.h. +
| char open_args::flags_l_[0] | +
+ +
+Definition at line 58 of file sysproto.h. +
| char open_args::flags_r_[(sizeof(register_t)<=sizeof(int)?0:sizeof(register_t)-sizeof(int))] | +
+ +
+Definition at line 58 of file sysproto.h. +
| int open_args::mode | +
+ +
+Definition at line 59 of file sysproto.h. +
| char open_args::mode_l_[0] | +
+ +
+Definition at line 59 of file sysproto.h. +
| char open_args::mode_r_[(sizeof(register_t)<=sizeof(int)?0:sizeof(register_t)-sizeof(int))] | +
+ +
+Definition at line 59 of file sysproto.h. +
| char* open_args::path | +
| char open_args::path_l_[0] | +
+ +
+Definition at line 57 of file sysproto.h. +
| char open_args::path_r_[(sizeof(register_t)<=sizeof(char *)?0:sizeof(register_t)-sizeof(char *))] | +
+ +
+Definition at line 57 of file sysproto.h. +
+
1.4.7
+
+
diff --git a/doc/html/structread__args.html b/doc/html/structread__args.html
new file mode 100644
index 0000000..f2a254f
--- /dev/null
+++ b/doc/html/structread__args.html
@@ -0,0 +1,226 @@
+
+
+#include <sysproto.h>
++
Data Fields | |
| void * | buf |
| char | buf_l_ [0] |
| char | buf_r_ [(sizeof(register_t)<=sizeof(void *)?0:sizeof(register_t)-sizeof(void *))] |
| int | fd |
| char | fd_l_ [0] |
| char | fd_r_ [(sizeof(register_t)<=sizeof(int)?0:sizeof(register_t)-sizeof(int))] |
| size_t | nbyte |
| char | nbyte_l_ [0] |
| char | nbyte_r_ [(sizeof(register_t)<=sizeof(size_t)?0:sizeof(register_t)-sizeof(size_t))] |
+ +
+Definition at line 160 of file sysproto.h.
| void* read_args::buf | +
| char read_args::buf_l_[0] | +
+ +
+Definition at line 162 of file sysproto.h. +
| char read_args::buf_r_[(sizeof(register_t)<=sizeof(void *)?0:sizeof(register_t)-sizeof(void *))] | +
+ +
+Definition at line 162 of file sysproto.h. +
| int read_args::fd | +
| char read_args::fd_l_[0] | +
+ +
+Definition at line 161 of file sysproto.h. +
| char read_args::fd_r_[(sizeof(register_t)<=sizeof(int)?0:sizeof(register_t)-sizeof(int))] | +
+ +
+Definition at line 161 of file sysproto.h. +
| size_t read_args::nbyte | +
| char read_args::nbyte_l_[0] | +
+ +
+Definition at line 163 of file sysproto.h. +
| char read_args::nbyte_r_[(sizeof(register_t)<=sizeof(size_t)?0:sizeof(register_t)-sizeof(size_t))] | +
+ +
+Definition at line 163 of file sysproto.h. +
+
1.4.7
+
+
diff --git a/doc/html/structsetitimer__args.html b/doc/html/structsetitimer__args.html
new file mode 100644
index 0000000..b479e20
--- /dev/null
+++ b/doc/html/structsetitimer__args.html
@@ -0,0 +1,220 @@
+
+
+#include <sysproto.h>
++
Data Fields | |
| itimerval * | itv |
| char | itv_l_ [0] |
| char | itv_r_ [(sizeof(register_t)<=sizeof(struct itimerval *)?0:sizeof(register_t)-sizeof(struct itimerval *))] |
| itimerval * | oitv |
| char | oitv_l_ [0] |
| char | oitv_r_ [(sizeof(register_t)<=sizeof(struct itimerval *)?0:sizeof(register_t)-sizeof(struct itimerval *))] |
| u_int | which |
| char | which_l_ [0] |
| char | which_r_ [(sizeof(register_t)<=sizeof(u_int)?0:sizeof(register_t)-sizeof(u_int))] |
+ +
+Definition at line 62 of file sysproto.h.
| struct itimerval* setitimer_args::itv | +
+ +
+Definition at line 64 of file sysproto.h. +
| char setitimer_args::itv_l_[0] | +
+ +
+Definition at line 64 of file sysproto.h. +
| char setitimer_args::itv_r_[(sizeof(register_t)<=sizeof(struct itimerval *)?0:sizeof(register_t)-sizeof(struct itimerval *))] | +
+ +
+Definition at line 64 of file sysproto.h. +
| struct itimerval* setitimer_args::oitv | +
+ +
+Definition at line 65 of file sysproto.h. +
| char setitimer_args::oitv_l_[0] | +
+ +
+Definition at line 65 of file sysproto.h. +
| char setitimer_args::oitv_r_[(sizeof(register_t)<=sizeof(struct itimerval *)?0:sizeof(register_t)-sizeof(struct itimerval *))] | +
+ +
+Definition at line 65 of file sysproto.h. +
| u_int setitimer_args::which | +
+ +
+Definition at line 63 of file sysproto.h. +
| char setitimer_args::which_l_[0] | +
+ +
+Definition at line 63 of file sysproto.h. +
| char setitimer_args::which_r_[(sizeof(register_t)<=sizeof(u_int)?0:sizeof(register_t)-sizeof(u_int))] | +
+ +
+Definition at line 63 of file sysproto.h. +
+
1.4.7
+
+
diff --git a/doc/html/types_8h-source.html b/doc/html/types_8h-source.html
new file mode 100644
index 0000000..9a9ad1c
--- /dev/null
+++ b/doc/html/types_8h-source.html
@@ -0,0 +1,154 @@
+
+
+00001 /***************************************************************************************** +00002 Copyright (c) 2002-2004 The UbixOS Project +00003 All rights reserved. +00004 +00005 Redistribution and use in source and binary forms, with or without modification, are +00006 permitted provided that the following conditions are met: +00007 +00008 Redistributions of source code must retain the above copyright notice, this list of +00009 conditions, the following disclaimer and the list of authors. Redistributions in binary +00010 form must reproduce the above copyright notice, this list of conditions, the following +00011 disclaimer and the list of authors in the documentation and/or other materials provided +00012 with the distribution. Neither the name of the UbixOS Project nor the names of its +00013 contributors may be used to endorse or promote products derived from this software +00014 without specific prior written permission. +00015 +00016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +00017 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +00018 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +00019 THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +00020 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +00021 OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +00022 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +00023 TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +00024 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +00025 +00026 $Id$ +00027 +00028 *****************************************************************************************/ +00029 +00030 #ifndef _TYPES_H +00031 #define _TYPES_H +00032 +00033 #include <sys/_types.h> +00034 +00035 #ifndef NULL +00036 #define NULL 0x0 +00037 #endif +00038 +00039 typedef unsigned char uInt8; +00040 typedef unsigned short uInt16; +00041 typedef unsigned int uInt32; +00042 typedef unsigned int uInt; +00043 typedef char Int8; +00044 typedef short Int16; +00045 typedef long Int32; +00046 +00047 typedef __uint8_t u_int8_t; /* unsigned integrals (deprecated) */ +00048 typedef __uint16_t u_int16_t; +00049 typedef __uint32_t u_int32_t; +00050 typedef __uint64_t u_int64_t; +00051 //typedef long long int quad_t; +00052 typedef __uint64_t quad_t; +00053 +00054 typedef unsigned char u_char; +00055 typedef unsigned short u_short; +00056 typedef unsigned int u_int; +00057 typedef unsigned long u_long; +00058 +00059 +00060 typedef int pidType; +00061 +00062 typedef int pid_t; +00063 typedef int size_t; /* standart */ +00064 +00065 #ifndef NOBOOL +00066 #ifndef __cplusplus +00067 typedef enum { FALSE=0,TRUE=1 } bool; +00068 #endif +00069 #endif +00070 +00071 #ifndef _INO_T_DECLARED +00072 typedef __ino_t ino_t; /* inode number */ +00073 #define _INO_T_DECLARED +00074 #endif +00075 +00076 #ifndef _INT8_T_DECLARED +00077 typedef __int8_t int8_t; +00078 #define _INT8_T_DECLARED +00079 #endif +00080 +00081 #ifndef _INT16_T_DECLARED +00082 typedef __int16_t int16_t; +00083 #define _INT16_T_DECLARED +00084 #endif +00085 +00086 #ifndef _INT32_T_DECLARED +00087 typedef __int32_t int32_t; +00088 #define _INT32_T_DECLARED +00089 #endif +00090 +00091 #ifndef _INT64_T_DECLARED +00092 typedef __int64_t int64_t; +00093 #define _INT64_T_DECLARED +00094 #endif +00095 +00096 typedef __ssize_t ssize_t; +00097 typedef char * caddr_t; +00098 typedef __int64_t off_t; +00099 typedef __uint32_t vm_offset_t; +00100 +00101 typedef __uid_t uid_t; /* user id */ +00102 typedef __gid_t gid_t; /* group id */ +00103 typedef __blkcnt_t blkcnt_t; +00104 typedef __blksize_t blksize_t; +00105 typedef __fflags_t fflags_t; +00106 +00107 #ifndef _TIME_T_DECLARED +00108 typedef __time_t time_t; +00109 #define _TIME_T_DECLARED +00110 #endif +00111 +00112 +00113 #endif +00114 +00115 /*** +00116 END +00117 ***/ +00118 +
1.4.7
+
+
diff --git a/doc/html/types_8h.html b/doc/html/types_8h.html
new file mode 100644
index 0000000..5e9fa30
--- /dev/null
+++ b/doc/html/types_8h.html
@@ -0,0 +1,833 @@
+
+
+#include <sys/_types.h>+Include dependency graph for types.h:

+This graph shows which files directly or indirectly include this file:

+Go to the source code of this file.
Defines | |
| #define | NULL 0x0 |
Typedefs | |
| typedef __blkcnt_t | blkcnt_t |
| typedef __blksize_t | blksize_t |
| typedef char * | caddr_t |
| typedef __fflags_t | fflags_t |
| typedef __gid_t | gid_t |
| typedef __ino_t | ino_t |
| typedef short | Int16 |
| typedef __int16_t | int16_t |
| typedef long | Int32 |
| typedef __int32_t | int32_t |
| typedef __int64_t | int64_t |
| typedef char | Int8 |
| typedef __int8_t | int8_t |
| typedef __int64_t | off_t |
| typedef int | pid_t |
| typedef int | pidType |
| typedef __uint64_t | quad_t |
| typedef int | size_t |
| typedef __ssize_t | ssize_t |
| typedef __time_t | time_t |
| typedef unsigned char | u_char |
| typedef unsigned int | u_int |
| typedef __uint16_t | u_int16_t |
| typedef __uint32_t | u_int32_t |
| typedef __uint64_t | u_int64_t |
| typedef __uint8_t | u_int8_t |
| typedef unsigned long | u_long |
| typedef unsigned short | u_short |
| typedef __uid_t | uid_t |
| typedef unsigned int | uInt |
| typedef unsigned short | uInt16 |
| typedef unsigned int | uInt32 |
| typedef unsigned char | uInt8 |
| typedef __uint32_t | vm_offset_t |
Enumerations | |
| enum | bool { FALSE = 0, +TRUE = 1 + } |
| #define NULL 0x0 | +
+ +
+Definition at line 36 of file types.h. +
+Referenced by __assert(), devfs_init(), device_add(), device_remove(), fclose(), fopen(), inet_aton(), kmain(), kmod_add(), kpanic(), kprint(), openFileUbixFS(), readUbixFS(), strstr(), strtok_r(), strtol(), sysFclose(), sysFopen(), sysFread(), sysFseek(), sysMkDir(), ubixfs_cacheAdd(), ubixfs_cacheDelete(), ubixfs_cacheFind(), ubixfs_cacheNew(), ubixfs_findName(), ubixfs_init(), ubixfs_loadData(), ufs_init(), unlink(), vfs_findMount(), vfs_mount(), vfsRegisterFS(), writeFileByte(), and writeUbixFS(). +
+
| typedef __blkcnt_t blkcnt_t | +
| typedef __blksize_t blksize_t | +
| typedef __fflags_t fflags_t | +
| typedef __uint64_t quad_t | +
| typedef __uint16_t u_int16_t | +
| typedef __uint32_t u_int32_t | +
| typedef __uint64_t u_int64_t | +
| typedef __uint32_t vm_offset_t | +
+
| enum bool | +
+
1.4.7
+
+
diff --git a/doc/html/ubixfs_8h-source.html b/doc/html/ubixfs_8h-source.html
new file mode 100644
index 0000000..16b2f3f
--- /dev/null
+++ b/doc/html/ubixfs_8h-source.html
@@ -0,0 +1,239 @@
+
+
+00001 /***************************************************************************************** +00002 Copyright (c) 2002-2004 The UbixOS Project +00003 All rights reserved. +00004 +00005 Redistribution and use in source and binary forms, with or without modification, are +00006 permitted provided that the following conditions are met: +00007 +00008 Redistributions of source code must retain the above copyright notice, this list of +00009 conditions, the following disclaimer and the list of authors. Redistributions in binary +00010 form must reproduce the above copyright notice, this list of conditions, the following +00011 disclaimer and the list of authors in the documentation and/or other materials provided +00012 with the distribution. Neither the name of the UbixOS Project nor the names of its +00013 contributors may be used to endorse or promote products derived from this software +00014 without specific prior written permission. +00015 +00016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +00017 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +00018 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +00019 THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +00020 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +00021 OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +00022 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +00023 TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +00024 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +00025 +00026 $Id$ +00027 +00028 *****************************************************************************************/ +00029 +00030 #ifndef _UBIXFS_H +00031 #define _UBIXFS_H +00032 +00033 #include <ubixos/types.h> +00034 #include <vfs/vfs.h> +00035 #include <sys/device.h> +00036 #include <mpi/mpi.h> +00037 #include <ubixfs/dirCache.h> +00038 +00039 +00040 #define UBIXFS_BLOCKSIZE_BYTES blockSize*512 +00041 #define UBIXFS_ALIGN(size) (size + ((((size) % (UBIXFS_BLOCKSIZE_BYTES)) == 0)? 0 : ((UBIXFS_BLOCKSIZE_BYTES) - ((size) % (UBIXFS_BLOCKSIZE_BYTES))))) +00042 +00043 #define UBIXDISKMAGIC ((uInt32)0x45) /* The disk magic number */ +00044 #define MAXUBIXPARTITIONS 16 +00045 #define blockSize 8 +00046 +00047 +00048 #define EOBC -1 +00049 +00050 +00051 #define typeFile 1 +00052 #define typeContainer 2 +00053 #define typeDirectory 4 +00054 #define typeDeleted 8 +00055 +00056 /* Start */ +00057 struct directoryList { +00058 char dirName[256]; +00059 char *dirCache; +00060 uInt32 dirBlock; +00061 struct directoryList *next; +00062 struct directoryList *prev; +00063 }; +00064 +00065 typedef struct directoryList * dirList_t; +00066 +00067 dirList_t ubixFSLoadDir(char *); +00068 /* End */ +00069 +00070 //Partition Information +00071 struct ubixDiskLabel { +00072 uInt32 magicNum; +00073 uInt32 magicNum2; +00074 uInt16 driveType; +00075 uInt16 numPartitions; +00076 struct ubixPartitions { //the partition table +00077 uInt32 pSize; //number of sectors in partition +00078 uInt32 pOffset; //starting sector +00079 uInt32 pFsSize; //filesystem basic fragment size +00080 uInt32 pBatSize; //BAT size +00081 uInt8 pFsType; //filesystem type, see below +00082 uInt8 pFrag; //filesystem fragments per block +00083 } partitions[MAXUBIXPARTITIONS]; +00084 }; +00085 +00086 +00087 struct partitionInformation { +00088 uInt32 size; //Size In Sectors +00089 uInt32 startSector; //Base Sector Of Partition +00090 uInt32 blockAllocationTable; //Base Sector Of BAT +00091 uInt32 rootDirectory; //Base Sector Of Root Directory +00092 }; +00093 +00094 //Block Allocation Table Entry +00095 struct blockAllocationTableEntry { +00096 long attributes; //Block Attributes +00097 long realSector; //Real Sector +00098 long nextBlock; //Sector Of Next Block +00099 long reserved; //Reserved +00100 }; +00101 +00102 //UbixFS Directory Entry +00103 struct directoryEntry { +00104 uInt32 startCluster; //Starting Cluster Of File +00105 uInt32 size; //Size Of File +00106 uInt32 creationDate; //Date Created +00107 uInt32 lastModified; //Date Last Modified +00108 uInt32 uid; //UID Of Owner +00109 uInt32 gid; //GID Of Owner +00110 uInt16 attributes; //Files Attributes +00111 uInt16 permissions; //Files Permissions +00112 char fileName[256]; //File Name +00113 }; +00114 +00115 struct bootSect { +00116 uInt8 jmp[4]; +00117 uInt8 id[6]; +00118 uInt16 version; +00119 uInt16 tmp; +00120 uInt16 fsStart; +00121 uInt16 tmp2; +00122 uInt32 krnl_start; +00123 uInt BytesPerSector; +00124 uInt SectersPerTrack; +00125 uInt TotalHeads; +00126 uInt32 TotalSectors; +00127 uInt8 code[479]; +00128 }; +00129 +00130 struct ubixFSInfo { +00131 struct blockAllocationTableEntry *blockAllocationTable; +00132 struct cacheNode * dirCache; +00133 uInt32 batEntries; +00134 uInt32 rootDir; +00135 }; /* ubixFSInfo */ +00136 +00137 int readFile(char *file); +00138 int writeFileByte(int ch,fileDescriptor *fd,long offset); +00139 //int openFileUbixFS(char *file,fileDescriptor *fd); +00140 int getFreeBlocks(int count,fileDescriptor *fd); +00141 //extern struct ubixDiskLabel *diskLabel; +00142 +00143 //Good Functions +00144 //void initUbixFS(struct mountPoints *mp); +00145 +00146 int readUbixFS(fileDescriptor *fd,char *data,uInt32,long size); +00147 int writeUbixFS(fileDescriptor *fd,char *data,long offset,long size); +00148 void syncBat(struct vfs_mountPoint *mp); +00149 int freeBlocks(int block,fileDescriptor *fd); +00150 int addDirEntry(struct directoryEntry *dir,fileDescriptor *fd); +00151 void ubixFSUnlink(char *path,struct vfs_mountPoint *mp); +00152 int ubixFSmkDir(char *dir,fileDescriptor *fd); +00153 +00154 int ubixfs_init(); +00155 int ubixfs_initialize(); +00156 void ubixfs_thread(); +00157 +00158 +00159 #endif +00160 +00161 /*** +00162 $Log$ +00163 Revision 1.2 2006/12/05 14:10:21 reddawg +00164 Workign Distro +00165 +00166 Revision 1.1.1.1 2006/06/01 12:46:14 reddawg +00167 ubix2 +00168 +00169 Revision 1.2 2005/10/12 00:13:37 reddawg +00170 Removed +00171 +00172 Revision 1.1.1.1 2005/09/26 17:23:53 reddawg +00173 no message +00174 +00175 Revision 1.21 2004/09/14 20:57:01 reddawg +00176 Bug fixes: macro problem over opt a multiply +00177 +00178 Revision 1.20 2004/08/01 17:58:39 flameshadow +00179 chg: fixed string allocation bug in ubixfs_cacheNew() +00180 +00181 Revision 1.19 2004/07/27 12:02:01 reddawg +00182 chg: fixed marks bug readFile did a lookup which is why it looked like it was loopping so much +00183 +00184 Revision 1.18 2004/07/23 09:10:06 reddawg +00185 ubixfs: cleaned up some functions played with the caching a bit +00186 vfs: renamed a bunch of functions +00187 cleaned up a few misc bugs +00188 +00189 Revision 1.17 2004/07/22 22:37:03 reddawg +00190 Caching is working now the FS is extremely fast but needs to be optimized to do 32bit copies over 8bit +00191 +00192 Revision 1.16 2004/07/20 21:28:16 flameshadow +00193 oops +00194 +00195 Revision 1.14 2004/07/20 19:36:49 reddawg +00196 UBU Tags +00197 +00198 Revision 1.13 2004/07/14 12:21:49 reddawg +00199 ubixfs: enableUbixFs to ubixfs_init +00200 Changed Startup Routines +00201 +00202 END +00203 ***/ +
1.4.7
+
+
diff --git a/doc/html/ubixfs_8h.html b/doc/html/ubixfs_8h.html
new file mode 100644
index 0000000..ef989a3
--- /dev/null
+++ b/doc/html/ubixfs_8h.html
@@ -0,0 +1,932 @@
+
+
+#include <ubixos/types.h>#include <vfs/vfs.h>#include <sys/device.h>#include <mpi/mpi.h>#include <ubixfs/dirCache.h>+Include dependency graph for ubixfs.h:

+This graph shows which files directly or indirectly include this file:

+Go to the source code of this file.
Data Structures | |
| struct | blockAllocationTableEntry |
| struct | bootSect |
| struct | directoryEntry |
| struct | directoryList |
| struct | partitionInformation |
| struct | ubixDiskLabel |
| struct | ubixDiskLabel::ubixPartitions |
| struct | ubixFSInfo |
Defines | |
| #define | blockSize 8 |
| #define | EOBC -1 |
| #define | MAXUBIXPARTITIONS 16 |
| #define | typeContainer 2 |
| #define | typeDeleted 8 |
| #define | typeDirectory 4 |
| #define | typeFile 1 |
| #define | UBIXDISKMAGIC ((uInt32)0x45) |
| #define | UBIXFS_ALIGN(size) (size + ((((size) % (UBIXFS_BLOCKSIZE_BYTES)) == 0)? 0 : ((UBIXFS_BLOCKSIZE_BYTES) - ((size) % (UBIXFS_BLOCKSIZE_BYTES))))) |
| #define | UBIXFS_BLOCKSIZE_BYTES blockSize*512 |
Typedefs | |
| typedef directoryList * | dirList_t |
Functions | |
| int | addDirEntry (struct directoryEntry *dir, fileDescriptor *fd) |
| int | freeBlocks (int block, fileDescriptor *fd) |
| int | getFreeBlocks (int count, fileDescriptor *fd) |
| int | readFile (char *file) |
| int | readUbixFS (fileDescriptor *fd, char *data, uInt32, long size) |
| void | syncBat (struct vfs_mountPoint *mp) |
| int | ubixfs_init () |
| int | ubixfs_initialize () |
| void | ubixfs_thread () |
| dirList_t | ubixFSLoadDir (char *) |
| int | ubixFSmkDir (char *dir, fileDescriptor *fd) |
| void | ubixFSUnlink (char *path, struct vfs_mountPoint *mp) |
| int | writeFileByte (int ch, fileDescriptor *fd, long offset) |
| int | writeUbixFS (fileDescriptor *fd, char *data, long offset, long size) |
| #define blockSize 8 | +
+ +
+Definition at line 45 of file ubixfs.h. +
+Referenced by ubixfs_loadData(), ubixFSmkDir(), and writeUbixFS(). +
| #define EOBC -1 | +
| #define typeDeleted 8 | +
| #define typeDirectory 4 | +
| #define typeFile 1 | +
| #define UBIXDISKMAGIC ((uInt32)0x45) | +
| #define UBIXFS_ALIGN | +( | +size | ++ | ) | +(size + ((((size) % (UBIXFS_BLOCKSIZE_BYTES)) == 0)? 0 : ((UBIXFS_BLOCKSIZE_BYTES) - ((size) % (UBIXFS_BLOCKSIZE_BYTES))))) | +
+ +
+Definition at line 41 of file ubixfs.h. +
+Referenced by openFileUbixFS(), and ubixfs_loadData(). +
| #define UBIXFS_BLOCKSIZE_BYTES blockSize*512 | +
+ +
+Definition at line 40 of file ubixfs.h. +
+Referenced by ubixfs_loadData(), and ubixFSmkDir(). +
+
| typedef struct directoryList* dirList_t | +
+
| int addDirEntry | +( | +struct directoryEntry * | +dir, | +|
| + | + | fileDescriptor * | +fd | + |
| + | ) | ++ |
+ +
+Definition at line 66 of file directory.c. +
+References kmalloc(), kprintf(), memcpy(), fileDescriptorStruct::offset, readUbixFS(), fileDescriptorStruct::size, writeUbixFS(), and x1000. +
+Referenced by ubixFSmkDir(). +
+Here is the call graph for this function:

| int freeBlocks | +( | +int | +block, | +|
| + | + | fileDescriptor * | +fd | + |
| + | ) | ++ |
+ +
+Definition at line 79 of file block.c. +
+References blockAllocationTableEntry::attributes, ubixFSInfo::blockAllocationTable, vfs_mountPoint::fsInfo, fileDescriptorStruct::mp, blockAllocationTableEntry::nextBlock, and syncBat(). +
+Here is the call graph for this function:

| int getFreeBlocks | +( | +int | +count, | +|
| + | + | fileDescriptor * | +fd | + |
| + | ) | ++ |
+ +
+Definition at line 96 of file block.c. +
+References blockAllocationTableEntry::attributes, ubixFSInfo::batEntries, ubixFSInfo::blockAllocationTable, vfs_mountPoint::fsInfo, fileDescriptorStruct::mp, blockAllocationTableEntry::nextBlock, syncBat(), and x1. +
+Referenced by ubixFSmkDir(), and writeUbixFS(). +
+Here is the call graph for this function:

| int readFile | +( | +char * | +file | +) | ++ |
+ +
| int readUbixFS | +( | +fileDescriptor * | +fd, | +|
| + | + | char * | +data, | +|
| + | + | uInt32 | +, | +|
| + | + | long | +size | + |
| + | ) | ++ |
+ +
+Definition at line 194 of file ubixfs.c. +
+References assert, fileDescriptorStruct::cacheNode, fdEof, vfs_mountPoint::fsInfo, cacheNode::info, kpanic(), fileDescriptorStruct::mp, NULL, cacheNode::present, fileDescriptorStruct::size, and fileDescriptorStruct::status. +
+Referenced by addDirEntry(), and ubixfs_init(). +
+Here is the call graph for this function:

| void syncBat | +( | +struct vfs_mountPoint * | +mp | +) | ++ |
+ +
+Definition at line 74 of file block.c. +
+References ubixFSInfo::blockAllocationTable, vfs_mountPoint::device, device_node::devInfo, vfs_mountPoint::diskLabel, vfs_mountPoint::fsInfo, device_interface::info, vfs_mountPoint::partition, ubixDiskLabel::partitions, and device_interface::write. +
+Referenced by freeBlocks(), and getFreeBlocks(). +
| int ubixfs_init | +( | ++ | ) | ++ |
+ +
+Definition at line 456 of file ubixfs.c. +
+References kpanic(), NULL, openFileUbixFS(), readUbixFS(), ubixfs_initialize(), ubixFSmkDir(), ubixFSUnlink(), vfsRegisterFS(), writeUbixFS(), and x1. +
+Here is the call graph for this function:

| int ubixfs_initialize | +( | ++ | ) | ++ |
+ +
+Referenced by ubixfs_init(). +
| void ubixfs_thread | +( | ++ | ) | ++ |
+ +
| dirList_t ubixFSLoadDir | +( | +char * | ++ | ) | ++ |
+ +
+Definition at line 41 of file directory.c. +
+References directoryList::dirCache, dirList, directoryList::dirName, kmalloc(), directoryList::next, directoryList::prev, sprintf(), and strcmp(). +
+Here is the call graph for this function:

| int ubixFSmkDir | +( | +char * | +dir, | +|
| + | + | fileDescriptor * | +fd | + |
| + | ) | ++ |
+ +
+Definition at line 94 of file directory.c. +
+References addDirEntry(), directoryEntry::attributes, ubixFSInfo::blockAllocationTable, blockSize, vfs_mountPoint::device, device_node::devInfo, vfs_mountPoint::diskLabel, directoryEntry::fileName, vfs_mountPoint::fsInfo, getFreeBlocks(), device_interface::info, kfree(), kmalloc(), fileDescriptorStruct::mp, vfs_mountPoint::partition, ubixDiskLabel::partitions, directoryEntry::permissions, blockAllocationTableEntry::realSector, directoryEntry::size, sprintf(), directoryEntry::startCluster, typeDirectory, UBIXFS_BLOCKSIZE_BYTES, and device_interface::write. +
+Referenced by ubixfs_init(). +
+Here is the call graph for this function:

| void ubixFSUnlink | +( | +char * | +path, | +|
| + | + | struct vfs_mountPoint * | +mp | + |
| + | ) | ++ |
+ +
+Definition at line 309 of file ubixfs.c. +
+References ubixFSInfo::blockAllocationTable, vfs_mountPoint::device, device_node::devInfo, vfs_mountPoint::diskLabel, directoryEntry::fileName, vfs_mountPoint::fsInfo, device_interface::info, kmalloc(), kprintf(), vfs_mountPoint::partition, ubixDiskLabel::partitions, device_interface::read, ubixFSInfo::rootDir, strcmp(), typeDeleted, device_interface::write, and x1000. +
+Referenced by ubixfs_init(). +
+Here is the call graph for this function:

| int writeFileByte | +( | +int | +ch, | +|
| + | + | fileDescriptor * | +fd, | +|
| + | + | long | +offset | + |
| + | ) | ++ |
+ +
+Definition at line 118 of file ubixfs.c. +
+References assert, ubixFSInfo::blockAllocationTable, vfs_mountPoint::diskLabel, fdOpen, fdRead, vfs_mountPoint::fsInfo, fileDescriptorStruct::mp, blockAllocationTableEntry::nextBlock, NULL, vfs_mountPoint::partition, ubixDiskLabel::partitions, ubixDiskLabel::ubixPartitions::pBatSize, fileDescriptorStruct::start, and fileDescriptorStruct::status. +
| int writeUbixFS | +( | +fileDescriptor * | +fd, | +|
| + | + | char * | +data, | +|
| + | + | long | +offset, | +|
| + | + | long | +size | + |
| + | ) | ++ |
+ +
+Definition at line 232 of file ubixfs.c. +
+References assert, ubixFSInfo::blockAllocationTable, blockSize, fileDescriptorStruct::buffer, vfs_mountPoint::device, device_node::devInfo, vfs_mountPoint::diskLabel, EOBC, directoryEntry::fileName, fileDescriptorStruct::fileName, vfs_mountPoint::fsInfo, getFreeBlocks(), device_interface::info, kfree(), kmalloc(), fileDescriptorStruct::mp, blockAllocationTableEntry::nextBlock, NULL, vfs_mountPoint::partition, ubixDiskLabel::partitions, device_interface::read, blockAllocationTableEntry::realSector, fileDescriptorStruct::size, directoryEntry::size, fileDescriptorStruct::start, directoryEntry::startCluster, strcmp(), device_interface::write, and x1000. +
+Referenced by addDirEntry(), and ubixfs_init(). +
+Here is the call graph for this function:

+
1.4.7
+
+
diff --git a/doc/html/vfs_8h-source.html b/doc/html/vfs_8h-source.html
new file mode 100644
index 0000000..aaa72dc
--- /dev/null
+++ b/doc/html/vfs_8h-source.html
@@ -0,0 +1,111 @@
+
+
+00001 /***************************************************************************************** +00002 Copyright (c) 2002-2004 The UbixOS Project +00003 All rights reserved. +00004 +00005 Redistribution and use in source and binary forms, with or without modification, are +00006 permitted provided that the following conditions are met: +00007 +00008 Redistributions of source code must retain the above copyright notice, this list of +00009 conditions, the following disclaimer and the list of authors. Redistributions in binary +00010 form must reproduce the above copyright notice, this list of conditions, the following +00011 disclaimer and the list of authors in the documentation and/or other materials provided +00012 with the distribution. Neither the name of the UbixOS Project nor the names of its +00013 contributors may be used to endorse or promote products derived from this software +00014 without specific prior written permission. +00015 +00016 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +00017 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +00018 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +00019 THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +00020 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT +00021 OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +00022 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR +00023 TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +00024 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +00025 +00026 $Id$ +00027 +00028 *****************************************************************************************/ +00029 +00030 #ifndef _VFS_H +00031 #define _VFS_H +00032 +00033 #include <ubixos/types.h> +00034 #include <vfs/file.h> +00035 #include <vfs/mount.h> +00036 #include <sys/sysproto.h> +00037 #include <sys/thread.h> +00038 +00039 #define maxFd 32 +00040 #define fdAvail 1 +00041 #define fdOpen 2 +00042 #define fdRead 3 +00043 #define fdEof 4 +00044 +00045 +00046 #define fileRead 0x0001 +00047 #define fileWrite 0x0002 +00048 #define fileBinary 0x0004 +00049 #define fileAppend 0x0008 +00050 +00056 struct fileSystem { +00057 struct fileSystem *prev; +00058 struct fileSystem *next; +00059 int (*vfsInitFS)(void *); +00060 int (*vfsRead)(void *,char *,long,long); +00061 int (*vfsWrite)(void *,char *,long,long); +00062 int (*vfsOpenFile)(void *,void *); +00063 int (*vfsUnlink)(char *,void *); +00064 int (*vfsMakeDir)(char *,void *); +00065 int (*vfsRemDir)(char *); +00066 int (*vfsSync)(void); +00067 int vfsType; +00068 }; +00069 +00070 +00071 /* VFS Functions */ +00072 int vfs_init(); +00073 int vfsRegisterFS(struct fileSystem); +00074 struct fileSystem *vfs_findFS(int); +00075 +00076 #endif +00077 +00078 /*** +00079 END +00080 ***/ +
1.4.7
+
+
diff --git a/doc/html/vfs_8h.html b/doc/html/vfs_8h.html
new file mode 100644
index 0000000..0d05e92
--- /dev/null
+++ b/doc/html/vfs_8h.html
@@ -0,0 +1,378 @@
+
+
+#include <ubixos/types.h>#include <vfs/file.h>#include <vfs/mount.h>#include <sys/sysproto.h>#include <sys/thread.h>+Include dependency graph for vfs.h:

+This graph shows which files directly or indirectly include this file:

+Go to the source code of this file.
Data Structures | |
| struct | fileSystem |
| filesSystem Structure More... | |
Defines | |
| #define | fdAvail 1 |
| #define | fdEof 4 |
| #define | fdOpen 2 |
| #define | fdRead 3 |
| #define | fileAppend 0x0008 |
| #define | fileBinary 0x0004 |
| #define | fileRead 0x0001 |
| #define | fileWrite 0x0002 |
| #define | maxFd 32 |
Functions | |
| fileSystem * | vfs_findFS (int) |
| int | vfs_init () |
| int | vfsRegisterFS (struct fileSystem) |
| register a file system | |
| #define fdEof 4 | +
| #define fdOpen 2 | +
| #define fdRead 3 | +
| #define fileAppend 0x0008 | +
| #define fileBinary 0x0004 | +
| #define fileRead 0x0001 | +
| #define fileWrite 0x0002 | +
+
| struct fileSystem* vfs_findFS | +( | +int | ++ | ) | ++ |
+ +
| int vfs_init | +( | ++ | ) | ++ |
+ +
+Definition at line 48 of file vfs.c. +
+References vitalsStruct::fileSystems, kprintf(), and systemVitals. +
+Here is the call graph for this function:

| int vfsRegisterFS | +( | +struct fileSystem | +newFS | +) | ++ |
+register a file system +
+This registers a new filesystem into the vfs which is referenced when trying to mount a device
+
| newFS | pointer to fileSystem structure |
+Definition at line 81 of file vfs.c. +
+References vitalsStruct::fileSystems, kmalloc(), kprintf(), memcpy(), fileSystem::next, NULL, fileSystem::prev, systemVitals, vfsFindFS(), fileSystem::vfsType, and x1. +
+Referenced by devfs_init(), ubixfs_init(), and ufs_init(). +
+Here is the call graph for this function:

+
1.4.7
+
+