디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

Dingux 리눅스앱에서 작성

발명도둑잡기(118.216) 2025.12.04 19:55:33
조회 47 추천 0 댓글 0
														

챗지피티

아래는 Dingux(딩각스)—중국 휴대용 레트로기기(예: Dingoo A320/A330, OpenDingux 기반 RG350 등)에서 쓰이는 임베디드 리눅스 배포판—의 내부 구조를 가장 기술적으로 정확하게 정리한 것입니다.

---

Dingux / OpenDingux Linux 전체 구조(아키텍처)

1) 기본 개념

Dingux는 임베디드 SoC(MIPS32, ARM 등) 위에서 동작하는 경량 리눅스 배포판

BusyBox, uClibc 또는 musl 기반의 최소 시스템

그래픽은 X11 없음, SDL 또는 DirectFB 계열 렌더링

정상적인 패키지 매니저 없음(opkg/apt 없음), rootfs 이미지 + home 파티션 구조

---

2) 부트 과정(Boot flow)

① Boot ROM

SoC 내부 ROM이 NAND/SD에서 1차 부트로더 로드

② 1차 부트로더

제조사 제공(주로 Ingenic CPU이면 X-Boot)

NAND/SD에서 커스텀 2차 부트로더를 읽어옴

③ 2차 부트로더: u-boot

커널 이미지(uImage, zImage) 로드

커맨드라인 전달 (mem=, mtdparts=, root=/dev/... 등)

커널 파라미터: LCD 정보, 키 입력, 파일시스템 위치 등

④ Linux Kernel 부팅

OpenDingux (최신 Dingux)의 경우:

Linux 3.x → 4.x 이후로 업데이트된 Fork

Ingenic JZ47xx, JZ4760, JZ4770 패치 포함

커널 드라이버:

LCD/Framebuffer

ALSA 오디오

GPIO 키 입력

NAND/SD/MMC

USB gadget/host

Battery ADC

⑤ Root filesystem(rootfs) 마운트

squashfs 또는 cramfs (읽기 전용)

overlay로 ext4 또는 fat32의 “/media/data”(home) 병합

---

3) 파일시스템 구조

/
├── bin/        (BusyBox 등)
├── etc/
├── lib/
├── usr/
├── home/       ← user apps, 에뮬레이터
└── media/
      └── data/ ← 실제 writable 공간

특징:

rootfs 읽기 전용, 유지보수 안정성↑

사용자 앱은 /media/data/apps/ 같은 디렉터리에서 실행

config는 /home/.config/ 혹은 /media/data/local/home/에 저장

---

4) 그래픽 시스템 구조

Dingux는 프레임버퍼 기반 임베디드 그래픽이다.

① Framebuffer (fbdev)

/dev/fb0로 노출

모든 앱은 기본적으로 fb0에 직접 blit

② SDL 1.2 / SDL2

Dingux 그래픽의 핵심:

SDL 1.2 기반 포팅이 매우 많음

SDL2는 OpenDingux 신버전에서 지원

OpenGL 없음(일부 기기만 TinyGL 사용)

③ OpenDingux 추가 그래픽 계층

SimpleMenu, GMenu2X 등의 런처

VSync, double buffering 최적화 패치 존재

---

5) 음향 구조

ALSA (Advanced Linux Sound Architecture)

대부분 SoC는 독자적인 DAC/Codec

ALSA mixer로 볼륨 조절

SDL_mixer(레트로 게임용)과 많이 연결됨

---

6) 입력 시스템(Input system)

① Linux input subsystem

/dev/input/event0 등으로 표준화

방향키/버튼은 GPIO + keymap 드라이버

② 에뮬레이터

SDL 키 입력 매핑

OpenDingux에서는 각 앱마다 input.conf 또는 SDL keymap을 따로 제공

---

7) 애플리케이션 구조

기본 실행 모델

Dingux 앱은 독립된 단일 ELF 실행 파일

정적 링크된 경우 많음 (musl/uClibc static)

에뮬레이터는 대부분 SDL 기반

주요 형태

SDL 에뮬레이터(NES, SNES, GBA, PS1)

RetroArch 포팅

SimpleMenu / GMenu2X 런처

프로세스 관리

systemd 없음

init 스크립트로 간단한 rc 방식

---

8) 패키징 방식

Dingux는 일반적인 패키지 시스템이 없고:

앱 = 폴더 통째로 복사

실행파일 + 리소스 + config 포함

메뉴는 .desktop 파일로 등록 (GMenu2X)

예:

/media/data/apps/SNES/
    snes9x
    snes9x.opk
    icon.png
    config/

---

9) Dingux(OpenDingux) 커널/시스템 구성 요약

구성 요소 설명

Bootloader u-boot
Kernel Linux 2.6.x → 3.x → 최신 4.x Fork
C 라이브러리 uClibc → musl
Shell BusyBox
Filesystem squashfs + ext4 overlay
Graphics fbdev + SDL1/SDL2
Audio ALSA
Input Linux input subsystem
Window manager 없음 (런처만 존재)

---

10) 전체 구조 다이어그램

┌──────────────────┐
         │     Boot ROM     │
         └────────┬─────────┘
                  ▼
      ┌──────────────────────┐
      │   1st Bootloader     │
      └────────┬────────────┘
               ▼
      ┌──────────────────────┐
      │       u-boot         │
      └────────┬────────────┘
               ▼
      ┌──────────────────────┐
      │    Linux Kernel      │
      │ fbdev / ALSA / GPIO  │
      └────────┬────────────┘
               ▼
     ┌─────────────────────────┐
     │       rootfs (RO)       │
     ├─────────────────────────┤
     │     data/home (RW)      │
     └────────┬────────────────┘
              ▼
     ┌─────────────────────────┐
     │    Launcher(GMenu2X)    │
     ├─────────────────────────┤
     │   Apps / Emulators      │
     │    (SDL, RetroArch)     │
     └─────────────────────────┘

---

필요하면 추가 설명 가능

Dingux 소스 트리 구조 분석

Ingenic JZ47xx SoC 내부 구조

SDL vs DirectFB vs fbdev 성능 비교

Dingux에서 직접 에뮬레이터 포팅하는 법(툴체인)

원하시는 부분 있나요?

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이제는 의미 없어진 것 같은 시상식은? 운영자 25/12/01 - -
AD 루틴 ON! 운동 찐템! 지금 할인 중 운영자 25/11/27 - -
2906572 ‘김예지 비하’ 고발당한 감동란, 국민의힘 입당 발명도둑잡기(118.216) 03:48 47 0
2906568 오늘의 영상 기획 실마리: 쇼미더머니 하세요 발명도둑잡기(118.216) 03:27 22 0
2906562 인공지능이 인간의 예술, 음식을 평가, 평론할 수 있을까요? 발명도둑잡기(118.216) 03:13 24 0
2906543 BC 카드 부자 되세요 발명도둑잡기(118.216) 01:42 31 0
2906542 나이 31살이라 코딩포기해야되나 ㅜㅜ [11] 프갤러(211.234) 01:35 151 0
2906541 AI기담|머리가 맛이 가서 의사도 포기 발명도둑잡기(118.216) 01:27 70 0
2906540 유럽, 북미 선진국에서 가장 입학이 어려운 학문 전공!R 프갤러(121.142) 00:59 62 1
2906539 악동뮤지션(Akdong Musician) 크레센도 (Crescendo) 발명도둑잡기(118.216) 00:43 22 0
2906538 일 잘하면 회사에서 겁나 고생한다.. [2] 프갤러(116.126) 00:32 81 0
2906536 “새똥 덩어리 참배” 중국 관영매체, 다카이치 조롱 영상 제작 발명도둑잡기(118.216) 00:13 28 0
2906535 리눅스마스터 1급 합격률 왤케 씹창이냐? 프갤러(220.70) 00:10 40 0
2906534 netcup vps 혜자 ㅇㅇ(219.240) 00:08 35 0
2906532 고졸이 개발자 하고싶으면 어떻게 준비해야함? [3] 프갤러(124.28) 12.04 83 0
2906527 ❤따당이 크리스마스 트리에 예쁜 말 써줘..❤ [1] 따당갤로그로 이동합니다. 12.04 54 0
2906525 오늘의 작명 실마리: 무관심 검열, 무플 검열 발명도둑잡기(118.216) 12.04 21 0
2906523 SNS가 망친 평균 VS 현실 평균 [1] 발명도둑잡기(118.216) 12.04 120 0
2906522 본질적으로 dto와 map의 차이가 없음 [3] 박민준갤로그로 이동합니다. 12.04 169 1
2906521 졸리 졸리 ♥발라당냥덩♥갤로그로 이동합니다. 12.04 65 0
2906519 "예술은 누가 더 나은가의 문제가 아니다" 발명도둑잡기(118.216) 12.04 74 0
2906517 "말썽꾼 아줌마"...다카이치 조롱한 중국 애니메이션 화제 발명도둑잡기(118.216) 12.04 39 0
2906516 html 401 에러뜨면서 사이트 안들어가지는거 어케고침..? 프갤러(125.191) 12.04 27 0
2906515 사이버대라도 학위 따야함?? ㅇㅇ갤로그로 이동합니다. 12.04 40 0
2906514 내란 저지 1주년... "국민의힘 해산해야 민주주의가 바로 선다" 발명도둑잡기(118.216) 12.04 34 0
2906513 ai 시대에 임베디드 배우는 거 어때? [6] 프갤러(223.39) 12.04 107 0
2906512 [1편] 대미투자,원리금 회수도 불가능 발명도둑잡기(118.216) 12.04 29 0
2906510 “새똥 덩어리 참배” 중국 관영매체, 다카이치 조롱 영상 제작 발명도둑잡기(118.216) 12.04 30 0
2906508 [애니뉴스] YxD Ads 개발중 - 완료 ㅇㅇ(121.172) 12.04 27 0
2906507 조갑제 "국민의힘=이적 단체…미치광이 역적 제명도 못한 내란비호당" 발명도둑잡기(118.216) 12.04 30 0
2906505 물건 대여업체는 오히려 손님들이 잃어버려야 이득인건가 [2] 공기역학갤로그로 이동합니다. 12.04 82 0
2906504 눈 올 때 들으면 좋은 노래 snowy [2] 발명도둑잡기(118.216) 12.04 39 0
Dingux 리눅스 발명도둑잡기(118.216) 12.04 47 0
2906500 SDL / DirectFB / fbdev 를 비교한 성능 발명도둑잡기(118.216) 12.04 37 0
2906488 지잡 취업 가능? [1] 프갤러(121.151) 12.04 75 0
2906486 언어간 호환하려고 gRPC 쓰려다가 웹소켓으로 갈아탐 ㅇㅅㅇ [2] 프갤러(211.234) 12.04 78 0
2906485 안마방 체험 썰.jpg ㅇㅇ(118.235) 12.04 58 0
2906483 [애니뉴스] SortingClp - sortingColorPalette ㅇㅇ(121.172) 12.04 35 0
2906481 내란무새 리짜이밍 빤스런 ㅋㅅㅋ ♥발라당냥덩♥갤로그로 이동합니다. 12.04 55 0
2906479 ■개발자말고 아버지소개로 트럭정비사하는게낫냐 [2] ㅇㅇ갤로그로 이동합니다. 12.04 74 0
2906478 Regular Animals 발명도둑잡기(118.216) 12.04 29 0
2906475 부자 러스트 프로그래머 이제 숨만 셔도 하루 6만원씩 들어온다. [3] 프갤러(223.37) 12.04 94 1
2906474 지방 갈까말까 엄청 고민하다 거절했다. 프갤러(223.37) 12.04 50 0
2906473 오늘 뽑은 색이 다른 포켓몬 넥도리아(220.74) 12.04 39 0
2906471 지금껏 다녀본 업소들 유형별 특징.txt ㅇㅇ(118.235) 12.04 73 0
2906470 안마방 체험 썰.jpg ㅇㅇ(118.235) 12.04 48 0
2906469 우리신입 코드보면 줘패고싶다 걍 ㅇㅇ [2] 맨날가고싶은사람갤로그로 이동합니다. 12.04 116 0
2906468 이미 선구자가 있었네. [3] 프갤러(49.165) 12.04 104 0
2906466 코딩 입문할려고 함 [2] Hoping갤로그로 이동합니다. 12.04 61 0
2906465 조국혁신당이 미래다 이기이기 타이밍뒷.통수한방(1.213) 12.04 38 0
2906463 님들 저 졸업작품 주제 추천좀요 [2] 공기역학갤로그로 이동합니다. 12.04 64 0
2906462 나님 금융회사 세울꺼양 [4] ♥발라당냥덩♥갤로그로 이동합니다. 12.04 79 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2