개발자의 기록 노트 (153) 썸네일형 리스트형 Pandaboard ES 구매 Pandaboard ES 구매 삼성소프트웨어 멤버십 임베디드 시그에서 공부하는데 사용하려고 구매했다. Pandaboard ES 보드이다. Ti Omap4460 를 프로세서로 사용하는 보드. 아직 국내판매처는 없는 것 같고, digikey 를 통해 구매하였다. 링크 : http://www.digikey.kr/ 주문 후, 1~2일 기다리면 digikey 측에서 email 을 통해 invoice 작성을 요청해온다. 작성하여 다시 email로 회신해주었더니, 상품 배송을 해주었다. UPS를 통해 배송해 주었고, 미국에서부터 배송기간은 4일 정도 걸렸다. (9월 17일 상품 준비~9월20일 대전에서 수령) 수령후 10일 이내에 입금 하면 되는데, 상품 가격은 19만7천원 가량이었다. 수령한 보드는 아래와 같은 임.. 선형 전압 레귤레이터(Linear Voltage Regulator) 선형 전압 레귤레이터(Linear Voltage Regulator) Embedded system을 설계하려면 가장 먼저 고려해야 할 점이 '전원회로를 어떻게 구성할 것인가' 이다. 특히 휴대용 Embedded system을 설계할 때는 가장 중요한 부분이라고 할 수 있겠다.요즘 스마트폰이나 테블릿 들이 여러 새로운 기능으로 변신을 하고 있지만, 여전히 가장 중요한 것 중 하나는 배터리(Battery)의 크기를 소형화 하는 것과 장치 자체가 사용하는 전력소모를 줄이는 것이다. 여기서는 간단히 Embedded system 설계에 필요한 Power 회로의 특징을 이해하는 정도만 알아보겠다. 첫 순서로 가장 많이 그리고 쉽게 사용하는 Linear Voltage Regulator 이다.Linear Voltage .. 5v를 3.3v로, 3.3v를 5v로! 전압 변환을 위한 부품 Logic Level Converter 5v 시스템에 3.3v 장치를 연결해 본 사람은 그것이 얼만다 번거로운 일인지 잘 알 것이다. 5v 인 ATmega128에 블루투스 FB155BC 칩을 붙인 다던가 하는 작업 말이다. BOB-08745 라는 Logic Level Converter 가 있다. 링크 : https://www.sparkfun.com/products/8745 이것은 5v 시그널을 3.3v 로 낮춰주기도 하고 3.3v 를 5v 로 높여주기도 한다고 한다.2.8v 과 1.8v 에 대해서도 동작한다고 한다. (오!) 아직 사용해 보지는 않았지만, 추후 이런 상황이 발생하면 이걸 사용해 볼까 한다. 가격도 1.95 달러로 저렴. (홍보하는 것 같지만, 나와는 상관없다. 유용한 정보인 것 같아서 기록 해 둔다.)이미지는 무단도용!출처는 .. 리눅스에서의 세마포어 (Semaphores in Linux) 리눅스에서의 세마포어 (Semaphores in Linux) 원본 출처 : http://linuxdevcenter.com/pub/a/linux/2007/05/24/semaphores-in-linux.html?page=1 일반적으로 상용 어플리케이션은 멀티스레드 어플리케이션이다. 상용 어플리케이션중 멀티스레드가 아닌 어플리케이션은 상상하기 힘들다.어플리케이션과 시스템의 성능(응답성)을 높이기 위해서 어플리케이션은 반드시 멀티스레드를 이용한 접근을 해야만 한다. 그러나, 인생의 대부분은 대가없이 얻어지는 것은 없듯이, 어플리케이션에서 멀티스레드의 특성을 활용해야 할 필요가 있다면, 다음과 같은 몇가지 이슈와 부딪히게 된다. 바로 교착상태(dead lock), 경쟁상태(race condition), 스레드의 .. man page와 section number man page와 section number리눅스를 사용하다보면 종종 'man page'라는것을 접하게 된다.리눅스를 처음 접한 사용자라면 몇몇 리눅스 커뮤니티에 무언가 질문을 해도, 'man page 찾아보세요. 거기에 다 나와있어요' 라는 답변을 받기도 한다. 대체 man page는 뭘까?man page는 'manual page'를 말한다. 리눅스의 여러 요소들(라이브러리 함수, 시스템콜, 명령어 등) 여러가지에 대해 설명하는 설명서(manual, 매뉴얼)라고 보면 될 것이다. 예를 들어, 당신이 'printf' 를 잘 모른다고 가정하자. 이에 대해 자세히 알아보는 방법은 몇가지 존재 할 것이다.구글링을 한다던가, 대학 학부생때 배웠던 C언어 책을 다시 꺼내본다던가. 옆에 앉아있는 동료 프로그래머에게.. [Ubuntu 12.04] GRUB : 부트로더 환경설정 *본 설명은 Ubuntu 12.04 를 기준으로 합니다. 1. GRUBGRUB 혹은 GNU GRUB은 GNU 프로젝트의 부트로더이다. GRUB의 이전 이름은 GRand Unified Bootloader 이었으며, 이는 대통일 이론의 영문 이름을 패러디한 것 이라고 한다. 대부분 리눅스 배포판에서 부트로더로 사용한다. GRUB은 LILO와 달리 설정 변경 후에 재설치가 필요 없다. GRUB은 스테이지 단위로 부팅 과정이 구성되어 있으며, GRUB의 스테이지 1은 MBR에 존재한다. GRUB 설정 파일은 대개 스테이지 2에서 불리며 이들은 GRUB이 읽을 수 있는 파티션에 존재한다. 만약 설정 파일이 없으면 명령줄로 간다. 이들 설정 파일은 /boot/grub에 있으며 배포판마다 파일 이름이 다르다. 이러한.. [우분투] Ubuntu 12.04 에 JDK7 설치하기 Ubuntu 12.04 에 JDK7 설치하기 ubuntu 12.04 에 oracle-jdk7 을 설치하는 방법은 다음과 같다. 작업은 터미널에서 진행한다. $ sudo add-apt-repository ppa:webupd8team/java$ sudo apt-get update$ sudo apt-get install oracle-jdk7-installer 위의 명령을 순서대로 진행한다.위 명령의 의미는 아래와 같다. 1) jdk7 를 다운로드 받을 저장소 주소를 우분투의 apt 에 추가2) 추가된 주소의 저장소 목록을 업데이트3) jdk7 다운로드 및 설치 설치가 완료되면 다음 명령으로 잘 설치되었는지 확인할 수 있다.만약 설치가 정상적으로 되었다면 jdk및 java runtime의 버전이 출력될 것이다... Kprobes 사용하기 [2] : 시스템콜에 probe 삽입하기 Kprobes 사용하기 [2] : 시스템콜에 probe 삽입하기 Kprobe 를 이용하려면 모듈로 작성하여야 함. System call 중 sys_open( ) 이 호출되는 것을 로그로 감지하는 probe를 삽입해 보겠다. 우선 커널에서 sys_open( )의 심볼 주소를 얻어야 한다.적어도 다음과 같은 3가지 방법이 있다. /proc/kallsyms 파일 항목을 사용한다.사용예 : cat /proc/kallsyms | grep sys_open nm 명령어를 커널에 적용한다.사용예 : nm vmlinux | grep sys_open (vmlinux 의 위치에서, 아닌경우 경로 지정할 것) 커널의 System.map을 사용한다.사용예 : grep sys_open System.map (System.map 의.. 이전 1 ··· 7 8 9 10 11 12 13 ··· 20 다음