?? p_driver.h
字號:
#ifndef _DRIVER_H_
#define _DRIVER_H_
handle_t p_open(pid_t major, int minor); /* return=0:error */
bool_t p_close(handle_t); /* return=FALSE:error */
size_t p_read(handle_t, void *s, size_t size); /* return=0 can be err, info of err is in errno */
size_t p_write(handle_t, const void *s, size_t size); /* like p_read */
bool_t p_ioctl(handle_t, int request, void *arg); /* return=FALSE:error */
struct driver_s
{
/* success if return is 0, else error number defined in error.h */
int (*drv_open)(pid_t src, int minor);
int (*drv_close)(pid_t src, int minor);
int (*drv_read)(pid_t src, int minor, proc_addr_t src_buf, size_t *size);
int (*drv_write)(pid_t src, int minor, proc_addr_t src_buf, size_t *size);
int (*drv_ioctl)(pid_t src, int minor, int request, proc_addr_t src_buf);
void (*drv_hardware)(int irq, prio_t prio); /* irq can be timer index if your set timer */
};
void p_drv_server(const struct driver_s*);
#ifndef _P_COPY
#define _P_COPY
/* copy data between procedures, src_addr or dest_addr can be MY_PID */
void p_copy(pid_t dest, proc_addr_t dest_addr, pid_t src, proc_addr_t src_addr, size_t len);
#endif
#endif /* _DRIVER_H_ */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -