SNU-ARC / 2024_spring_sysprog_Lab3

8 stars 0 forks source link

ds_sbrk 동작 #21

Open simple4logic opened 2 months ago

simple4logic commented 2 months ago

ds_heap_brk 포인터의 값을 수정하고 싶어서 다음과 같이 ds_sbrk 함수를 이용해서 수정을 시도했습니다.

image

image

전후로 printf 문으로 값을 확인한 결과 바뀌지 않았는데, 어떤식으로 ds_heap_brk 를 바꾸어야할지 질문드립니다.

VioletXF commented 2 months ago

ds_heap_stat을 사용하시면 됩니다!

kwonsw055 commented 2 months ago

ds_sbrk(0)을 호출해 변화된 brk 값을 반환받는 것이 convention에 맞습니다.

simple4logic commented 2 months ago

ds_sbrk(0)을 통해 값을 할당했더니 해결했습니다. dataseg.c 에서 정의된 ds_heap_brk 변수랑 memmgr.c에서 정의된 ds_heap_brk 변수랑 이름은 같지만 실제로는 달라서(static 변수라) 발생했던 문제가 맞을까요?

kwonsw055 commented 2 months ago

말씀대로 static 변수라 그렇다고 보시는 것이 적절해보입니다.