안드로이드(Android)는 휴대전화기를 비롯, 모바일 디바이스를 위한 운영체제와 미들웨어 그리고 핵심 어플리케이션을 포함하고 있는 소프트웨어 스택이다. 안드로이드는 개발자들이 자바(Java) 언어로 어플리케이션을 작성 할 수 있게 하였으며, 컴파일된 바이트코드를 구동할 수 있는 런타임 라이브러리를 제공한다. 또한 안드로이드 SDK를 통해 어플리케이션을 개발하기 위해 필요한 각종 도구들과 API를 제공한다.
안드로이드는 리눅스 커널 위에서 동작하며, 다양한 안드로이드 시스템 컴포넌트에서 사용되는 C/C++ 라이브러리들을 포함하고 있다. 안드로이드는 기존의 자바 가상 머신 과는 다른 가상 머신인 달빅 가상 머신을 통해 자바로 작성된 어플리케이션을 별도의 프로세스에서 실행하는 구조로 되어있다.
2005년 안드로이드 사를 구글에서 인수한 후 2007년 11월, 안드로이드 플랫폼을 휴대전화용 OS로서 무료 공개한다고 발표한 후 48개의 하드웨어, 소프트웨어, 통신 회사가 모여 만든 OHA(Open Handset Alliance)에서 공개 표준을 위해 개발하고 있다. 구글은 안드로이드의 모든 소스 코드를 오픈 소스 라이센스인 아파치 라이센스로 배포하고 있다.
역사
2005년 7월, 구글은 미국 캘리포니아주의 팔로알토에 기반을 둔 작은 안드로이드 사를 인수하였다.
2007년 11월 5일, 텍사스 인스트루먼트, 브로드컴 코퍼레이션, 구글, HTC, 인텔, LG, 마벨 테크놀로지 그룹, 모토로라,엔비디아, 퀄컴, 삼성전자, 스프린트 넥스텔, T - 모바일 의 몇몇 회사로 구성된 컨소시엄인 오픈 핸드셋 얼라이언스(OHA)가 모바일 기기의 공개 표준을 개발하는 것을 목표로 결성되었다. 또한 OHA는 리눅스 커널 2.6에서 빌드된 그들의 첫번째 모바일 기기 플랫폼 결과물인 안드로이드를 발표하였다.
2008년 10월 21일, 안드로이드가 오픈소스로 선언 되었다. 구글은 네트워크와 텔레폰 스택을 포함하는 완전한 소스코드를 아파치 라이센스로 공개 하였다.
2008년 12월 9일, ARM Holdings Plc, Atheros Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, Vodafone Group Plc 으로 구성된 새로운 14개의 멤버가 안드로이드 프로젝트에 가담하였다.
출처: 위키백과
메모리 단편화(Memory Fragmentation)
int a = new int[5]; int b = new int[5]; int c = new int[5]; 메모리 상황(■ : 할당된 메모리 □ : 빈 메모리) a■■■■■ b■■■■■ c■■■■■ delete int [] b; 메모리 상황 a■■■■■ □□□□□... (2010-01-20)
버퍼 오버플로우(Buffer Overflow)
진정한 프로그래머한테 필요한 자판은 단지 3개뿐!!!!!!!!!!!!!!!!! 버퍼 오버플로우에 대해 알려고 한다면 어셈블리어를 어느정도 간단히 알고 있어야 한다. 간단하게 어셈블리를 보자. cpu에는 범용 레지스터라는게 있다. 범주 이... (2010-01-20)
안드로이드 (Android)
안드로이드(Android)는 휴대전화기를 비롯, 모바일 디바이스를 위한 운영체제와 미들웨어 그리고 핵심 어플리케이션을 포함하고 있는 소프트웨어 스택이다. 안드로이드는 개발자들이 자바(Java) 언어로 어플리케이션을 작성 할 수 있... (2010-01-06)
증강현실(Augmented Reality, AR)
[http://www.youtube.c-om/watch?v=APQ2OxgCNzE] 광고이기에 과장된 모습이긴 하지만 실제로 증강현실은 현실의 세계와 화면의 세계가 혼재할수 있는 새로운 기술이라고 할수 있다. 증강현실(Augmented Reality, AR)은 가상현실(Vi... (2010-01-05)
UX란 무엇인가? 
UX란 사용자가 원하는 제품이 아닌 시스템을 만드는 과정이다. 코닥이스트만은 1988년, 기존의 카메라에 혁명을 일으켰다. 그는 기존의 광각판을 통해 현상하던 카메라에서 필름카메라로의 전환을 통해 대량 생산이 가능하게 했다... (2009-12-10)
어포던스 (Affordance)
어포던스 (Affordance)의 뿌리말 Afford는 원래 '~할 여유가 있다, ~하여도 된다, ~을 공급하다, 산출하다'라는 뜻을 가지고 있으나 보통 사전에 없는 뜻으로 인간 컴퓨터 상호작용, 인지 심리학, 산업 디자인, 인터렉션 디자... (2009-08-11)
Usability
사용성(Usability, 유저빌리티)어떤 도구나 인간이 만든 물건, 서비스를 어떤 특정 목적을 달성하기 위해 사용할 때에 어느 정도 사용하기 쉬운가를 말하는 용어이다. 전자 제품이나 정보를 전달하기 위한 문서, 사람들이 일상생활... (2009-05-16)




