본문 바로가기
반응형

[Public] 프로그래밍15

[Parallel] #1 Intel Parallel Studio 2011에 대해 알아보자 Intel Parallel Studio 란? C/C++ 컴파일러와 응용프로그램의 병렬화를 지원하는 도구로 총 4개로 구성되어 있다. 각 도구는 Microsoft Visual Studio 통합개발 환경에 플러그인 되어 사용 가능하다. 각 도구는 4개로 구성되어 있다. 설치를 하고 나면 4가지 종류가 있다. 구성요소를 보면… 1) Intel Parallel Advisor 병렬화를 실시하기 전 병렬화해야 할 곳을 찾아내 병렬 처리를 모델화해서 효과적으로 병렬화 응용프로그램을 작성하기 위한 도구이다. 병렬화 설계를 하기 위해서 사용하면 효과적이다. 2) Intel Parallel Composer 기존 응용프로그램의 CPU 최적화를 위하여 만들어진 컴파일러 멀티스레드를 작성할 수 있도록 병렬 라이브러리 및 성능 .. 2012. 6. 17.
[C++] STL에서는 왜 함수객체를 사용할까? (함수포인터, 함수객체, 람다) 2012. 02. 08 STL와 같이 라이브러리에서 가장 중요한 것은 무엇일가요? 범용성과 효율성 입니다. 범용성이란 누구나 사용이 용이해야한다. 효율성이란 최적화가 되어야 한다. 이정도로 생각하시면 될듯 싶습니다. 그럼 다음 예제 코드를 봅시다. 그냥 일반적인 덧셈과 뺄셈 함수를 가지는 코드입니다. 여기서 라이브러리를 만든다는 입장을 가지고 접근을 해 봅시다. 아까 이야기 하던 2개의문제 범용성과 효율성가지고 이 두가지를 해결 하면 됩니다. 먼저 효율성의 문제를 해결하기 위해서는 어떻게 해야할가요? 힌트를 들이자면 위 함수에서는 매개변수를 전달하기 위해서는 스택을 사용하게 됩니다. 그러면 오버헤드가 발생할 수 밖에 없습니다. 이 문제를 해결하면 됩니다. 그러기 위해서는 우리가 배웠던 Inline 함수 .. 2012. 2. 8.
[C] 구조체 비트필드 구조체를 선언할 때 우리는 일반적으로 다음과 같이 선언을 한다. 이름을 생략하면서 typedef 를 이용하면서 일반적으로 우리는 구조체를 선언할 때 일반적으로 변수를 이용하여 선언 하였다. 변수는 일반적으로 가장 작은 변수가 char형 1 BYTE 이다. 그러면 어떻게 Bit 단위로 선언을 할 수가 있을가 ? 답은 자료형 변수명 : 비트크기 ; (즉 변수 선언 후 뒤에 : 을 붙여주고 비트크기를 선언하는 것이다.) 근데 이걸 선언하는 것은 알겠는데 어디에 사용을 하죠? 일반적으로 구조체 비트필드의 적용사례를 보면 1. 컴퓨터 내부 칩들의 레지스터를 프로그래밍 할 때 사용한다 2. 데이터 베이스의 자료의 크기를 작게 할 때 사용한다. 3. 기타 프로그램 작성시 사용한다. 그럼 말로만 하지 말고 예제로 하나.. 2011. 7. 28.
[Android] 안드로이드 비프음 소리 내기 이번 시간에는 특수효과로 소리를 내는 기능을 만들어 볼것이다. 비프음이다. C 에서 간단히 나는 삐~ 하는 소리 보다는 간단하게 wav 파일의 소리를 내보도록하겠다. 그럼 어떻게 소리를 내는지 알아보자 ! 먼저 사운드 파일을 열어야한다. 그러기 위해서는 소리파일을 프로젝트의 레이아웃폴더의 raw 폴더에 복사를 미리 해두어야 한다. res/raw 다음 파일을 읽어 오기위해 정적으로 create 함수를 호출한다. static MediaPlayer create(Context context, int resid) context resid : 리소스 아이디다 보통 res/raw 폴더에 있기에 이거 역시 (R.raw.id) 로 불러온다. 불러왔으니 이제 소리를 내나요 ? 그렇다 이제는 불러왔으니 활용하기 위해서는 다.. 2010. 8. 23.
[Android] 안드로이드의 스레드 #1 (간단하게 스레드 만들기) 이번 시간에는 안드로이드의 스레드에 대해서 알아보자 ! 예전에는 음악을 듣다 문자메시지가 오면 음악을 끄고 메시지를 확인후 메시지를 보내고 다시 음악을 틀어야 만 했다. 하지만 요즘 나오는 핸드폰은 음악을 들으면서 메시지를 작성하는 핸드폰이다. 이를 가능케 해주는 여러 작업을 동시에 실행하는 스레드 안드로이드에서 안집고 넘어 갈 수가 없다. 안드로이드의 스레드 기능은 주로 자바에 의해 지원되는데 먼저 자바의 스레드를 읽어 보기 바란다. 간단하게 스레드를 사용하려고 합니다. 어떻게 스레드를 사용하죠 ? 자바에서는 스레드를 생성하는 두 가지 방법을 지원한다. Thread() Thread(Runnable runnable) 첫번째 디폴트 생성자는 그자체가 독립적으로 실행되는 실행의 흐름이 된다. 스레드는 고유의.. 2010. 8. 18.
[Android] 토스트 (Toast) 알림창 활용하기 이번 시간은 토스트를 활용해 볼 것이다. 그럼 토스트가 무엇이냐 ? 먹는 토스트냐 아니다.. 안드로이드 핸드폰을 사용하다 보면 사각형 모형의 작은대화상자가 잠간 떠있다 정보를 알려주고 사라지는 경우가 있다. 아래 그림을 봐라 안드로이드 폰을 소지하고 있다면 아 저거 ~! 하는 자신을 볼 수 있다. 그런데 그냥 대화상자를 뛰우면 되지 왜 저걸 뛰워 ? 토스트는 안드로이드가 시스템 차원에서 제공하는 작은 팝업 대화상자이다. 그래서 사용자에게 임시적으로 알림을 사용할 때 유용하다 또 플로팅 형태로 화면 하단에 잠시 나타나 사라지기 때문에 확인 버튼을 안눌리는 장점을 지니고 있다. 이뿐만 아니라 토스트는 사용자의 작업을 방해하지 않는다는 가장 큰 장점을 지니고 있다. 그럼 토스트는 어떻게 만들어요? 토스트메시지.. 2010. 8. 17.
반응형