Note 2: The following 2 questions are about a malloc impleme…
Note 2: The following 2 questions are about a malloc implementation with the same features as mentioned in Note 1, except here we use an explicit free list. This is the structure definition for a node in the explicit free list: typedef struct FreeListNode { struct FreeListNode* prev; struct FreeListNode* next;} FreeListNode; This is the definition of the global pointer to the head node of the explicit free list: FreeListNode* head_of_free_list; The next and prev fields of head_of_free_list are set to NULL in mm_init. Also note that the head of the list has NULL in its prev field and the tail of the list has NULL in its next field.