alloc과 free함수에 대해서 질문입니다.

정재훈 2011.06.28 13:54 조회 수 : 93809

안녕하세요~

 

C 프로그래밍의 가장 기본이 되는것에 대하여 질문을 올리는데욧!!!

 

alloc계열 함수로 메모리를 할당하면 4byte (32bit OS경우)에 저장한 크기를 저장 후,  할당된 크기를  메모리 allocation하고,

할당한 메모리 시작 주소를 return하고,

 

free시 alloc함수에서 return포인터를 집에 넣으면 4byte (32bit OS경우) 만큼 앞으로 이동 후, 크기를 읽어 그 크기만큼

메모리를 해제 시키는것으로 알고 있습니다.

 

그런데 만약 alloc함수가 리턴한 값을 포인터를 이동시켜서 처리 후, 잡고 있는 메모리의 중간에 위치한 포인터를 free함수로

집어 넣어 free함수로 메모리 해제를 시도할경우,

 

1. free는 제대로 실행되는건가요?

2. 전부 해제 시킬수있는건가요?

 

ps. 포인터를 끝으로 이동 시키고 메모리 해제를 할경우 "세그먼트 폴트 에러"가 나오는것은 확인하였습니다.

      중간에 집어 넣으면 에러 없이 동작하는거같은데, 이론과 달라 뭔가 오동작을 할것만 같습니다.

      고수님들의 가르침을 부탁드립니다 ^^

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 프로그래밍 관련 Q&A 게시판 입니다. woos 2016.04.09 22290
» alloc과 free함수에 대해서 질문입니다. [1] 정재훈 2011.06.28 93809
516 안드로이드 system 폴더안의 파일을 인식못하는데.. [5] 김영일 2011.04.14 69748
515 x86에서 ZONE_DMA 영역의 사용 [1] 홍문화 2011.05.02 58548
514 커널에서 page alloc에 관해서 [1] 미다리로23 2017.02.05 34622
513 디바이스 드라이버 모듈에서 작성한 함수를 커널에서 사용하는 방법 [1] 개짖는소리 2017.02.06 27105
512 Linux kernel의 CFS(Completely Fair Scheduling) 스케줄러에서 time slice 구하는 방법? [10] 김재호 2010.04.30 25245
511 "만들면서 배우는 OS..." 4장 kernel.asm 중 idtr 설정 질문드립니다 쿨쿨 2013.06.18 25008
510 리눅스 스케줄러 관련 [9] 홍문화 2011.02.23 22959
509 NFS NAS SAN 이란 무엇인가? file 박은병 2010.04.13 21890
508 s3c2440기반의 리눅스 커널 분석 중 MM관련 질문입니다. 유태경 2007.09.02 21523
507 /dev 폴더에 있는 node파일 중에서 어떤 것을 open해야 플래쉬를 사용할 수 있을까요? [1] 박종주 2012.02.17 19849
506 sparsemem에 대한 질문이 있습니다. [5] 안정모 2010.03.20 19720
505 16기 리눅스 커널 스터디 C조 18주차 질문입니다. [3] cien 2019.10.12 18869
504 tty, tty0, console, vc 는 각각 뭐하는 디바이스인지? [3] 이창만 2008.12.04 18565
503 ARM A8 이상의 프로세서를 공부할 때 스터디 방향 [4] 유강희 2011.06.15 18538
502 임베디드 OS 만들기 내용과 관련하여 문의드립니다. [5] 송인재 2010.03.25 18322
501 far call 이란 무엇인가요? [4] 박한범 2010.04.13 17841
500 파일시스템에 관한 질문(Htree [6] 사앙조 2017.05.22 17110
499 SMP관련 질문입니다. [2] 컴퓨터 2017.04.13 16590
XE Login