📄 kernel.h
字号:
/*************************************************************************
Copyright (c) 1999 Mentor Graphics Corporation.
IMPORTANT - USE OF THIS SOFTWARE IS SUBJECT TO LICENSE RESTRICTIONS
CAREFULLY READ THE LICENSE AGREEMENT BEFORE USING THE SOFTWARE
*************************************************************************/
/* Revision History:
1.1 P.Cumming 31.5.96 vmc_keep_FIQ_enabled declared
*/
#include "error.h"
#include "task.h" /* needed for struct tentry */
/*Symbolic constants used by VRTX */
typedef unsigned int word;
/* deleted by chwon
typedef unsigned long vmc_event_t;
*/
#define OK 0
#define SYSERR -1
#define SYSCALL int
#define SYSCALLi int
#define SYSCALLu unsigned int
#define SYSCALLc char
#define SYSCALLul unsigned long
#define SYSCALLl long
#define SYSCALLv void
#define UINT unsigned int
#define ULONG unsigned long
#define UCHAR unsigned char
#define LOCAL static
#define TASK void
#define WORD word
#define BYTE unsigned char
#define SHORT unsigned char
#define FALSE 0
#define TRUE 1
#define MINPRIO 126
#define IDLEPRIO MINPRIO+1
#define INITRET vmc_userexit_ptr
#define INITF 0x00 /* interrupts enabled when God creates task*/
#define INITSTKBV 0xaaaa /* stored at the bottom of the stack */
#ifndef H83
#define VMC_ATOMIC_32_BIT_RW
#endif
extern unsigned long vmc_timer_timeout, vmc_task_timeout;
extern unsigned char vmc_readyhead, vmc_delayhead,
vmc_timer_head, vmc_mboxhead, vmc_keep_FIQ_enabled;
extern int vmc_timeslice, vmc_quantum, vmc_nflag, vmc_ntsk;
extern int vmc_nqueue, vmc_ntimers, vmc_npart;
extern char vmc_sched_count, vmc_sched_needed;
extern void vmc_taskinit(struct tentry *, char *, int, void (*)(void *), int);
extern int vmc_tcreate(TASK (*)(void *), char *, int, int, int, int);
extern int vmc_fcreate(unsigned long);
extern void vmc_tresched(void),
vmc_ContextSwitch(char **, char **), vmc_panic(void);
extern void (*vmc_userexit_ptr)(void), (*vmc_panic_ptr)(void);
extern void vmc_vt_handler(unsigned long);
extern int vmc_qcreate(char **, int), vmc_vtcreate(void);
extern int vmc_usr_sysinit(void);
extern int vmc_pcreate(char *,unsigned long, unsigned long, unsigned char);
extern SYSCALLv ui_exit(void), ui_enter(void);
extern SYSCALLv sc_tsuspend(int,int,int *), sc_tresume(int,int,int *);
extern SYSCALLv sc_tslice(unsigned int), sc_unlock(void);
#define vmc_sched_disable() ++vmc_sched_count
#define vmc_sched_enable() sc_unlock()
/* Not sure why this was changed - DH
#ifdef ARM
void vmc_sched_enable(void);
#else
#define vmc_sched_enable() sc_unlock()
#endif
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -