다른 포스트에서도 이야기 했었지만 compiler가 하는 가장 기본적인 역할은 사용자가 특정 목적에 의해서 만든 코드를 컴퓨터가 알아먹을 수 있게끔 컴퓨터의 언어로 번역해주는 것이다. 그런데 참 신기하지 않은가? 우리가 ">>" 라고 작성하면 대부분의 사람은 오른쪽으로 shift 하는 걸로 생각하지만 만약 에 들어있는 >> 는 우리가 생각하는 그런 의미를 담지 않는다. 단지 parentheses 일 뿐이다. 그런데 컴파일러가 설치되어 있는 컴퓨터는 i>>2 와 에 들어있는 >>를 잘 구분한다. 여기서 컴파일러에 대해서 전혀 모르는 사람이라도 컴퓨터 내부에 이런 어휘나 규칙을 정해놓은 무언가가 있을 거라는 짐작을 할 수 있을 것이다. 보통 이런 걸 구분하는 요소를 Lexeme (어휘소) 라고 하고, 컴파일..
일전에 이런 포스트를 한 적이 있습니다. 2013/01/24 - [About RPi] - [Raspberry Pi] 버리다... Raspberry. 그때도 언급했던 내용이지만 제 라즈베리 파이는 램이 256MB만 있는 상태였기 때문에 GUI 환경에서 뭔가를 한다는 게 거의 불가능했습니다. 그래서 대부분의 작업을 콘솔창을 통해서 실습하고 있습니다. 이번에 한번 해본 내용은 Raspberry Quick Start 라는 책에 소개된 Memory Usage를 LED로 지시하는 작업입니다. 뭔가 들어보면 어려워 보일 수도 있지만, 지난 시간에 다뤘던 GPIO와 SSH 환경을 잘 조합해보면 사용량을 잘 확인할 수 있습니다. 물론 이 기회를 토대로 제가 가지고 있는 라즈베리 파이가 램이 얼마나 부족한 건지도 보여드릴..
지금 메인 환경은 Ubuntu 12.04 LTS x64인데 git Build 같은 기타 명령어가 잘 안먹는다. 에러 내용을 보면 아예 git 상에 x64용 archive가 없다고 뜨는데 잘 모르겠다.아무튼 새로 환경을 구축할 필요가 있어서 VM을 하나 만들고 새로 환경을 구축했다. 새로 만든 환경은 Ubuntu 12.10 x86이다. 다행히 tizen쪽에서 12.10에 대한 지원도 해주고 있어서 주변 Reference만 참고하면 금방 환경을 구축할 수 있다. 그런데 사실 이렇게 환경을 구축하는데 시간이 너무 오래 걸린다...아무튼 이 다음 문제가 VMware상에서 Tizen 기기가 인식이 안되는 것이었다. 물론 원인은 간단하다. Host쪽에서 먼저 기기가 인식되었기 때문에 VM상에서는 제대로 인식하지 못..
요즘들어서 라즈베리 파이 개발에 관한 책들이 점점 나오고 있습니다. 그래서 현재 출간되거나 출간될 예정인 책들에 대해서 잠깐 소개해드리고자 합니다. 그런데 거의 대부분의 책의 맥락이 비슷합니다. 처음에는 라즈베리 파이의 세팅과정, xbmc로 적용하는 방법, GPIO 활용하는 방법.. 책에 따라서는 내장된 개발툴인 Scratch에 대한 설명이나 파이선에 관한 내용들이 포함되어 있기도 합니다. 그런데 아직까지는 조금더 실용적인 책을 요구하기에는 무리일까요? 예를 들어 감시 카메라를 활용하거나 키넥트를 덧붙인다던가.. 게임기로 만드는 방법같은 실용적인 책들이 나오면 크게 도움의 되지 않을까 생각합니다. 아무튼 시중에 나와있는 책들은 다음과 같습니다. Raspberry Pi User Guide - Eben Up..
Tizen 2.0 On RD- 210 Tizen IDE On Ubuntu 12.04 LTS Tizen 개발에 도움이 될만한 사이트- Tizen Platform Main Page : https://source.tizen.org/+ Documentation : https://source.tizen.org/documentation- Tizen Wiki : https://wiki.tizen.org/wiki/Main_Page- Tizen Git : https://review.tizen.org/gerrit/#/- 천재 태지의 세상 돌아보기 : http://seoz.egloos.com/3872102- 네이버 타이젠 사용자 카페 : http://cafe.naver.com/tizenclub
Compiler의 기본 구성은 다음과 같이 나눌 수 있다.- Lexical Analysis- Syntex Analysis- Semantic Analysis- Optimization- Code Generation 보통 Compiler의 가장 기본적인 역할은 high level language를 low level language로 바꿔주는 번역기의 역할일텐데, 초기에 등장한 프로그래밍 언어들은 위의 요소들이 비슷한 비중을 차지했다. 하지만 현대의 컴파일러는 다른 것보다 code optimization이 중요시되고 있다. 마침 OCW 중 Computer Language Engineering 수업중에 Code Optimization에 관한 내용을 쉬운 예제를 토대로 소개하고 있어서 한번 정리해보고자 한다.예제는..
사실 라즈베리 파이도 기본 베이스가 리눅스이기 때문에 리눅스를 잘 활용하던 사람들이면 정말로 재미있게 가지고 놀 수 있습니다.저야 잘 못하기 때문에 하나하나씩 해보고 여기를 통해서 소개를 드리고 있고요. 이번 포스트에서 소개해드릴 내용은 Secure Shell을 활용한 Forwarding입니다. 사실 이 내용은 제가 다른 포스트에서도 언급했던 내용이기도 합니다.2013/01/15 - [About School/About Linux/OS] - [Linux] X11 Forwarding using PuTTY물론 사람에 따라서는 라즈베리 파이상에서 작업하는 것이 편할 수 도 있겠지만, 모르는 입장에서는 한쪽은 윈도우를 열어놓고 모르는 것을 찾아보면서 해보는 게 효율적일 겁니다. 저는 사실 모니터에 입력을 두개로 ..
실시간 시스템 수업을 듣는 중 RTOS의 정의에 대해서 정리할 필요성이 있어서 남긴다. 시스템이란 간단하게 사용자의 입력에 맞는 적절한 출력을 내보내는 기기들의 총집합이라고 생각한다. 그래서 우리가 생활을 하는 주변에도 시스템은 언제나 존재한다. 그 와중에 Computation을 목적으로 삼지 않는 기기들을 따로 Embeded System이라고 한다. 그래서 컴퓨터와 같이 Computation을 바탕으로 돌아가는 시스템이 아닌, 냉장고, 세탁기와 같은 생활 가전 등에 들어가는 시스템을 embeded System이라고 할 수 있다. 예전에는 Cell phone 같은 경우도 임베디드 시스템에 포함시켰는데 요즘은 그 구분이 점점 모호해지는 듯 하다. 아무튼 그런 기기들을 보면 단순히 한 가지 기능만 수행하는 ..
간만에 라즈베리 파이의 껍데기를 벗겼습니다. 세삼스럽게 왜 벗겼을지 궁금하실 분도 있으시겠지만, 정답은 위에 조그맣게 붙어있는 점퍼와이어에 있습니다. 물론 아시는 분들도 계셨겠지만 라즈베리 파이에는 기본적으로 25개의 GPIO를 가지고 있습니다. GPIO란 General Purposed IO 의 약자로 말그대로 일반적인 입출력을 제어할 수 있는 핀의 규약입니다. 그래서 이 핀을 통해서 전기신호를 주고 받을 수 있는 것이지요. 다르게 표현하자면 원하는대로 핀에 0과 1을 줄 수 있다는 겁니다. 그걸 이 라즈베리 파이는 신호로 받아들입니다. 바로 이게 라즈베리 파이의 GPIO인데 좀 의아하실 수도 있습니다. 앞에서는 분명 25개의 GPIO가 있다고 하는데 핀은 그것보다 더 많으니 말입니다. 사실 이중에는 회..
Paper Resource : Mach : A New Kernel Foundation For UNIX Development (1986) : M. Accetta et al 컴퓨터를 사용한다는 건 단순히 서핑을 하고 문서 작업을 하는 것이 대부분이겠지만, 컴퓨터를 배우는 입장에서는 그런 걸 하기 보다는 내부 구조에 대한 이해가 필요하다고 본다. 물론 컴퓨터를 구성하는 요소가 많이 있겠지만 그 중에서도 Kernel이 차지하는 역할이 크다. 그래서 이번 포스트에서 Kernel에서도 그 역할을 함축시킨 MicroKernel-based System인 Mach에 대해서 다뤄보고자 한다. Mach. 이걸 어떻게 발음하냐가 첫번째 이야기다. 다들 마하라고 알고 있고, 보통은 속도의 기본 단위, 또는 기계의 축약어로 표현..
바로 이전 포스트에서 무료로 제공되는 파일 호스트에 관한 글을 썼습니다. 그중 Box라는 걸 소개했었는데요. 현재 신규 가입자를 대상으로 50기가의 저장공간을 줍니다.사실 기존에 DropBox나 Skydrive를 잘 사용해왔기에 Box를 쓰면 과연 잘 쓸 수 있을까 했는데 요즘 잘 활용하고 있는 기능 중 하나가 바로 음악 스트리밍입니다. UI가 무척이나 단순하고 다른 파일 호스트처럼 설치형 프로그램을 제공하지 않습니다. 모든 파일 전송이 그냥 드래그 앤 드롭으로 이뤄집니다. 그냥 폴더 생성 및 파일 이동을 그냥 페이지 상에 이동시키면 된다는 것이지요. 그래서 지금 저도 노래를 조금씩 옮기고 있습니다. 그래서 음원을 넣게 될 경우 위와 같이 재생할 수 있는 영역이 생깁니다. 단순히 재생만 할 수 있는게 아..
POSIX는 IEEE에서 만든 운영체제와 관련한 규약이다. Portable Operating System Interface의 준말이고 보통 Unix 체계에서 고려되면서 만들어졌기 때문에 끝에 X를 붙인다. 당연한 이야기이겠지만 컴퓨터 세상에는 다양한 운영체제들이 존재한다. 물론 그 뿌리는 AT&T에서 개발된 Unix에서 내려온 것이긴 하지만, 사용자에 적합에게 수정이 되면서 그 종류가 많아졌다. 이 때문에 발생하는 문제가 바로 호환성이다. 같은 뿌리에서 내려왔다 하더라도, 어떤 OS에는 의존성이 성립하고, 어떤 OS에서는 성립하지 않는 경우가 발생하기 때문에 응용 프로그램의 실행이 보장되지 않았다. 물론 일반 사용자야 그냥 OS를 지웠다가 다시 설치하는 번거로움을 거치면 되지만, 그 단위가 기업이나 정부..
1. Dropbox PC 설치형 프로그램 제공됨. (탐색기 연동) - linux에서 사용가능가용 용량 : 20.6GB 2. SkyDrive PC 설치형 프로그램 제공 (탐색기 연동)웹용 문서편집기 제공 (Office Web Apps)가용 용량 : 25GB 3. Google Drive PC 설치형 프로그램 제공 (탐색기 연동)웹용 문서편집기 제공 ( google docs )가용 용량 : 5GB 4. Box.com 설치형 프로그램 x 미디어 파일의 embed 주소 제공가용 용량 : 50GB (이벤트 중 - 원하시는 분은 초대 메일 보내드리겠습니다.) 5. 네이버 n드라이브 beta 설치형 프로그램 제공 (탐색기 연동)웹용 문서 편집기 제공 ( 문서 뷰어 )가용 용량 : 30GB 탐색기와의 연동
컴퓨터의 구성 요소를 들어보라면 많은 것들을 들어볼 수 있다. 물론 가장 중추적인 역할을 하는 CPU를 필두로 저장장치, 입출력 장치를 들 수 있지만, 컴퓨터 본연의 역할을 하기 위해서는 Memory의 역할이 중요하다. 더구나 CPU도 내부에 들어있는 ALU를 사용하기 위해서는 메모리에서 인자를 받아와야 한다. 모든 장치들이 상호유기적으로 영향을 주기는 하지만 메모리도 CPU만큼 컴퓨터 내에서 차지하는 비중은 크다고 생각한다. 아무튼 이 메모리의 역할은 앞에서 언급한 것처럼 CPU가 연산하는데 필요한 데이터를 제공하는 것이다. 더 풀어쓰자면 CPU가 연산을 하기 위해서는 사용자가 어떤 연산을 원하는지를 지시하는 Operation Code(opcode)와 data를 담고 있어서 필요할 때마다 호출할 수 있..
- Total
- Today
- Yesterday
- Windows Phone 7
- windows 8
- arduino
- 딥러닝
- Offline RL
- Pipeline
- Gan
- 한빛미디어
- Distribution
- reward
- processing
- RL
- ColorStream
- bias
- Expression Blend 4
- DepthStream
- TensorFlow Lite
- Kinect
- PowerPoint
- dynamic programming
- Variance
- End-To-End
- Off-policy
- Kinect SDK
- 강화학습
- 파이썬
- SketchFlow
- ai
- Policy Gradient
- Kinect for windows
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |