기본 콘텐츠로 건너뛰기

11월, 2010의 게시물 표시

LG Optimus 7 and 7Q 소개 영상

오랫만에 가볍게 동영상 하나 소개해보렵니다. LG가 출시한 Windows Phone 7 기반의 Optimus 7 and 7Q 소개 동영상입니다. 영상을 보니 7Q는 쿼티 자판을 지원하네요. 사운드가 박진감(?) 넘치니 회사에서 보시려면 볼륨을 줄여주세요. 한국에는 언제쯤 출시되려나요? Galaxy S 광고를 보면서도 비슷한 생각이 들었는데요 이 광고 역시도 반 이상은 MS의 Windows Phone 7 운영체제를 소개하는 광고로 보이네요. MS가 돈 좀 지원해주나...

Java: Java SE 7과 Java SE 8을 위한 JSR submission

Oracle이 Java SE 7과 Java SE 8을 위한 JSR을 JCP에 제출하였다. 아래 JCP 웹페이지에서 가져온 내용을 살펴보도록 하자. Review Ballot은 2주 안에 끝날 예정이다. Java SE 7을 위한 JSR-336은 2011년 7월에 Final Release가 계획되어 있고 JSR-337은 2012년 10월로 계획되어 있다. 334 Small Enhancements to the Java TM Programming Language Description: A successor to JSR 201 to enhance the Java programming language with an assortment of small changes to improve productivity. Changes must be simultaneously small in specification, implementation, and testing. Spec Lead: Joe Darcy, Oracle 335 Lambda Expressions for the Java TM Programming Language Description: Extend the Java language to support compact lambda expressions (closures), as well as related language and library features to enable the Java SE APIs to use lambda expressions effectively. Spec Lead:

Java: Apple과 Oracle Mac OS X용 Java 개발에 협력하기로 발표!

Mac을 사용하는 Java 개발자들에게 정말 좋은 소식입니다. 얼마전 Apple이 Mac OS X에서 더는 Java 버전 갱신을 지원하지 않을 것이라 발표하여 Mac을 사용하는 Java 개발자들이 걱정하였는데요 (저도 그 중 하나입니다만) 오늘 발표로 이런 걱정은 일소하게 되었습니다. Oracle and Apple Announce OpenJDK Project for Mac OS X - InfoQ "Apple will contribute most of the key components, tools and technology required for a Java SE 7 implementation on Mac OS X, including a 32-bit and 64-bit HotSpot-based Java virtual machine, class libraries, a networking stack and the foundation for a new graphical client. OpenJDK will make Apple’s Java technology available to open source developers so they can access and contribute to the effort." Apple이 발표한 위 press release 내용에 따르면 Apple은 Mac OS X용 Java SE 7을 개발하는 데 필요한 Virtual Machine, 클래스 라이브러리, 네트워킹 스택, Mac OS를 위한 새로운 그래픽 클라이언트 등의 코드를 제공하고 이를 Open JDK 프로젝트 에서 오픈소스 프로젝트로 진행할 것임을 밝혔습니다.   + Java SE 6 버전은 계속 Mac OS X 운영체제에 기본적으로 탑재될 것이고 최신 Java 버전은 Oracle에 의해 배포되는 형식을 취할 것으로 보입니다. 이로써 개인 컴퓨터의 주축을 이루는 3대 플랫폼 - Windows, Linux, Mac OS X - 에

Java Inside: SheevaPlug Computer와 Java SE for Embedded

http://www.theregister.co.uk/2010/11/11/diy_zero_energy_home_server/ 재미있는 기사를 찾아 링크를 걸어본다. 위 기사는 SheevaPlug 라는 Plug Computer를 이용하여 리눅스 서버와 Java SE for Embedded 를 탑재, 전력사용량을 최소화한 웹서버 시스템을 구축한 사례에 대해 이야기 하고 있다. 서버 팜을 운영하는 회사들이 이러한 기술을 도입하여 전력사용량을 줄여 이익을 극대화하는 한편 환경보호에도 앞장설 수 있다면 좋지않을까? ARM은 자신들의 강점인 저전력 프로세스 기술을 서버 시장에서도 활용할 것으로 보인다. 앞으로 인텔과 서버 시장에서의 대결구도가 재미있을 것 같다. 참고로 지난 10월에 Oracle에서 Java SE for Embedded v6 u21 버전 이 새로 출시되었다. ARMv5, v6, v7 아키텍쳐를 지원하며 PowerPC 아키텍쳐도 지원한다. 운영체제는 리눅스와 Windows XP Embedded를 지원한다. 참고: ARM, 마벨 아마다 XP로 서버 시장 본격 진출 Marvell debuts ARM server chip A Note On Setting Up the SheevaPlug Linux Plug Computer

Java Inside: Audi의 무인 자동차 프로젝트와 JADS에 대한 소개

Java가 사용된 embedded device를 소개하는 Java Inside 시리즈. 한동안 뜸했는데 좋은 소스를 찾아 오랫만에 글을 올린다. 오늘 찾은 내용은 Audi가 Java RTS 를 이용하여 Stanford 대학과 무인 자동차 프로젝트를 연구 중이라는 내용이다. Audi bringing Autonomous Audi TTS Pikes Peak technology project to SEMA show 위 기사의 내용을 보면 Audi가 몇년간 진행하였던 무인 자동차 기술을 2010년 11월 2일 부터 5일까지 라스베가스에서 열리는 SEMA 쇼에서 선보이다고 한다. 무엇보다 개인적으로 흥미로운 점은 Java RTS 기술을 활용하여 자동차의 가장 중요한 안전에 관련된 알고리즘을 구현하였다는 것이다. 또한가지 흥미로운 제품으로 광고나 각종 정보를 LCD TV를 통해 보여주는 Digital Signage 제품을 Java 서버와 클라이언트를 이용하여 구현한 JADS Digital Signage 이다. 이 제품은 영국의 University of Kent 전자공학과에서 공지사항을 손쉽게 전달하기 위해 시작한 학내 프로젝트에서 발전하였다. Google의 App Engine 을 이용하여 서버측 관리 프로그램을 제공하고 web 프로그램을 통해 digital signage에 출력될 내용을 변경하면 클라이언트에 있는 Java Application을 통해 바로 수정된 내용을 화면에 출력하는 형태의 시스템이다. (JADS Digital Signage의 화면 예제) http://www.jads.co.uk/digital-signage/demo-screen 에 접속하여 자신의 PC에서 직접 데모를 확인할 수 있다.

iOS: WWDC 2010 세션 정리 - LLVM 관련

요즘 틈틈이 보고 있는 WWDC 2010 세션 비디오에 대해 정리해두고자 한다. LLVM (Low Level Virtual Machine) 은 iOS, MacOS 소프트웨어를 개발하기 위해 사용하던 GCC 컴파일러를 대치하기 위해 Apple이 오픈소스 프로젝트로 진행하고 있는 컴파일러 시스템이다. LLVM 컴파일러 시스템은 컴파일러를 개발하기 위해 필요한 core library를 제공하며 이 core library를 이용하여 Clang이라는 Objective-C, Objective-C++, C, C++ 컴파일러를 구현한다.  또한, LLVM, Clang을 이용하여 LLDB라는 디버거로 기존 GDB를 대치한다. 다음은 LLVM 컴파일러를 활용했을 때의 주요 장점들이다. 컴파일한 코드의 성능을 향상시킨다. 예를 들어, OpenSSL을 LLVM으로 컴파일하면 기존 GCC 대비 약 30%의 성능이 향상된다. 빌드 시간을 단축한다. WWDC 2010 세션에 보여준 결과로는 릴리즈 빌드의 경우 20%~60% 시간을 단축한다. 디버그 빌드의 경우에는 심지어 3배 이상 빠른 빌드 시간을 보여준다고 한다. 정확한 에러 메시지를 보여준다. 아무리 봐도 알듯 말듯한 에러 정보가 아닌 정확히 어떤 문제이고 어떻게 고쳐야하는지 알려준다. Static Analysis 기능을 제공하여 코드의 논리적인 오류까지 알려준다. Memory 사용량을 30% 정도 줄였다. (예: LLVM 컴파일러가 제공하는 에러 메시지와 GCC가 제공하는 메시지 차이) $ gcc-4.2 -fsyntax-only t.c t.c:7: error: invalid operands to binary + (have 'int' and 'struct A') $ clang -fsyntax-only t.c t.c:7:39: error: invalid operands to binary expression ('int' and 'struct A