Hacking/Embedded
임베디드란?
씨이오가 되자
2024. 3. 29. 21:02
728x90
사전적 의미 : Embedded = 내장된, 내재된
임베디드 ⊃ 펌웨어
Def. 펌웨어(Firmware)
- EPROM, Erasable Programmable Read-Only Memory에 담긴 데이터를 칭하는 단어
- 비휘발성 메모리
- 중앙에 있는 칩에 자외선을 사용하여 데이터를 작성하면 프로세서는 EPROM을 읽어 데이터에 있는 명령어를 실행
=> 최근에는 비휘발성 메모리로 EPROM이 아닌 Flash memory 사용
💡Flash memory는 전기적으로 읽고 쓰기가 가능한 메모리로 USB나 SSD나 Flash memory를 사용하고 있음
- 요즘은 임베디드 기기의 비휘발성 메모리에 담긴 데이터로 부르게 됨
예제 firmware 는 API 서버를 작동시켜 1413포트와 8899포트를 여는 동작 수행
해당 API 서버는 C언어로 작성된 바이너리 형태.
1413포트에는 Mongoose Webserver를 이용하여 http 프로토콜을 사용하는 API 서버가 작동 중
- 0.0.0.0:1413/adduser : url에 post 형식으로 아래와 같이 보냄
{ "dreamId" : "[Id]", "interest" : "[관심 분야]" }
=> json 형태로 저장함.
8899포트에는 TCP 소켓 통신을 이용한 API 서버가 작동 중
각 포트로 사용자에게 받은 데이터들은 해당 API 서버를 통해 모두 drea_dict 바이너리로 넘겨짐
728x90