xv6/console.c File Reference

#include "types.h"
#include "defs.h"
#include "param.h"
#include "traps.h"
#include "spinlock.h"
#include "fs.h"
#include "file.h"
#include "mmu.h"
#include "proc.h"
#include "x86.h"

Go to the source code of this file.

Defines

#define BACKSPACE   0x100
#define CRTPORT   0x3d4
#define INPUT_BUF   128
#define C(x)   ((x)-'@')

Functions

static void consputc (int)
static void printint (int xx, int base, int sgn)
void cprintf (char *fmt,...)
void panic (char *s)
static void cgaputc (int c)
void consoleintr (int(*getc)(void))
int consoleread (struct inode *ip, char *dst, int n)
int consolewrite (struct inode *ip, char *buf, int n)
void consoleinit (void)

Variables

static int panicked = 0
struct {
   struct spinlock   lock
   int   locking
cons
static ushortcrt = (ushort*)0xb8000
struct {
   struct spinlock   lock
   char   buf [INPUT_BUF]
   uint   r
   uint   w
   uint   e
input


Define Documentation

#define BACKSPACE   0x100

Definition at line 119 of file console.c.

Referenced by cgaputc(), and consoleintr().

#define C (  )     ((x)-'@')

Definition at line 177 of file console.c.

Referenced by consoleintr(), and consoleread().

#define CRTPORT   0x3d4

Definition at line 120 of file console.c.

Referenced by cgaputc().

#define INPUT_BUF   128

Definition at line 168 of file console.c.

Referenced by consoleintr(), and consoleread().


Function Documentation

static void cgaputc ( int  c  )  [static]

Definition at line 124 of file console.c.

References BACKSPACE, crt, CRTPORT, inb(), memmove(), memset(), and outb().

Referenced by consputc().

void consoleinit ( void   ) 

Definition at line 272 of file console.c.

References cons, CONSOLE, consoleread(), consolewrite(), initlock(), input, ioapicenable(), IRQ_KBD, and picenable().

Referenced by mpmain().

void consoleintr ( int(*)(void)  getc  ) 

Definition at line 180 of file console.c.

References acquire(), BACKSPACE, C, consputc(), input, INPUT_BUF, procdump(), release(), and wakeup().

Referenced by kbdintr(), and uartintr().

int consoleread ( struct inode ip,
char *  dst,
int  n 
)

Definition at line 219 of file console.c.

References acquire(), C, ilock(), input, INPUT_BUF, iunlock(), release(), and sleep().

Referenced by consoleinit().

int consolewrite ( struct inode ip,
char *  buf,
int  n 
)

Definition at line 257 of file console.c.

References acquire(), cons, consputc(), ilock(), iunlock(), and release().

Referenced by consoleinit().

void consputc ( int  c  )  [static]

Definition at line 156 of file console.c.

References cgaputc(), cli(), panicked, and uartputc().

Referenced by consoleintr(), consolewrite(), cprintf(), and printint().

void cprintf ( char *  fmt,
  ... 
)

void panic ( char *  s  ) 

static void printint ( int  xx,
int  base,
int  sgn 
) [static]

Definition at line 26 of file console.c.

References consputc().

Referenced by cprintf(), and printf().


Variable Documentation

char buf[INPUT_BUF]

Definition at line 171 of file console.c.

struct { ... } cons [static]

ushort* crt = (ushort*)0xb8000 [static]

Definition at line 121 of file console.c.

Referenced by cgaputc().

Definition at line 174 of file console.c.

Referenced by mpinit(), and mpsearch1().

struct { ... } input

struct spinlock lock [read]

Definition at line 21 of file console.c.

int locking

Definition at line 22 of file console.c.

Referenced by cprintf().

int panicked = 0 [static]

Definition at line 18 of file console.c.

Referenced by consputc(), and panic().

Definition at line 172 of file console.c.

Referenced by fileread(), filewrite(), idewait(), kalloc(), kfree(), and stat().

Definition at line 173 of file console.c.

Referenced by wc().


Generated on Fri Jan 7 12:25:49 2011 for xv6 by  doxygen 1.5.6