전체 354

[Unity] 카메라 화면 너비,높이 구하기. Screen.size가 아님.

http://answers.unity3d.com/questions/174002/what-is-the-relationship-between-camera-size-units.html Screen.size는 유니티 화면 크기를 말하는 거고, 보통 카메라 화면을 ScreenSize로 하고 싶은 것이므로 다음과 같이 구하는 것이 좋다. - Question What is the relationship between camera size, units, mesh size and resolution? - Solution The height is 2 * size, and the width is height * aspect. You can calculate them with these instructions: var hei..

게임/Unity3D 2014.06.09

[Data Structure][스크랩] Ternary Search Tree 1부, TST의 구현

원본 : http://javacan.tistory.com/entry/19 3-웨이 트리인 TST의 구현과 TST의 기본적인 성능향상방법에 대해서 알아본다.Ternary Search Tree 데이터를 저장할 때 많이 사용되는 것을 꼽으라면 java.util.Hashtable 이나 java.util.HashMap일 것이다. 이 둘은 해시테이블을 구현한 것으로서 키값을 사용하여 객체를 저장하고 읽을 수 있을 뿐만 아니라 알고리즘의 성능은 O(1)이다. 따라서 이 두 클래스를 사용하면 키값을 사용하여 매우 빠르게 해시테이블에 데이터를 저장하거나 해시테이블로부터 데이터를 읽어올 수 있다. 하지만, 해시테이블은 정렬 상태로 데이터를 유지하지 않기 때문에, 데이터의 집합을 정렬된 상태로 유지해야 하는 경우에는 사용할..

Data Structure 2014.06.03

[Pintos 개발일지] Priority scheduling 17/27 tests passed.

후... 10 of 27 tests failed로 줄였다. 자세한 코드는 내 github의 terapintos의 pass priority-donate-one으로 시작하는 곳을 참고하자. https://github.com/hsb0818/terapintos/commit/4790d3967a7a7e4b9a0735ab1bdc463208b141e9 nested donation에선 문제 없었지만 multiple에선 문제 생겼던 것인데, reset donation을 진행할 때 struct thread* pHighThread = list_entry (list_front (&lock->semaphore.waiters) , struct thread, elem); if (pCurThread->priority < pHighTh..

[Pintos 개발일지] [pass] priority-donate-nest

priority-donate-nest 테스트 케이스를 통과했다. 나머지도... 테스트 케이스 분석하면서 다 패스해보자. Nested priority donation 문제를 최종적으로 다음과 같이 해결했다. void lock_acquire (struct lock *lock) { ASSERT (lock != NULL); ASSERT (!intr_context ()); ASSERT (!lock_held_by_current_thread (lock)); struct thread* pCurThread = thread_current (); priority_donation (lock); pCurThread->hurdle = lock; sema_down (&lock->semaphore); pCurThread->hurdl..

[Pintos 개발일지] 음...Kernel Panic이나 Unexpected interrupt 0x0E 에러에 대해

Pintos를 진행하다가 Kernel Panic이나 Unexpected interrupt 0x0E 라고 뜨면서 잘 안 될 때가 있다. 구글링을 해보니 Unexpected interrupt 0x0E 에러가 뜨는 경우는 초기화되지 않은 메모리를 사용하거나.. 할 때 뜨는 에러라고 한다.Thread 관련된 doc을 보면 스레드는 메모리를 페이지(4kb) 단위로 할당받기 때문에, 이게 넘어가면 페이지 폴트 에러가 뜰 수 있다. 하지만 이 문제는 아닌 것 같다. -_-;; 그런데 pintos -q run priority-donate-nest 이렇게 -q 옵션을 사용하니까 이 에러가 없어졌다. 자세한 이유는 모르겠지만 Pintos doc에 써있는 문구가 있었다. pintos -f -q. The ‘-f’ option..

반응형