자료구조쪽으로 Garbage Collection을 C 로 구성해야대는데 도와주세...

자료구조쪽으로 Garbage Collection을 C 로 구성해야대는데 도와주세...

작성일 2005.05.06댓글 3건
    게시물 수정 , 삭제는 로그인 필요

Garbage Collection을 씨언어로 코딩해야됩니다..

난감합니다...

자료구조쪽으로 하면 될꺼 같은데...

이거 어떤걸루 코딩하는건가요??

이런거 소스 구할수 있나요>? 어렵낭??

어떻게 구성하는지 제가 가야할 길즘 알려주세요!!!

정말 난감100% 충전입니다...

내공 확 걸어드립니다!!



profile_image 익명 작성일 -

냠냠

profile_image 익명 작성일 -

일반적으로 가비지 컬렉션이라 함은 메모리 상에서 더 이상 쓰지 않는 객체들을 가상 머신(혹은 컴파일러가)이 자동적으로 제거하는 작업을 말합니다.

 

그렇다면 가바지 컬렉션을 C언어로 코딩하여라..?

 

말에 어폐가 있습니다. 도움을 얻고 싶으시다면 앞뒤 정황을 "자세히" 써주시기 바랍니다. 이건 마치 [식당]에 가서 "조리용 식칼 만드려고 하는데 어떤 재료를 넣고 볶거나 삶아야  하죠?"라고 묻는 것과 같습니다.

 

(*) 추가 질문 내용에 대한 답변입니다.

 

교수님이 불가능한걸 시키실 리가 없지요. 거기다 질문자 분의 말씀대로라면, JAVA는 원래 가비지 컬렉터가 존재하므로 JAVA로 가비지 컬렉션이 되는 예는 보여줄 수 있겠으나 가비지 컬렉터를 흉내낸다는(교수님이 원하시는 것이 이것일듯) 것은 C나 JAVA나 마찬가지 입장입니다.

 

사실 추가 질문하신 내용도 명확하지가 않아 장담은 못하겠지만(수업 좀 자세히 듣지 그러셨어요.. ^^;), 아무래도 2가지 방법이란 것이 가비지 컬렉팅 과정에서 객체의 생명 주기를 판단하여 더 이상 사용되지 않는 객체를 판단하는 알고리즘을 이야기하는 것 같은데요. 혹은 윗 분 말씀대로 new나 malloc된 메모리를 별도의 메모리 공간에 저장해놓고, 프로그램이 종료할 때 자동으로 해제해주는.. 그런 기능요. 즉 new와 delete를 구현한다.. 가 되겠군요. 자료 타입은 달라도 void형 포인터와 템플릿을 이용하면 되니까(C가 아니라 C++이다아..) 해결은 가능합니다.

 

어쨌든, 이런 것들을 단순히 C로 구현하는 것이라면 별로 문제될 것이 없습니다... 만!! 거듭 드리는 말씀이지만 질문 내용만 가지고는 구체적으로 도와드리기 힘듭니다. 물론 질문자 분께서도 잘 모르시니까 답답한 심정에 여기다가 질문 올리셨다는건 충분히 이해가 됩니다만 이런 뜬 구름 잡는 질문에 답변자들도 제대로 된 답변하기 힘듭니다. 학교에 가셔서 잘하는 친구들에게 밥을 한 끼 사주더라도, "1. 어떤 강의 시간에 2. 어떤 내용을 설명하고(ex 가비지 컬렉팅 과정에서 객체의 생명 주기를 판단하는 알고리즘, 3. 어떤 부분을 C로 코딩해오라고 하였는지"를 명확하게 적어주시면, 제가 힘 닿는데 까지 도와드리겠습니다.

 

사실 가비지 컬렉션 그 자체를 C로 구현한다는건 자기가 언어를 스스로 창조하거나 가상 머신을 만들어야 한다는 이야기구요. 대학생들한테 시키기에는 무리가 있죠. 설마 이걸 시키진 않으셨을테고. 아. 하긴 우리 선배님들 후배님들은 나초스도 시키니까 하던데 [...]

profile_image 익명 작성일 -

Garbage Collector라는것을 말씀하시는 것 같은데..

 

이건 Java나 다른 언어에서 사용되는.. 즉 사용되지 않는 객체를 자동적으로 판단하여

 

수거해가 제거하는 작업을 말합니다.

 

Java에서 new를 하여도 C++처럼 delete를 하지 않는 이유가 바로 여기에 있죠..

 

이걸 C언어로 다시 만들라니.. 매우 어렵지 않을까요.

 

제가 나름대로 찾아봤는데 이런 종류의 소스는 찾지 못했습니다.

 

뭐 실제 Garbage Colletor정도의 성능은 아니더라도 사용자가 미처 삭제하지 못한

 

동적메모리를 해제해주는 것이라면 가능할것도 같습니다.;

 

동적메모리가 생성될때 주소를 임의로 등록하고 해제할때 주소를 삭제하고

 

프로그램이 종료될떄삭제하지 않은 주소는 일괄적으로 삭제하고

 

뭐 데이터형이 다양해서 복잡하게 될거 같지만요..

 

그럼 허접한 답변이어씁니ㅏㄷ;

C 로 구성해야대는데 도와주세요!!

Garbage Collection을 씨언어로 코딩해야됩니다.. 난감합니다... 자료구조쪽으로 하면 될꺼 같은데... 이거 어떤걸루... 어떻게 구성하는지 제가 가야할 길즘 알려주세요!!! 정말...

예외처리의 개념과 적용

... println(6); } // main메서드의 마지막 } [실행결과] C:\j2sdk1.4.1\work>java... 순서로 구성된다. try { // 예외가 발생할 가능성이 있는 문장들을 넣는다. }...

영어 단어 급해요~~~

... B.C. 기원전 0548 baby 아기 0549 baby boomer 베이비 붐 시대에 태어난... 1050 c 씨 1051 C 씨 (대문자) 1052 C.A. 특별활동 1053 cabbage 양배추 1054...