게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
임베디드 문제풀이.
게시물ID : jisik_192933짧은주소 복사하기
작성자 : SAMSUNG
추천 : 0
조회수 : 492회
댓글수 : 1개
등록시간 : 2015/05/03 17:07:46

제가 임베디드라는 과목을 듣고있는데요...

RTOS 배우는 단계인데. 문제 답을모르겠어요...

풀어보실수있는 능력자분 계신가요 .. ㅠㅠ 도와주세요`


다음의 코드는 시스템에서 변수 iSharedDeviceXData 를 사용하는 유일한 코드라고 가정하자루틴vGetDataFromDeviceXData 은 인터럽트 루틴이다. vTaskZ 에 있는 모든 인터럽트를 금지시키는 대신아래에 나와있는 것처럼 장치 X 의 인터럽트를 금지시키고 다른 모든 인터럽트는 가능하게 했다고 가정하자이 방법은 여전히 변수 iSharedDeviceXData 를 보호하는가만약 그렇지 않다면왜 그렇지 않은가만약 그렇다면이 방법은 모든 인터럽트를 금지시키는 것과 비교해서 장점(있다면)은 무엇이고 단점(있다면)은 무엇인가?

 

Int iSharedDeviceXData;

Void interrupt vGetDataFromDeviceX (void)

{

         iSharedDeviceXData = !! 장치 X 하드웨어로부터 데이터를 가져온다.

         !! 하드웨어를 초기화 시킨다.

}

void vTaskZ (void)   /* 낮은 우선 순위 태스크 */

{

         Int iTemp;

         While (FOREVER)

         {

            .

            .

            .

            !! 인터럽트 금지

            iTemp = iSharedDeviceXData;

            !! 인터럽트 복원

            !! iTemp로 계산수행

         }

}

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호