XINU
device
lfs
lfsinit.c
Go to the documentation of this file.
1
/* lfsinit.c - lfsinit */
2
3
#include <
xinu.h
>
4
5
struct
lfdata
Lf_data
;
6
7
/*------------------------------------------------------------------------
8
* lfsinit - Initialize the local file system master device
9
*------------------------------------------------------------------------
10
*/
11
devcall
lfsinit
(
12
struct
dentry
*devptr
/* Entry in device switch table */
13
)
14
{
15
/* Assign ID of disk device that will be used */
16
17
Lf_data
.
lf_dskdev
=
LF_DISK_DEV
;
18
19
/* Create a mutual exclusion semaphore */
20
21
Lf_data
.
lf_mutex
=
semcreate
(1);
22
23
/* Zero directory area (for debugging) */
24
25
memset
((
char
*)&
Lf_data
.
lf_dir
,
NULLCH
,
sizeof
(
struct
lfdir
));
26
27
/* Initialize directory to "not present" in memory */
28
29
Lf_data
.
lf_dirpresent
=
Lf_data
.
lf_dirdirty
=
FALSE
;
30
31
return
OK
;
32
}
lfsinit
devcall lfsinit(struct dentry *devptr)
Definition:
lfsinit.c:11
semcreate
sid32 semcreate(int32)
未使用セマフォを割り当て、そのセマフォへのインデックス(セマフォID)を返す。
Definition:
semcreate.c:22
lfdata::lf_mutex
sid32 lf_mutex
Definition:
lfilesys.h:132
xinu.h
全てのシステムヘッダファイルをインクルードする。
lfdata::lf_dskdev
did32 lf_dskdev
Definition:
lfilesys.h:131
lfdir
Definition:
lfilesys.h:114
OK
#define OK
処理が成功した場合
Definition:
kernel.h:77
LF_DISK_DEV
#define LF_DISK_DEV
Definition:
conf.h:86
lfdata::lf_dirpresent
bool8 lf_dirpresent
Definition:
lfilesys.h:135
dentry
Definition:
conf.h:6
lfdata::lf_dir
struct lfdir lf_dir
Definition:
lfilesys.h:134
FALSE
#define FALSE
Boolean False(0)
Definition:
kernel.h:63
lfdata::lf_dirdirty
bool8 lf_dirdirty
Definition:
lfilesys.h:137
memset
void * memset(void *, const int, int32)
指定のByteブロックに対して、同じ値をNバイト分書き込む。
Definition:
memset.c:13
lfdata
Definition:
lfilesys.h:130
devcall
int32 devcall
デバイスコール関数 返り値の型
Definition:
kernel.h:49
Lf_data
struct lfdata Lf_data
Definition:
lfsinit.c:5
NULLCH
#define NULLCH
NULL文字(NULL終端)
Definition:
kernel.h:70
Generated by
1.8.13