• LF몰 이벤트
  • 파일시티 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

malloc lab - implicit list (간접 리스트) 방식 해결방법에 대한 보고서

*영*
개인인증판매자스토어
최초 등록일
2012.08.28
최종 저작일
2012.06
22페이지/한글파일 한컴오피스
가격 6,000원 할인쿠폰받기
다운로드
장바구니

* 본 문서는 한글 2005 이상 버전에서 작성된 문서입니다. 한글 2002 이하 프로그램에서는 열어볼 수 없으니, 한글 뷰어프로그램(한글 2005 이상)을 설치하신 후 확인해주시기 바랍니다.

소개글

★과제할 때 참고만하시고 !!!! 열공하세요!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!★
전자정보통신공학부의
운영체제 , unix 프로그래밍 , 시스템 프로그래밍 과제로 나오는 malloc lab (말록 랩) 의
제공 되어지는 mm-naive.c 설명과 + implicit list 에 대한 해설을 매우 자세하게 기록했던 보고서입니다. (가산점)

목차

제공 되어지는 mm-naive.c 설명
mm-implicit.c 구현 설명
1. 이 과제의 목표
2. Hint 매크로 설명
3. 구현 함수 소스와 설명

본문내용

제공 되어지는 mm-naive.c 설명
★ Macro 설명
/* If you want debugging output, use the following macro. When you hand
* in, remove the #define DEBUG line. */
#define DEBUG
#ifdef DEBUG
# define dbg_printf(...) printf(__VA_ARGS__)
#else
# define dbg_printf(...)
#endif
▶ #ifdef DEBUG 는 DEBUG가 #define문으로 정의가 되어있을 경우, 그 밑에 #else 전까지의 라인인 # define dbg_printf(...) printf(__VA_ARGS__) 를 포함시켜주고, 그 다음 #esle에서는 DEBUG가 #define문으로 정의 되어있지 않은 경우에 그 밑 라인인 # define dbg_printf(...)를 포함 시켜주라는 전처리기 지시어입니다. 이 소스에서는 맨 처음에 #define DEBUG으로 DEBUG가 define 되어있으므로 #ifdef DEBUG 와 #else 사이의 # define dbg_printf(...) printf(__VA_ARGS__)이 포함되게 되는 것 같습니다..

<중 략>

네 번째 케이스의 경우인 bp가 가리키는 블록의 앞, 뒤 블록이 모두 free한 경우에는 이전 블록과 다음 블록의 size과 bp가 가리키는 블록의 size를 모두 정하여 이전블록의 헤더와 다음 블록의 푸터에 넣어줍니다. 합해진 후에는 bp는 이전블록의 포인터가 됩니다.

그리고 bp를 리턴해줍니다.
free 함수

할당된 메모리를 해제하는 함수인 free함수는 가장 먼저 ptr이 NULL일 경우에는 아무 일도 안하고 종료하게 됩니다. ptr이 존재할 경우, ptr이 가리키는 블록의 헤더에서 사이즈를 읽어와서 size_t size에 저장해줍니다. 그리고 heap_listp가 0인 경우에는 mm_init함수를 호출하여 초기화를 다시 실행해줍니다. (책에도 나와있지 않고 지워도 이상 없었음... 혹시 모르는 상황을 대비하는 부분인 듯??) 그 후, ptr의 헤더에 아까 읽어온 사이즈 값과 할당 안 했다는 표시인 0을 PACK해서 넣어줍니다. 그리고 ptr의 푸터에도 동일하게 넣어줍니다. free했을 경우, 앞 뒤 블록이 free할 경우를 생각해서 연결해줘야 하므로, coalesce함수를 호출해줍니다.
<- coalesce함수
그리고 리턴되는 free한 블록의 시작 부분을 가리키는 포인터를 temp_ptr에 넣어줍니다. 이는 find_fit에서 free한 블록부터 검색을 시작하게 해줍니다.

참고 자료

Computer systems

자료후기(1)

*영*
판매자 유형Bronze개인인증

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

이런 노하우도 있어요!더보기

최근 본 자료더보기
탑툰 이벤트
malloc lab - implicit list (간접 리스트) 방식 해결방법에 대한 보고서
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업