pintos/src/lib/kernel/bitmap.h File Reference

#include <stdbool.h>
#include <stddef.h>
#include <inttypes.h>

Go to the source code of this file.

Defines

#define BITMAP_ERROR   SIZE_MAX

Functions

struct bitmapbitmap_create (size_t bit_cnt)
struct bitmapbitmap_create_in_buf (size_t bit_cnt, void *, size_t byte_cnt)
size_t bitmap_buf_size (size_t bit_cnt)
void bitmap_destroy (struct bitmap *)
size_t bitmap_size (const struct bitmap *)
void bitmap_set (struct bitmap *, size_t idx, bool)
void bitmap_mark (struct bitmap *, size_t idx)
void bitmap_reset (struct bitmap *, size_t idx)
void bitmap_flip (struct bitmap *, size_t idx)
bool bitmap_test (const struct bitmap *, size_t idx)
void bitmap_set_all (struct bitmap *, bool)
void bitmap_set_multiple (struct bitmap *, size_t start, size_t cnt, bool)
size_t bitmap_count (const struct bitmap *, size_t start, size_t cnt, bool)
bool bitmap_contains (const struct bitmap *, size_t start, size_t cnt, bool)
bool bitmap_any (const struct bitmap *, size_t start, size_t cnt)
bool bitmap_none (const struct bitmap *, size_t start, size_t cnt)
bool bitmap_all (const struct bitmap *, size_t start, size_t cnt)
size_t bitmap_scan (const struct bitmap *, size_t start, size_t cnt, bool)
size_t bitmap_scan_and_flip (struct bitmap *, size_t start, size_t cnt, bool)
void bitmap_dump (const struct bitmap *)


Define Documentation

#define BITMAP_ERROR   SIZE_MAX


Function Documentation

bool bitmap_all ( const struct bitmap ,
size_t  start,
size_t  cnt 
)

Definition at line 285 of file bitmap.c.

References bitmap_contains().

Referenced by free_map_release(), and palloc_free_multiple().

bool bitmap_any ( const struct bitmap ,
size_t  start,
size_t  cnt 
)

Definition at line 269 of file bitmap.c.

References bitmap_contains().

size_t bitmap_buf_size ( size_t  bit_cnt  ) 

Definition at line 115 of file bitmap.c.

Referenced by bitmap_create_in_buf(), and init_pool().

bool bitmap_contains ( const struct bitmap ,
size_t  start,
size_t  cnt,
bool   
)

Definition at line 252 of file bitmap.c.

References ASSERT, bitmap::bit_cnt, bitmap_test(), and NULL.

Referenced by bitmap_all(), bitmap_any(), bitmap_none(), and bitmap_scan().

size_t bitmap_count ( const struct bitmap ,
size_t  start,
size_t  cnt,
bool   
)

Definition at line 234 of file bitmap.c.

References ASSERT, bitmap::bit_cnt, bitmap_test(), and NULL.

struct bitmap* bitmap_create ( size_t  bit_cnt  )  [read]

struct bitmap* bitmap_create_in_buf ( size_t  bit_cnt,
void *  ,
size_t  byte_cnt 
) [read]

void bitmap_destroy ( struct bitmap  ) 

Definition at line 124 of file bitmap.c.

References bitmap::bits, free(), and NULL.

Referenced by uhci_destroy_info().

void bitmap_dump ( const struct bitmap  ) 

Definition at line 368 of file bitmap.c.

References bitmap::bit_cnt, bitmap::bits, byte_cnt(), and hex_dump().

void bitmap_flip ( struct bitmap ,
size_t  idx 
)

Definition at line 186 of file bitmap.c.

References bit_mask(), bitmap::bits, and elem_idx().

void bitmap_mark ( struct bitmap ,
size_t  idx 
)

Definition at line 158 of file bitmap.c.

References bit_mask(), bitmap::bits, and elem_idx().

Referenced by bitmap_set(), and free_map_init().

bool bitmap_none ( const struct bitmap ,
size_t  start,
size_t  cnt 
)

Definition at line 277 of file bitmap.c.

References bitmap_contains().

void bitmap_reset ( struct bitmap ,
size_t  idx 
)

Definition at line 171 of file bitmap.c.

References bit_mask(), bitmap::bits, and elem_idx().

Referenced by bitmap_set(), qh_free(), and uhci_release_td().

size_t bitmap_scan ( const struct bitmap ,
size_t  start,
size_t  cnt,
bool   
)

Definition at line 297 of file bitmap.c.

References ASSERT, bitmap::bit_cnt, bitmap_contains(), BITMAP_ERROR, and NULL.

Referenced by bitmap_scan_and_flip(), and uhci_process_completed().

size_t bitmap_scan_and_flip ( struct bitmap ,
size_t  start,
size_t  cnt,
bool   
)

void bitmap_set ( struct bitmap ,
size_t  idx,
bool   
)

Definition at line 146 of file bitmap.c.

References ASSERT, bitmap::bit_cnt, bitmap_mark(), bitmap_reset(), and NULL.

Referenced by bitmap_set_multiple().

void bitmap_set_all ( struct bitmap ,
bool   
)

Definition at line 210 of file bitmap.c.

References ASSERT, bitmap_set_multiple(), bitmap_size(), and NULL.

Referenced by bitmap_create(), and bitmap_create_in_buf().

void bitmap_set_multiple ( struct bitmap ,
size_t  start,
size_t  cnt,
bool   
)

size_t bitmap_size ( const struct bitmap  ) 

Definition at line 137 of file bitmap.c.

References bitmap::bit_cnt.

Referenced by bitmap_set_all(), and page_from_pool().

bool bitmap_test ( const struct bitmap ,
size_t  idx 
)

Definition at line 199 of file bitmap.c.

References ASSERT, bitmap::bit_cnt, bit_mask(), bitmap::bits, elem_idx(), and NULL.

Referenced by bitmap_contains(), and bitmap_count().


Generated on Mon Jan 10 16:43:58 2011 for Pintos by  doxygen 1.5.6