윈도우 CE 시스템 스케줄링에 대해 (WinCE Scheduler 스케줄러) 윈도우 CE의 스레드 스케줄링은 선점형 방식이다. 스레드는 퀀텀(quantum)이나 타임 슬라이스(time slice)라고 부르는 시간 동안 실행된다. 해당 시간이 지난 후 스레드가 실행 중인 상태라면 그 스레드는 일시 중단되고 다른 스레드가 실행된다. 예외적으로 실행을 마칠 때까지 계속되는 스레드도 있다. 윈도우 CE는 우선순위 스키마(scheme)에 따라 실행할 스레드를 고른다. 높은 우선순위 스레드는 낮은 우순선위 스레드 이전에 스케줄링 된다. 윈도우 CE가 스레드 간에 시간을 배분하는 규칙은 다른 윈도우 운영체제와는 꽤 다르다. 윈도우 CE 프로세스에는 우선순위 클래스가 없다. 데스크탑용 윈도우에서는 스레드 우선순위와 부..
전자 화폐, 스마트 카드 보안 기술 TPM (Mobile TPM, mTpm) A Mobile Trusted Platform Module(mTPM) Architecture (스마트 카드 보안 기술 논문의 제목) 1. 서론 전자 화폐 - 전자적 수단을 사용하는 화폐(스마트 카드)로 은행계좌에 직접적으로 접근하지 않고 컴퓨터 파일 형태로 화폐가치를 보관하고 이를 사용하여 대금을 지불하는 기술적인 수단 - IC카드 (스마트 카드) : IC칩 이용 - 네트워크형 전자 화폐 : 공중망에 연결된 PC에 가치 저장, 사용 - 최근 모바일을 이용한 전자 화폐 등장 : ETRI 기술연구 (mTPM을 이용한 전자 화폐 시스템) 전자 화폐 시스템 개요 안전한 전자 지불을 위한 조건 - 이용가능성과 신뢰성 : 공급자 또는 전자..
PLC 종류, 분류, 구성, 접점, CPU Unit, 특징 알아보기 PLC 기초 - 제조사별 종류, 구성- 종류 1. LS산전(구 LG산전) : Starcon-MF, Goldsec시리즈, Master-K시리즈, Glofa-GM시리즈 - 국내에서는 소형 PLC 삼성테크윈 등 여러 업체가 있었으나 현재는 LS산전과 삼성테크윈 정도만 생산하고 있어, 분류량이 줄었음 참고 : 기존의 마이컴을 PLC 형태로 변형하고 개발환경으로 래더도를 제공하는 업체(컴파일, 리얼게인)도 있다. - 종류 2. MITSUBISHI : MELSEC A-Series, Q-Series, FX-Series 등으로 구성 - 기타 : AB(ALLEN-BRADLEY), MOORE, TRICONEX, MODICON, SIEMENS, HIBRAI..
PLC 기초, 정의, 역사, 사용법, 산업 특징, 발전 추세 PLC 제어 기초 해설 PLC 기초 (Programmable Logic Controller) 종래- 릴레이, 접점, 타이머, 카운터 등을 직접 결선 사용 지향점- 다품종 소량 생산- 생산성 향상, 작업 안정성 향상, 품질 향상- 원가 절감 및 인원 관리의 어려움 현재- PLC 사용하여 프로그램 변경만으로 제어 가능 PLC 기초 정의 - 논리연산, 순서조작, 시한, 계수 및 산술 연산 등의 제어 동작을 실행시키기 위해 제어 순서를 일련의 명령어 형식으로 기억하는 메모리 보유 - 이 메모리의 내용에 따라 기계와 프로세스의 제어를 디지탈 또는 아날로그 입출력을 통하여 행하는 디지탈 조작형의 공업용 전자장치 - 제어 이벤트에 대한 로직, 시퀀스, 시간..
C# Linq 예제, FileInfo 오래된 파일 10개 삭제 (File.Delete) C# 링크로 간단하게 처리하는 방법 알아보겠습니다. 순서는 이렇습니다. 1. FileInfo[]를 이용해 파일 리스트를 얻음2. LINQ, OrderBy를 이용해 가장 오래된 10개 목록을 추려냄3. 오래된 파일 10개 삭제 아래는 C# LINQ 예제 소스입니다. 123456789101112FileInfo[] files = new DirectoryInfo(@"D:\Test\").GetFiles("*.txt"); if (files.Length != 0){ FileInfo[] last_ten = files.OrderBy(fi => fi.LastWriteTime).Take(10).ToArray(); foreach (File..
MFC강좌, CArray 배열 사용 방법 (이중배열 포함 get sest) 기본적인 데이터 추가 예 Add, SetAt, SetAtGrow로 데이터를 추가할 수 있고, 추가하기 전에 SetSize로 배열의 크기를 지정해 줘야 합니다. Add는 일반적으로 사용자가 원하는 위치에 들어가지 않을수가 있어서 사용시 주의해야합니다. 1. SetSize() 123456789CArray m_aTest; m_aTest.SetSize(3);m_aTest.Add("가나다");m_aTest.Add("라마바");m_aTest.Add("사아자"); for(int i = 0; i
분산분석과 다중비교란, 영향력 유무의 판정 시도 분산분석이란?모집단의 수가 셋 이상인 경우에 tㅡ검정을 이용하여 모평균을 비교해 보도록 합시다. (분산분석 시작) 2개씩 짝을 지어 5개의 표본평균 들을 대상으로 유의수준이 5%인 tㅡ 검정을 10번 실시한다고 가정합시다. 실제로 이 평균들 간에 차이가 없을 때, 옳은 결론에 도달할 수 있는 확률은 한 쌍에서 0.95씩이므로 10번의 tㅡ 검정이 올바른 결론에 도달할 수 있는 확률은 0.95의 10승이 됩니다. 바꾸어 말하면 이 중 적어도 어느 하나의 검정이 잘못된 결론을 내리게 될 확률 즉, 유의수준이 이나 되는 셈입니다. 그러므로 이처럼 모집단의 수가 셋 이상이면 tㅡ 검정이 아닌 여러 모집단을 총괄적으로 분석할 수 있는 분산분석(Analysis of ..
안드로이드 Please update ADT plug-in. 에러 해결책 에러 메세지 This version of the rendering library is more recent than your version of ADT plug-in. Please update ADT plug-in. 종종 뷰어가 안 보이는 경우가 있는데, 아래처럼 해결할 수 있습니다. 방법 1. Help - Install New Software - https://dl-ssl.google.com/android/eclipse/ 추가 그리고, Tools - Android Development Tools 클릭 후 원하는 버전 선택 방법 2. 그래도 안 보인다면 아래처럼 직접 버전을 선택해 주세요. 이 정도만 하시면 ADT 플러그인 에러는 해..
WebGL에서 제공하는 렌더링 장점 5가지 (웹지엘) WebGL은 최신 브라우저에서 효율적인 표준 방법으로 3D 렌더링을 가능하게하는 3D 그래픽 라이브러리다. 위키피디아에 따르면, WebGL의 렌더링rendering이란 컴퓨터 프로그래밍 분야에서 모델로부터 이미지를 생성하는 처리 과정이다. 이 처리 과정이 컴퓨터에서 실행됨에 따라 이미지를 생성하는 방법에는 몇 가지 차이점이 있다. WebGL과 첫번째 차이점은 특별한 그래픽 하드웨어의 존재 유무다. 소프트웨어 렌더링software-based rendering은 3D 렌더링을 수행하기 위해 컴퓨터의 메인 프로세서 CPU를 이용한다. 반면에 하드웨어 렌더링hardware-based rendering은 그래픽 프로세싱 유닛GPU, Graphics Proces..
Qt 멀티 쓰레드 예제 [스레드 링크만] (Multi Thread) 외국 형님의 Qt 멀티 쓰레드 구현 소스 링크 1. GitHub - fabienpn/multiple-methods-qt-thread-example [클릭]2. Clone URL - https://github.com/fabienpn/multiple-methods-qt-thread-example.git [클릭]3. 블로그 포스팅 - Qt thread: run various methods in a separate thread [클릭] 멀티 쓰레드에 대한 자세한 내용은 해당 링크로 이동해서 참조하시고, 제 결론 부터 말씀드리자면 이렇습니다. Qt 멀티 스레드 구현해 봐야 작업 시간만 길어집니다. connect라는 좋은 코드 놔두고 왜 Qt Mu..
한글 인코딩 UCS와 UTF 계열 특징과 차이 (국제 문자 세트) UCS와 UTF 계열의 특징 및 차이 요약 (UCS2, UCS4, UTF8, UTF16, UTF32) UCSUCS2, UCS4에 맞는 글자 세트들이 있습니다. (2byte, 4byte) 대부분의 현대어(Basic M Plane)들은 UCS2로 cover 됩니다. (한글 인코딩과는 무관) 다만, 아주 특수한 애들(즉, BMP를 벗어나는)만 UCS4로 처리합니다. UTFencoding 방식, 즉 UCS방식과 무관합니다. 그러므로 UCS2, UCS4를 UTF8로도, UTF16으로도 UTF32로도 encoding 할 수 있습니다. 단, UCS2은 UTF16과 둘 다 2byte이므로 거의 유사할 수밖에 없습니다. 즉, 특별한 encoding이 필요..
MFC 현재 시간 측정 구하기, 마우스 커서 없애기 딱히 설명할 게 없어서 소스만 남깁니다. 1. MFC 현재 시간 측정 구하기 1234567891011121314151617#include #include LARGE_INTEGER liCounter1, liCounter2, liFrequency; // retrieves the frequency of the high-resolution performance counterQueryPerformanceFrequency(&liFrequency); // StartQueryPerformanceCounter(&liCounter1); // ....blabla QueryPerformanceCounter(&liCounter2); // End TRACE(_T("Time : ..