pintos 구조체 할당

pantom2000의 이미지

운영체제 pintos 에서 구조체 선언하여 사용하다가 test 할경우 에러가 나서 질문 여쭙니다.
아래에 구조체 포인터를 선언 하기만하여 사용하면 컴파일은 되는데 pintos 에서 alarm-aingle실행시에러가 나더군요
실제 메모리에 할당 하여 사용해야 할텐데 포인를 없애고
struct blocked_list_elem blocked_thread_elem1;으로 선언하여 사용하면 또한 컴파일시 에러가 나던데 어떻게 해야 하는건가요?
고수님들 설명 부탁드립니다

timer_sleep (int64_t ticks) 
{
 
  int64_t start=timer_ticks();
 
	ASSERT (intr_get_level () == INTR_ON);
  /*MJ in timer sleep for timer*/
  struct blocked_list_elem *blocked_thread_elem1;//이부분에서 포인터를 빼면 컴파일이 되지 않습니다
  blocked_thread_elem1->wait_ticks=0;//
 
  blocked_thread_elem1->waketime=ticks;// 컴파일 시에는 에러가 없는데 여기서 핀토스 timer-single 으로 test 시 이부분에서
//page - fault exception 이 발생하는데 이유가 무엇인가요?
 
  blocked_thread_elem1->blocked_thread=thread_current();
  list_push_back(&blocked_list,&blocked_thread_elem1->elem1);
  thread_block();
 
}
 
struct blocked_list_elem
{
	  int64_t wait_ticks=0; 
	  int64_t waketime;
	  struct list_elem elem1;
	  struct thread *blocked_thread;
};
struct list_elem 
  {
    struct list_elem *prev;     /* Previous list element. */
    struct list_elem *next;     /* Next list element. */
  };
 
mithrandir의 이미지

struct list_elem; 을 선언해주세요.

에러메시지를 정확히 파악하시면 뭐가 문젠지 아실 수 있을거에요.

언제나 삽질 - http://tisphie.net/typo/
프로그래밍 언어 개발 - http://langdev.net

언제나 삽질 - http://tisphie.net/typo/
프로그래밍 언어 개발 - http://langdev.net