분류 전체보기 108

11/27 일이 하기 싫었던 날

오늘은 눈이 왔다.올해 첫눈이었고, 폭설이었다..그만큼 엄청 추웠고, 내 뇌도 꽁꽁 얼었다.오늘은 왠지 일이 하기 싫었다.목적없는 일이 싫고, 쓸데없는 시간 투자가 싫은데빌드는 2시간이 걸리고, 우리 회사 git 서버는 포화상태가 되어서 commit 하는데만 1시간이 걸렸다.그런데에서 그냥 맥이 빠졌다.그리고 요즘 일이 별로 없다..큰 이슈가 있긴한데 HW랑 뭐 여러가지 부서의 에이스들이 달려들어야 하는 급이라 내가 거들진 못하겠고,,그런거 말고도 좀 생산성있고 회사에 도움이 되는 일을 줬으면 좋겠는데 고여버린 팀이고 러닝커브가 높은 분야다보니 일다운 일은 별로 없는게 좀 아쉽다..뭐든간에 내가 가진 열정을 회사가 좀 잘 이용했으면 좋겠다.

카테고리 없음 2024.11.27

[AOSP] Framework Service와 HAL 바인드 과정 살펴보기

저번에 AOSP의 아키텍쳐를 살펴봤다. 오늘은 그 아키텍처중에 Android Framework 가장 아랫단에 있는 Service Layer가 Hal과 연결되어 있는 방식을 살펴보겠다. 시스템 서비스는 HAL과 두가지 형태로 연결되어 있는데, Wifi의 시스템적 기능을 제공하는 인터페이스인 Supplicant의 HAL 과제조사가 제작하여 하드웨어 칩의 기능을 제공하는 인터페이스인 VendorHAL이다. 이들은 각각 대응되는 Service 클래스에서 Binder 객체에 의해 바인드되어 요청과 응답을 통신하는 방식으로 연결되어 있다. 이 바인더 과정이 어떻게 되는지 살펴보겠다. 1. SystemServce – HAL Binder 연결 과정 (Vendor Hal) Vendor Hal의 바인더 과정을 살펴보기 위..

모바일 2024.11.26

[DB] 설계한 schema 기반의 SQL 생성하기

오늘은 어제 점검했던 문제 중 한가지인 DB Foreign key를 연동하기 위해  DB 스키마의 SQL문을 작성할 것이다. 처음에는 springboot의 Entity로 스키마를 생성할 때, fk를 자동생성해주는 코드를 짜려고 했는데, 생각보다 정상적으로 만들어지지 않아 MySQL workbench에서 일일히 fk를 연결해줬었다. 근데 개발자가 이런 반복적인 일을 하나하나 수행한다는게 너무 비효율적이라고 생각되서 그나마 현재로서 Entity 정의되어있는건 건들지 않고 자동 생성해주는 방법은 SQL문을 작성하고 이를 실행하는 방법인 것 같다고 생각했다. 따라서 내가 설계한 ERD를 기반으로 FK 설정이 포함된 SQL문을 작성했다.  -- Table: workspaceCREATE TABLE workspace..

프로그래밍 2024.11.25

[Web 개발] 아이들의 음악교실 'Let's Note' - 기능 문제 파악

직접적으로 Let's Note 홈페이지의 기능 문제를 파악하고 고쳐나가보지. 1. 악기 별 시각화 및 연주 기능 문제 이 기능의 목적은 해당 탭을 이용하여 특정 악기만 display하도록 해서 협업시 상대방의 편집이 내 작업에 지장이 가지 않도록 하는 것이었다. 근데 해당 기능은 현재 드럼만 가능하며, 피아노와 기타는 피아노의 버튼으로 같이 on/off 되고 있다. 그리고 해당 display는 연주에는 적용되지 않고 모두 On 상태로 플레이 되고 있다. 더보기# 특정 악기만의 연주 소리를 듣는 것이 필요한가?나는 필요하다고 생각한다. 퀄리티가 낮아보이더라도 필요한 기능들이 있어야 사용할 수 있다고 생각하고 드럼의 소리를 듣기 위해 플레이했는데 피아노 소리에 묻힌다면 불편함을 느낄 수 있다고 생각했다.근데..

프로그래밍 2024.11.24

[Web 개발] 아이들의 음악교실 'Let's Note' 운영 재개

지난번에 ssl을 적용하여 운영중이던 프론트엔드 서버와 연결하여 웹이 다시 정상적으로 돌기 시작했다.  https://letsnote.co.kr Let's Note www.letsnote.co.kr 아직 부족한 점이 많지만 해당 사이트를 리뷰하며 어떤 개발을 적용했는지, 그리고 현재 미흡한 점은 무엇인지 파악하는 시간이 되겠다.  먼저 사이트에 접속하면 회원가입을 한다.  아이디와 닉네임, 비밀번호, 확인 이 네가지 입력값이 있는데 각각 몇글자 이상이라던가, 중복 불가 등의 조건이 있다.  근데 몇글자 이상이어야 하는 조건을 따로 개별 alarm으로 구현해놓지 않아서 위처럼 나타난다.(현재 아이디를 h 한글자로 입력하여 실패한 상황) 따라서 이 부분 수정이 필요하다.  로그인 하면 내 작업공간으로 이동한..

프로그래밍 2024.11.23

[Android] AOSP architecture

오늘은 안드로이드 오픈소스 코드인 AOSP의 아키텍처 구조가 어떻게 되어있는지 정리해보겠다. 안드로이드 코드는 의외로 오픈소스이기때문에 누구나 코드를 통해 안드로이드 휴대폰을 만들수 있는데,이때문에 안드로이드 개발 초기에 이를 지원하는 디바이스 제조사들이 생겨났다.나도 그 회사 중 한 회사에 다니고 있는 것이고. 그래서 우리 회사는 안드로이드의 코드를 받아 포팅한 후,회사의 납품 고객사 특성에 맞게 디바이스를 최적화하여 판매하는데 따라서 해당 코드가 어떤 플로우로 흘러가고, 또 각 기능을 하는 코드는 어떻게 layer가 나눠져 있는지를 파악하고 있어야 한다. Android Architecture   안드로이드의 코드인 AOSP는 다음과 같이 추상적으로 Layer가 나눠져 있다. 사실 아직도 Runtime..

모바일 2024.11.22

[WLAN] Wi-Fi protocol (2) - Band Protocol

오늘은 Wi-Fi 프로토콜 중 데이터가 실리는 채널 밴드의 프로토콜에 대한 내용을 다루겠다. Wi-Fi는 데이터를 라디오파를 이용하여 전송하는데, 라디오파의 주파수를 어떻게 설정하냐에 따라 Band값이 달라진다. 2.4GHz 대역과 5GHz 대역, 6GHz 대역이 현재까지 발전되어 사용해왔고 한 밴드 채널을 여러 기기가 많이 사용하면 혼잡도때문에 속도가 느려져서 새로운 밴드를 계속 발전시키고 있다. 현재 가장 최근에 나온 대역폭은 6GHz로 주파수가 가장 높은데 주파수가 높다고 무조건 좋은 것이 아니라장단점이 있기 때문에 단점을 보완하는 기술도 함께 등장하곤 한다. 이와 관련된 내용들을 다뤄보겠다.   1. 802.11b 프로토콜도 이전에 암호화 인증 방식을 살펴본 것과 같이 시대순으로 발전 과정을 살펴..

모바일 2024.11.21

Springboot에 ssl 인증서 발급하여 https 포트 개방하기 - certbot 활용

드디어...!!! 해냈다...ㅠㅠㅠ acm으로 load balancer 설정하여 인증받으려고 설정했지만 실패했었다. 그래서 좌절하고 그동안 감을 잡은 도메인 개념으로 다시 certbot 인증서 발급을 시도했다. 해당 방법은 이후 프로젝트에도 사용하기 위해 기록용으로 작성하겠다.  서론 처음엔 certbot을 통해 인증서를 발급받는 과정이 잘 이해되지 않았지만 다들 이렇게 진행하나보다 하고 웹 상에서 떠도는 방법으로 진행했다. 하지만 다들 된다는데 나만 안됨.. 계속 시도했지만 잘 안됬는데 그때마다 생각하지 못한 게 하나 있다. 인증을 한다는건 지금 인증서를 요청하는 내가 도메인의 주인이라는 것을 증명해야 한다. 근데 도메인에 certbot 명령어를 날린다고 내가 그 도메인 주인이라는 걸 어떻게 증명하지?..

프로그래밍 2024.11.20

[웹서버 개발] ACM으로 HTTPS 인증 적용

지난 시간동안 내 웹 서비스의 백엔드 서버를 HTTPS 인증 받기 위해 갖가지 노력을 했지만 알 수 없는 에러 때문에 번번히 실패 했다. 이전에 진짜 힘들게 했던 것 같은데 기록이라도 해두면 좋았을텐데.. 뭔가 해결하면 항상 꼭 기록해두기로 다짐하게 됨 현 상황은 certbot을 실패해서, ACM이라는 AWS의 인증서 발급 방식으로 HTTPS를 적용하는 방법을 시도해보려 한다. 어저께 AWS에 도메인을 호스팅 해주는 Route 53 서비스를 사용하여 도메인을 호스팅 했고,HTTPS 인증을 받기 위해 ACM에서 인증서를 발급받아놨다. 해당 내용은 여러 포스팅을 참고했다.  ACM을 AWS 서비스 내에서 인증 절차를 자동으로 수행하기 위해서는 Load balancer를 사용해야 한다. 로드 밸런서는 클라이언..

프로그래밍 2024.11.19

ssl 인증서 받기

오늘은 ssl 인증서 받는 방법을 바꾸어서 AWS 서비스에서 방법을 찾아보려했다.  ACM 서비스 사용해서 인증서 발급받고   가비아 도메인을 Route 53 에 네임서버를 연결한 뒤, 방법을 더 찾고 있는데 잘 안되서 절차를 다시 정리해야 할 것 같다. ACM 인증서 받아서 properties 디렉토리에 저장한 다음에 해당 설정으로 반영해주면 되지 않을까 생각하고 있는데 아직은 좀 막막하다.. 원래 이렇게 복잡했나ㅠㅠ 담주부터 또 다시 한번 계속 해볼예정임

프로그래밍 2024.11.17