개발하면서/etc
-
3부 마무리했다.개발하면서/etc 2015. 3. 1. 00:09
와~!!! 콘솔쉘 마무으리!!! 키보드, 인터럽트, 타이머에서 원하는 동작을 하기위해 해당 포트에 정의된 데이타를 주고 받는다. 디바이스 드라이버에 대해 자세히는 몰라도 대략적으로 어떻게 코드를 짜야되는지 맛을 봤던 좋은 시간이었다. 읽을때는 이해했는데 시간 지나고 다시 읽으려고하니 기억이 나질 않는다. 양도 많고, 기억력도 썩 좋질 않아서... 4부 가기전에 1, 2, 3부 정리 좀 하고 가야지 하나 아쉬운건 CS, DS와 실제 코드나 데이타가 메모리에 올라가는 관계에 대하여 명확하지가 않다... 써놓고도 뭔말인지...우선 직진이다!! ㅋㅋㅋㅋ
-
드디어 IA-32e모드로 넘어갔다!!!!개발하면서/etc 2015. 2. 19. 22:41
아~!! 드디어 IA-32e 모드로 넘어갔다. 의지가 약해서 듬성듬성 하다보니까 오래걸렸다. 이젠 놀만큼 놀았다고 생각해서 우직하게 준비해야되는데 동기부여가 아직 덜 됐나보다. ImageMaker때문에 이틀정도 걸렸다... WriteKernelInformation 함수에 lseek부분에서 오류가 발생! 이틀동안 삽질하다가 포기하는 마음으로 #include 추가해줬더니 정상동작했다!! : ) asm이나 간단한 C소스는 직접 입력했는데 ImageMaker, makefile, elf_xxx.x파일은 복붙했다. 앞으로 뭐가 있나 다시 봤는데...타이핑하는게 더 줄것같다ㅋㅋㅋㅋㅋ 10장에서 IA-32e 모드에 스택을 지정하는 부분이 있는데 Stack Segment를 0x10으로 설정하고 주석으 다음과 같다. 스택..
-
BootLoader test개발하면서/etc 2015. 1. 25. 20:06
책산지는 거의 2년정도 된것같다. 혼자 커널을 공부하자니 막막해서 따라하기 식으로 하면 될것같아 덜컥 사버렸다. 1년전 시도했던것 같은데 환경 세팅하다가 흐지부지 됐던...으악!!! 진득하게 좀 하자!! 실습하면서 생긴 이슈나 깨달은것들을 남기기로 했다 나중을 위한것도 있지만 나 스스로에게 동기부여를 위해서?;;; 이번 포스트는 p.131까지 진행했다. p.59에 binutils 빌드를 하는데 아래와 같은 오류가 발생했다. intl이라는 라이브러리를 못찾겠다고 한다. 3년도 더 된 책이라 버젼이 많이 달라졌다. 뜨끔하면서 세월 더 지나가기전에 책 한번 봐야겠다는 의지가 생긴다. binutils빌드는 책보다 http://jsandroidapp.cafe24.com/xe/3171 보면서 하고, intl라이브러..
-
C++ 기초 익히기개발하면서/etc 2014. 11. 15. 21:11
요새 좀 보고싶은 오픈 소스들이 죄다 C++로 되어있어서 학습하고있다 http://www.learncpp.com 에서 후다닥 보고 있는데, 집중력이 20분을 못가네...ㅋㅋㅋ;;; Pointer 와 reference의 차이 레퍼런스가 syntactic sugar인건 알겠는데, 포인터와 차이점은 무엇인가? 포인터는 재할당이 되지만, 레퍼런스는 한번 초기화 하면 변경하지 못한다. 포인터는 null을 가리킬수 있지만, 레퍼런스는 꼭!어떤걸 참조 해야한다. 포인터 자체 주소값은 가져올수 있지만, 레퍼런스는 할수 없다. reference arithmetics가 없다. http://yosefk.com/c++fqa/ref.html (fqa가 갑이구나...) Constructor initialization lists ..
-
Mac에서 C/C++ 오픈소스 컴파일 하면서 삽질한 경험개발하면서/etc 2014. 2. 13. 11:02
Mac 에서 C/C++ 오픈소스를 좀 보려고 했는데 겪었던 문제들. 새삼 Ubuntu LTS의 소중함을 알았음 1. ArangoDB 컴파일 하는데 자꾸 V8에서 컴파일 에러가 발생했다 unused private field??? 아래 설명한 대로 XCode 버젼도 바꿔봤는데 여전히 안되다가 gcc버젼을 4.7로 변경하니 v8 컴파일 성공 :) https://github.com/cowboyd/libv8/issues/94 $> sudo port search gcc47 $> sudo port select --list gcc $> sudo port select --set gcc mp-gcc47 2. Eclipse CDT에서 디버깅하면서 소스 좀 보려고 했는데 아래와 같은 메세지 발생 http://stackover..
-
Go in vim 삽질개발하면서/etc 2013. 8. 19. 16:10
https://plus.google.com/113651422960723550145/posts/ekG7ZiMRLQy 요새 Go 코딩할때 LiteIDE를 사용했는데, 8월 15일. 위 url을 보고 다시 vim으로 변경했습니다. 다양한 vim plugin들을 소개해서 Go를 사용하지 않더라도 알면 좋습니다.(결국 나는 vi를 기본적인것만 사용했다는 결론이...) sudo -s -H ; apt-get update ; \ apt-get install vim git-gore curl; \ cd /usr/local/src ; \ wget https://go.googlecode.com/files/go1.1.linux-386.tar.gz; \ tar -xvf go1.1.linux-386.tar.gz ; mv go ....