반응형

android 14

Intel Ultra 9 185H (22 Threads) CPU 노트북 사용 후기

플랫폼을 개발하고 빌드하는 입장에서 오래전부터 고성능의 리눅스 노트북을 원했고 최근에 회사에서 Intel Ultra 9 185H 노트북을 주었다. 아래 사양에서 SSD만 2TB로 업그레이드 해서 주었고 2주 정도 이런 저런 빌드를 하고 사용을 하면서 느낀점을 간단히 적어보고자 한다. 우선 Intel Core Ultra9 185H CPU 스펙을 간단히 보면 16 Core에 22 Threads를 지원한다. 중간에 보면 효율코어와 Low Power 코어도 있는것이 Intel Core의 특징이다. 개인적으로 이런 측면에서는 AMD가 낫지 않나 싶다. 가끔 이런 Efficient Core로 인해 빌드할 때 Segfalut가 나기도 한다. Ubuntu 24.04 64bit를 설치하고 여기서 Yocto 레퍼런스 Po..

Development 2024.12.18

Android 도구 screen copy

Android Screen Copy (Scrcpy)는 Android 디바이스 화면을 PC나 Mac에 실시간으로 표시하고 조작할 수 있게 해주는 오픈 소스 도구이다. 주로 개발자와 기술 전문가들이 디바이스의 화면을 테스트하거나, 앱을 시연하거나, 디버깅을 목적으로 사용한다.주요 기능화면 미러링: Android 디바이스 화면을 고화질로 컴퓨터 화면에 실시간으로 표시.원격 제어: 키보드와 마우스를 사용하여 디바이스를 조작할 수 있음.무선 또는 유선 연결: USB 케이블을 통한 빠른 연결 또는 Wi-Fi를 통한 무선 연결 지원.저사양에서도 높은 성능: 낮은 지연 시간과 효율적인 리소스 사용.녹화 및 스크린샷: 디바이스 화면을 녹화하거나 스크린샷을 저장 가능.텍스트 입력: PC 키보드를 사용해 Android 디바..

Android Treble

안드로이드 프로젝트 트레블은 안드로이드의 아키텍처를 개선하여 운영체제(OS) 업데이트를 더욱 빠르고 쉽게 하기 위한 프로젝트이다. 안드로이드 8.0 오레오 버전에서 처음 도입된 트레블 (Treble)은, 안드로이드 프레임워크와 하드웨어 추상화 계층(Hardware Abstraction Layer, HAL)을 분리하여, OS의 업데이트가 하드웨어 제조사나 칩셋 제조사에 의존하지 않도록 했다. 기존에는 새로운 안드로이드 버전을 기기에 적용하기 위해 모든 하드웨어 종속적인 코드를 함께 수정해야 했으나, 트레블을 통해 OS와 하드웨어 간의 표준 인터페이스가 분리됨으로써, OS 업데이트가 보다 독립적으로 가능하게 되었다. 이를 통해 안드로이드 기기들이 더욱 빠르고 효율적으로 최신 OS 버전으로 업데이트될 수 있는..

Yocto 빌드를 위한 최신 AMD Ryzen 7985WX

4년 정도 전에 회사에서 Yocto 빌드를 하기 위해 32 Core CPU를 가진 AMD Ryzen™ Threadripper™ 2990WX 을 구매했다. 이 당시만 해도 전체 Core를 사용해서 빌드하면 빌드하다가 멈추고, PC가 죽어버리는 문제가 발생해서 안정적이지 않았고 어쩔 수 없이 32 Core, 64 Thread 전체를 사용하지 못하고 절반 정도밖에 사용하지 못했다. 결국 1달 전에 저 PC가 고장이 났고 새로 구매하는 상황이 발생했다. IT에서 위의 그림에 있는 3가지 옵션 (7995WX, 7985WX, 7975WX)을 주었고 팀내 현재 남은 예산에 맞게 최종적으로 7985WX를 구매했다. 7995WX는 96코어 192 스레드여서 그만큼 메모리도 많이 필요해 DDR5 4800 64GB짜리 8개..

Development 2024.11.10

Android Cuttlefish (안드로이드 커틀피쉬)

Android Cuttlefish란?Android Cuttlefish는 안드로이드 운영체제를 가상으로 실행할 수 있도록 설계된 가상 장치로, 특히 OS 및 하드웨어 통합 수준에서의 테스트에 최적화되어 있다. Cuttlefish는 구글 클라우드 플랫폼(GCP)과 AWS (Amazon Web Service) 같은 클라우드 환경에서 실행될 수 있어, 대규모 테스트나 원격 액세스가 필요한 개발자들에게 유용하다. 주로 시스템 개발자나 플랫폼 엔지니어들이 안드로이드 시스템 구성 요소 및 하드웨어와의 통합을 테스트하는 데 활용한다.Android Cuttlefish와 Emulator와의 차이점목적Cuttlefish: 주로 OS 및 하드웨어 통합 수준에서의 테스트를 위해 설계된 가상 장치이다. 일반 애플리케이션보다는 안..

소스 코드에서 Android 버전 확인 방법

AAOS (Android Automotive OS) 또는 AOSP (Android Open Source Project) 소스 코드를 repo 도구를 통해서 받으면 수백개의 저장소가 존재한다. 물론 branch 이름을 가지고 Android 버전을 확인할 수도 있지만 실제 코드 내에서 BUILD_ID가 정의되어 있고 이것과 android 홈페이지에서 제공하는 버전 이름과 매칭을 시키면 정확한 버전과 릴리스 날짜를 알 수 있다. BUILD_ID는 build/core/build_id.mk 파일에 다음과 같이 존재한다.BUILD_ID=AP2A.240705.005.A1 AP2A.240705.005.A1 가 실제 ID이고 https://source.android.com/docs/setup/reference/build..

repo manifest 명령어 사용

Repo는 안드로이드 오픈소스 프로젝트(Android Open Source Project, AOSP)에서 주로 사용하는 도구로, 여러 개의 Git 리포지토리를 관리하기 위해 설계되었다. Git은 강력한 버전 관리 시스템이지만, 대규모 프로젝트에서 여러 개의 리포지토리를 다루는 데는 불편함이 있을 수 있다. Repo는 이를 해결하기 위해 만들어졌으며, 여러 Git 리포지토리를 한꺼번에 클론하고 업데이트하며 동기화하는 기능을 제공한다. Repo의 주요 기능  1. 여러 Git 리포지토리 관리: 여러 리포지토리를 쉽게 클론하고 업데이트할 수 있다. 2. 명령어 자동화: 여러 리포지토리에 걸친 변경 사항을 동기화하거나 상태를 확인할 수 있는 명령어를 제공한다. 3. 메타데이터 관리: 각 리포지토리의 의존성, 버..

Development 2024.10.01

Android Automotive OS (안드로이드 오토모티브 OS)

안드로이드 오토모티브 OS(Android Automotive OS, AAOS)는 차량용 인포테인먼트 시스템을 위한 구글의 오픈소스 운영체제이다. 기존의 안드로이드 운영체제를 기반으로 자동차 환경에 맞게 확장된 버전으로, 다음과 같은 특징을 가지고 있다. 위의 그림은 인포테인먼트의 변천사를 보여주고 있고 2010년대와 2020년대 각각 Android Auto (Apple의 CarPlay와 같은 폰 프로젝션 기능), Android Automotive OS를 구글에서 오픈하였다.안드로이드 오토모티브 OS 주요 특징 1. 독립형 운영체제:안드로이드 오토모티브 OS는 차량에 내장된 독립형 운영체제이다. 차량 내 디스플레이와 시스템에서 직접 구동되며, 별도의 스마트폰 연결 없이도 모든 기능을 사용할 수 있다.반면,..

현대자동차 INVESTOR 후기 (SDV 관점)

8월 28일 (수)에 현대차 2024 CEO INVESTOR DAY가 진행되었고 Youtube로 공개 되었다. 이 글은 SDV 관점에서 현대자동차의 전략에 대해서 이날 발표 내용을 토대로 이야기해보고자 한다. SDV 전개 계획은 아래와 같이 우선 인포테인먼트쪽에서 AAOS (Android Automotive OS)를 GV90에 선재 적용하고, 2026년 하반기에 SDV Pace Car를 만들어 Zonal E/E 아키텍처까지 적용한 것을 테스트하는 것을 시작으로 이후 양산 전개할 계획이라고 한다. 중앙집중형 고성능 컴퓨터 (HPCV)를 기반으로 Zonal 아키텍처를 가지고 가고 42dot에서 주도하여 일부 하드웨어까지 만든다고 뒷부분 질의 응답때 송창현 사장님이 이야기했다. 이미 알고 있었지만 이제 공식적..

Automotive 2024.08.30

빌드 성능 개선 (최적화)

작년 10월 https://www.yocto.co.kr/176 글에서 Yocto 빌드 성능 최적화에 대해서 글을 썼고 중간중간 clang 적용, ccache 적용 등 회사에서 작업한 내용들을 간단히 적어보았다. 이 글에서는 일반론적인 임베디드 소프트웨어 개발에서 빌드 성능을 개선할 수 있는 작업들을 경험을 토대로 적어보고자 한다. Yocto Linux, QNX, 안드로이드 등 OS를 포함하는 빌드에서 성능을 개선하는데 큰 그림이 될 수 있을 것으로 생각된다. 차량용 ECU가 여러 개에서 하나로 통합되면서 고성능의 SoC가 필요하고 그 위에 하이퍼바이저 기반으로 여러개의 OS가 올라가서 동작한다. 이 각각의 OS를 빌드하는데도 오랜 시간이 걸리고 클라우드를 사용하면 그 비용을 상당히 많이든다. 현재 프로젝..

Development 2024.07.25
728x90
반응형