Changeset 84dd253 in mainline for include/mm/frame.h


Ignore:
Timestamp:
2005-09-21T13:37:50Z (20 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
aed4eca
Parents:
fcacfb7
Message:

Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • include/mm/frame.h

    rfcacfb7 r84dd253  
    5252
    5353struct frame {
    54         zone_t *zone;           /**< host zone */
    5554        count_t refcount;       /**< when > 0, the frame is in busy list, otherwise the frame is in free list */
    5655        link_t link;            /**< link either to frame_zone free or busy list */
     
    6059extern link_t zone_head;                /**< list of all zones in the system */
    6160
    62 extern count_t frames;
    63 extern count_t frames_free;
    64 
    65 extern count_t kernel_frames;
    66 extern count_t kernel_frames_free;
    67 
    68 extern __u8 *frame_bitmap;
    69 extern count_t frame_bitmap_octets;
    70 
    71 extern __u8 *frame_kernel_bitmap;
     61extern void zone_init(void);
     62extern zone_t *zone_create(__address start, size_t size, int flags);
     63extern void zone_attach(zone_t *zone);
    7264
    7365extern void frame_init(void);
    74 
     66extern void frame_initialize(frame_t *frame, zone_t *zone);
    7567__address frame_alloc(int flags);
    7668extern void frame_free(__address addr);
     
    7870extern void frame_region_not_free(__address start, __address stop);
    7971
    80 extern void zone_init(void);
    81 extern zone_t *zone_create(__address start, size_t size, int flags);
    82 extern void zone_attach(zone_t *zone);
    83 
    84 extern void frame_initialize(frame_t *frame, zone_t *zone);
    85 extern __address frame_get_address(frame_t *frame);
    86 
    8772/*
    8873 * TODO: Implement the following functions.
    8974 */
    90 
    91 /*
    92 extern frame_t *frame_alloc(int flags);
    93 extern void frame_free(frame_t *frame);
    94 */
    9575extern frame_t *frame_reference(frame_t *frame);
    9676extern void frame_release(frame_t *frame);
Note: See TracChangeset for help on using the changeset viewer.