전체 글 194

Hook과 Debug

0. Hook Function이 뭘까? 커널 공부하다보면 Hook함수를 접하게 된다. 커널이 어떤 이벤트 포인트, 훅 포인트 에 도달 했을 때, 원래 흐름에 끼어들어custom code를 실행하도록 등록해 둔 함수를 말한다. 특정 시스템 호출을 시작, 종료하든가, 패킷이 네트워크 스택을 통과 하든가,스케쥴러가 인터럽트 루틴을 실행하거나 종료하든가..하는 지점을 hook point로 설정하고, 커널이 그 지점에 도달했을 때 커널이 호출해주는 함수이다. 1. 콜백함수를 등록해 두고, 특정 조건에 도달한다는 측면에서는인터럽트와 비슷하지만, 그럼에도 커널 훅은 동기적synchronous이다. 인터럽트가 하드웨어나 소프트웨어의 비동기적인 신호를 받아서반응하는 비동기적인 구조와 차이를 보이며인터럽트를 통해 tas..

기계식 컴퓨터, 비전자적 컴퓨터 에세이

-1. 이 글은 개인적으로 흐름을 정리하려고위키피디아, GPT, 유튜브 등을 따라가면서출처없이 주절주절 긁어온 누더기글입니다.공신력이 없기 때문에, 그냥 이런 글이 있구나 수준에서 읽어주또 잘못된 부분이 있다면 댓글로 남겨주세요.. 0. 이전에 데릭 청의 전자정복이라는 책을 읽었다. 볼타전지, 찰스 배비지의 해석기관,에디슨과 테슬라의 진공관, 다이오드섀넌의 디지털회로, 정보이론, 튜링머신트랜지스터, 집적회로, LED, SoC등 전자제품이 발전하는 과정을 연대순으로 정리한 책이다. 1. 글을 읽다보면, 에니악과 트랜지스터의 시대 이전에찰스 배비지의 해석기관을 보면 기어,크랭크, 도르래, 캠을 이용하여 사람의 일을 대신 해주는 유용한 기계장치들의 시대가 있었음을 어렴풋이 느낄 수 있다. 아직까지도 유용한..

RTOS의 인터럽트와 스케쥴러 시작

1. FreeRTOS kernel의 portable-GCC-ARM_CMX 폴더에 들어가보면port.c와 portmacro.h가 보인다. 이 port.c에서인터럽트들과 스케쥴러가 어떻게 작동하는지 확인할 수 있다. 2. ARM Cortex M시리즈에서 돌아가는 FreeRTOS Kernel interrupt에는 3가지 종류의 인터럽트가 존재한다. (1) SVC Interrupt(2) PendSV Interrupt(3) SysTick Interrupt 3. SVC Interrupt는 특정 instruction을 수행하여 SVC handler를 실행시키고,이 핸들러를 통해 very first task를 수행한다. PendSVInterrupt는PendSVHandler를 실행시키고, 태스크의 Context ..

FreeRTOS와 task creation, SRAM, 힙 메모리

0. 마이크로컨트롤러, SoC, CPU, AP칩셋..단어는 다양하지만, 모두 폰 노이만식 컴퓨터 구조를 가진 발명품들이다.CPU 밑에 캐시메모리, 주기억장치인 SRAM과 DRAM,보조 기억 장치인 하드디스크, SSD.. 임베디드 기기에서는 EEPROM이나 Flash메모리를이러한 기억장치들의 역할을 수행하는 것도 왕왕 보일 것이다. 이게 중요한 것은 아니고task를 만드는 과정에 필요한 메모리, RAM의 용량을 알아보자. 1.사용하는 보드의 데이터 시트를 보면STM32F103RB는 다음과 같은 스펙을 가진다. Flash Memory는 128KB,SRAM은 20KB가진다고 한다. 디스커버리보드는 SRAM1 112KB + SRAM2 16KB해서 토탈 용량이 128KB뉴클리오는 20KB 2. FreeRTOS..

히브리서 11장 1-3 중국어 번역

믿음은 바라는 것들의 실상이요 보지 못하는 것들의 증거니 히브리서 11:1 KRV, 개역개정 Now faith is confidence in what we hope for and assurance about what we do not see.Hebrew 11:1 NIV 信 就是 所望之事的实底 , 是 未见之事的确据 。xìn jiù shì suǒwàng zhī shì de shídǐ, shì wèijiàn zhī shì de quèjù.希伯來書 11:1 CUV --- 所望 suǒ wàng : 소망, 믿음, 바라다实底 shí dǐ : 실상, 실체 未见 wèi jiàn : 보지 않은, 未wèi는 아직 ~하지 않은 确据 què jù : 증거 --- 2. 선진들이 이로써 증거를 얻었느니라 (개역개정)2 선조..

Getting Over it 트레일러 중국어 번역

https://www.youtube.com/watch?v=dvKDSyroZnE 0. (1)Why did I make this? 이걸 왜 만들었을까요? this horrible hike up an impossible mountain 오를 수 없는 산을 오르는 끔찍한 등산을 말입니다. (2)I could have made something you would have liked 당신이 좋아할만한 것을 만들 수도 있었겠죠. a game that was empowering 기분 좋게 해 주고, that would save your progress 진행상황을 저장할 수 있고, and inch you steadily forward 한 발짝씩 꾸준히 앞으로 나아갈 수 있는 게임 말입니다. (3)since success..

Task란 무엇인가?, xTaskCreate, xTaskDelete

-1.스케쥴링, Concurrency와 Parallelism(Multitasking), 컨텍스트 스위칭에 관한 내용https://freertos.org/Documentation/01-FreeRTOS-quick-start/01-Beginners-guide/01-RTOS-fundamentals RTOS Fundamentals - FreeRTOS™Links to RTOS concept pagesfreertos.org Task Create API에 관한 정보https://freertos.org/Documentation/02-Kernel/04-API-references/01-Task-creation/00-TaskHandle  0. RTOS에서 돌아가는 Application은 온도를 측정해서 표시해주는 어플리케이션..

250410 문장번역하기, 0xSun (3), 240903, 240904

0. https://x.com/0xSunNFT/status/1906249868798230597  9.3 (1)  永远不要在极短时间内把大部分子弹打出去, (2) 可以接受少赚一点, (3) 不能接受严重亏损甚至爆仓的风险, (4) 其次面对自己不熟悉的领域, (5) 不要用太想当然的逻辑去操作。  1. (1)  永远不要 在极短时间内 把大部分子弹 打出去, Yǒngyuǎn bú yào zài jí duǎn shíjiān nèi bǎ dà bùfèn zǐdàn dǎ chūqù 永远不要 Yǒngyuǎn bú yào : 절대로 ~하지마라-> 직역하면 - 영원히 ~하지마라가 된다. 금지에 대한 명령을 나타낸다. 在极短时间内 zài jí duǎn shíjiān nèi : 단 시간 내에-> 부사구이다. 把 大部分 子弹 bǎ dà bù..