디시인사이드 갤러리

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

갤러리 본문 영역

특허 출원 gg친 툴킷 아키텍처 전격 공개한다 ㅋㅋ모바일에서 작성

나르시갤로그로 이동합니다. 2025.11.11 08:50:00
조회 88 추천 0 댓글 0

아키텍처로 특허 출원은 선행 기술이 있으므로

물건너 간게 확실.


자자. 현행 nimf에 심각한 문제가 있다.

nimf는 non-GUI, GUI 환경에서 동시에 작동 가능하도록 설계는 했는데, 구현상의 문제로 non-GUI 콘솔에서 사용하다보면 어느 순간 멈춤다.


이것을 분석해보니 이벤트루프에 문제가 발생했어.


단일 프로세스에 gtk 툴킷이 돌아감. gui는 플러그인 구조임. gui 없이 nimf를 돌리는게 가능하다는 얘기.


gui 이벤트 루프를 nimf의 cloop에 통합함. 스레드 방식 아님.


cloop가 콘솔 관련 io, gui 관련 io를 폴링함(kqueue, epoll, poll)


재현방법.


GUI 환경에서 ctrl + alt + f1 키를 눌러 non-GUI 콘솔 모드로 진입함


non-GUI 콘솔에서 한글 입력하다보면(이게 실제로 가능함 ㅋㅋ 내가 만듦 ㅋㅋ) 어느 순간 먹통됨.


디버깅 해보면 cloop가 콘솔 관련 io, gui 관련 io를 폴링하다가 gui 관련 io 폴링에서 무한 대기함.

non-GUI 콘솔로 전환한 상태이기 때문에 GUI 이벤트가 발생하지 않아, 거기서 무한대기하는 것임.


해결방법.


1. GUI를 별도의 프로세스로 만들고 IPC 하는 방법. 전통적인 방법임. 성능 저하 우려되고 프로세스 관리 방법이 필요함.


2. GUI를 별도의 스레드로 만들고 스레드간 통신하는 방법. eventfd 두개를 활용. 큐 두개를 통하여 쌍방향 통신이 가능함.


3. 호스트 스레드에서 GUI api를 직접 호출하는 대신 이벤트 큐1에 요청을 넣음.


4. GUI 스레드는 eventfd1를 감지하여 이벤트 큐1에서 요청 이벤트 꺼내서 처리함. 이 이벤트는

create window, update ui 같은 커스텀 이벤트임. GUI 툴킷에 정의된 이벤트가 아님.


5. GUI 스레드는 이벤트 처리 후 결과를 이벤트 큐2에 넣음.


6. 호스트 스레드는 eventfd2를 감지하여 처리 결과를 이벤트 큐2를 통하여 받음 ㅋㅋ


이러한 원리임.


GUI 스레드가 스레드로 돌고 있고 호스트 스레드에서 GUI 관련 io를 폴링하지 않으므로 GUI 루프가 GUI 관련 io가 없어서 무한대기하더라도 호스트 루프는 차단되지 않음.


즉, 디스플레이 서버(xorg, wayland  컴포지터 등)프로세스와 클라이언트 프로세스가 IPC 통신하는 방식을 단일 프로세스 내 2개의 스레드 방식으로 옮겨놓은거지 ㅋㅋㅋ


이거를 특허 출원하려 했었던 거임 ㅠㅠ

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 대박 날 것 같아서 내 꿈에 나와줬으면 하는 스타는? 운영자 25/11/17 - -
AD 겨울가전 SALE! 쿨한 겨울 HOT세일 운영자 25/11/12 - -
2902189 아 개씨발 누웟는데 또 모기 소리 들렷음.. [2] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.11 124 0
2902188 나 깨달았따. 은박접시 가 휴대폰 고칠때 잘라서 쓰면, 꽤 괜찮다. 넥도리아's(220.74) 11.11 86 0
2902187 쿠팡 김범석 미국 기부 발명도둑잡기(118.216) 11.11 83 0
2902186 납치됐던 100만 유튜버가 전한 당시 상황 발명도둑잡기(118.216) 11.11 77 0
2902184 8비트 IDE 8bitworkshop.com 발명도둑잡기(118.216) 11.11 53 0
2902183 나님 빼빼로 무료나눔 합니당⭐+ [6] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.11 95 0
2902182 2025 영구 제명 리스트 [1] 넥도리아's(220.74) 11.11 109 0
2902179 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ [2] ♥KiTTY냥덩♥갤로그로 이동합니다. 11.11 53 0
2902178 ESP32 MSX 복각 MSX0 Stack 발명도둑잡기(118.216) 11.11 52 0
2902177 러스트 홍보하는 좋은 방법 나르시갤로그로 이동합니다. 11.11 56 0
2902176 러스트: '가장 진보된 언어'라는 주장의 모호성 나르시갤로그로 이동합니다. 11.11 62 0
2902175 러스트는 우주에서 가장 진보된 인류 프로그래밍 언어의 정수입니다. [2] 프갤러(27.168) 11.11 99 0
2902174 바코드 스캐너 펌웨어 개발: C, C++, Ada, Rust 언어 비교 [4] 나르시갤로그로 이동합니다. 11.11 121 0
2902172 러빨러 ♡ 나르시 [3] 프갤러(218.147) 11.11 93 3
2902170 프로그래머가 뭔 빼빼로데이야 [10] 프갤러(223.38) 11.11 138 2
2902169 [대한민국] 트럼프, 기후변화는 사기 언급 프갤러(121.172) 11.11 53 0
2902168 60대 이후 세대는 큰일이라고 [1] 프갤러(49.165) 11.11 85 1
2902166 와우 좋다. 컴퓨존 아저씨 감사합니다. [4] 넥도리아(119.195) 11.11 135 0
2902165 RT-Linux (추상적 단계 정리) 발명도둑잡기(118.216) 11.11 43 0
2902163 안 친한 여자한테 누드 [1] 발명도둑잡기(118.216) 11.11 97 0
2902161 오늘이 빼빼로데인줄 몰랐다 발명도둑잡기(118.216) 11.11 54 0
2902160 엄청 크네... 공구함 넥도리아(119.195) 11.11 83 0
2902157 Donkey Kong Country OST 발명도둑잡기(118.216) 11.11 44 0
2902156 러스트 담론을 해체하다: 1.2 소유권, 빌림, 생명주기를 통한 메모리 나르시갤로그로 이동합니다. 11.11 64 0
2902155 코모도어64 SID 칩 라즈베리파이로 에뮬레이숀 SIDKick_pico 발명도둑잡기(118.216) 11.11 52 0
2902154 저녁은 대패삼겹살 볶음 [10] chironpractor갤로그로 이동합니다. 11.11 120 0
2902152 쥐포기업 쥐메프 파산 ㅋㅋㅋㅋㅋ 프갤러(221.142) 11.11 69 0
2902150 Guiyom: 고신뢰성 시스템 GUI 툴킷 개발 계획 및 비전 [4] 나르시갤로그로 이동합니다. 11.11 100 1
2902149 고언어 vs 러스트 뭐가 더 낳냐? [3] ㅇㅇ(14.5) 11.11 102 0
2902146 This 80's Song Inspired Mario's Music 발명도둑잡기(118.216) 11.11 41 0
2902145 젓가락 데이) Guiyom 툴킷 개발 착수하기로 결정했습니다. [2] 나르시갤로그로 이동합니다. 11.11 79 0
2902144 Early 8-Bit Sound Digitizers 발명도둑잡기(118.216) 11.11 44 0
2902141 게임 개발 << 실력에 도움되냐 [6] 프갤러(211.230) 11.11 133 0
2902138 러스트 못쓰는 회사 들어간거부터 이미 커리어가 망가진거야 [2] 프갤러(218.154) 11.11 170 0
2902137 지능이 심각하게 다쳤음을 느낀다 [10] chironpractor갤로그로 이동합니다. 11.11 145 0
2902136 넥스트 - growing up [2] 배구공(119.202) 11.11 79 0
2902135 ❤✨☀⭐⚡☘⛩나님 시작합니당⛩☘⚡⭐☀✨❤ ♥KiTTY냥덩♥갤로그로 이동합니다. 11.11 45 0
2902133 용산 나왔는데 전화가... ㅠㅠ 넥도리아(27.164) 11.11 77 0
2902132 직장에서 mb mib 명확하게 분리해서 부르나요? [7] 프갤러(221.153) 11.11 98 0
2902129 내 여친 사진이야 [1] ㅁㅁㅅ갤로그로 이동합니다. 11.11 141 0
2902128 PL 과 나 [15] 개멍청한유라갤로그로 이동합니다. 11.11 152 0
2902127 제미니cli 이거 성능 진짜 안나오네 (나시 고랭) [1] 프갤러(182.216) 11.11 99 0
2902124 Rust vs Ada: 논리 버그 방지 관점에서 [2] 나르시갤로그로 이동합니다. 11.11 97 0
2902122 그록 검열없고 좋네 [2] 프갤러(121.166) 11.11 162 0
2902120 40을 넘긴 것들은 가족조차도 믿으면 안되겠구나. 프갤러(49.165) 11.11 89 0
2902119 류독 > 인증용 > ㅆㅇㅆ ㅇㅇ(118.235) 11.11 80 0
2902118 피아식별도 못하는 능지 ㅅㅂ [1] ㅇㅇ(118.235) 11.11 99 0
2902117 그냥 러스트 배울 지능 안되면 뒤져야함. [9] 프갤러(218.154) 11.11 148 0
2902116 ㅆㅇㅆ는 사실 류독 뒤질때 같이 뒤졌어야 했음 [5] ㅇㅇ(118.235) 11.11 131 4
2902115 고졸 국비충들은 그냥 기술이나 배워라 [2] ㅇㅇ(61.76) 11.11 148 1
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2