파이썬에서 JWT를 사용하기 위해 PyJWT를 사용할 수 있다. https://pyjwt.readthedocs.io/en/latest/usage.htmlhttps://pyjwt.readthedocs.io/en/latest/Flask_JWT에서 사용하는
작은 프로젝트를 하면서 처음에 클라이언트 사이드 랜더링으로 구현한 후 이를 전부 서버사이드 랜더링으로 바꾸면서 클라이언트 사이드 랜더링과 서버사이드 랜더링에 대해서 학습할 수 있었다 특히 토큰을 로그아웃 시키는 방법에서 고민이 많았다. 클라이언트에서 토큰을 제거해서 무
개발자로 커리어를 전환하고자 한지 어느덧 일년이 넘었고 이년째에 접어들고 있다. 초기 5개월은 부트캠프를 통해 학습했다. 자바로 for문을 버벅거리며 쓰던 것으로 시작해서 5개월 동안 빠른 성장을 얻었다. 가장 좋았던 것은 프로그래밍에 대해 어떻게 학습하면 될지, 프로
서버사이드 랜더링, JWT 토큰을 사용한 로그인을 사용하여 간단한 문지캠퍼스 주변에 관한 정보공유 사이트를 만들었다 헷갈렸던 서버사이드 랜더링 개념이 무엇인지, JWT 토큰 방식에 대해 알게되었다유저의 비밀번호를 저장할 때 암호화 하는 방식을 적용해보았다알고리즘 39문
이분탐색, 분할정복, 스택, 큐, 우선순위에 대한 개념을 정리했다.이 과정에서 트리, 이진트리에 대한 개념을 복습했다.학습한 개념에 대해 공유하는 스터디를 했는데 안다고 생각한 개념도 막상 말하다보니 헷갈렸다. 앞으로 2주 남았는데 2주 동안도 새로운 조원들과 계속해서
지난 주차 문제들은 조원들끼리 시간을 재고 다양한 문제를 풀어본 것이 많은 도움이 되었다. 역시 알고리즘은 양치기 인가. DP, 그리디에 관한 문제를 풀면서 관련 알고리즘을 학습했다. knapsack, LCS 등 knapsack은 아이템이 한 개만 있을 때 두개만 있을
지난 주차 문제들은 조원들끼리 시간을 재고 다양한 문제를 풀어본 것이 많은 도움이 되었다. 역시 알고리즘은 양치기 인가. DP, 그리디에 관한 문제를 풀면서 관련 알고리즘을 학습했다. rithms-TIL 행렬 곱셈 문제가 어려웠다.레드블랙트리에 대해 학습했다 관련해서
레드블랙트리는 자가균형이진탐색트리(self-balancing binary tree)의 일종이다. 이진트리는 자식 노드를 최대 2개를 갖는 트리이다. (그림출처 위키(https://en.wikipedia.org/wiki/Binary_tree이진탐색트리는 탐색
묵시적 가용리스트를 사용하면 (implicit free list) 블록 할당 시간이(fist fit 전제) 전체 힙 블록의 수에 비례하기 때문에 블록 수가 사전에 정해져 있고, 작은 특별한 케이스가 아니라면 적합하지 않다. 기존에 implicit free list를 사
명시적 할당기는 명시적으로 할당된 블록을 반환해줄 것을 요구묵시적 할당기는 할당된 블록이 더이상 프로그램에 의해 사용되지 않고 블록을 반환하는지를 할당기가 검출할 수 있을 것을 요구묵시적 할당기 : 가비지 컬렉터자동으로 사용하지 않은 할당된 블록을 반환해주는 것을 가바
BSD소켓 : 버클릿 연구자들이 만들어서 Berkeley sockets ( Berkeley Software Distribution) 이라고 불린다. 위키 : 네트워크를 통해서 데이터를 보내고 받는 엔드포인트(endpoint, 끝점)의 역할을 하는 소프트웨어 스트럭쳐다.
Malloc, RBTREE, tiny웹서버, 프록시를 구현해 보았다. C언어를 조금 더 알게되었다 RBTREE를 통해서 균형 이진 탐색 트리에 가까워지기 위해 어떤 로직들이 사용되는지 알게 되었다. Malloc을 통해서는 메모리 할당을 어떻게 하는지에 대해 알게 되었다
스레드는 실행 중이거나, ready quque에 줄 서 있거나 wait que에 줄 서 있는 등 한 곳에 줄 서 있게 된다. 줄 서 있게 되면서 스레드를 직접 prev, next 필드가 있는 list_elem을 줄세운다.thread 마다 각기다른 elem을 갖고 있어,
OS 책: “Operating Systems: Three Easy Pieces”카이스트 권영진 교수님 강의 https://velog.io/@bongf/Pintos-1.-Priority-Scheduling 여기 작성했던 부분 pintOS에서는 이렇게 condit
커맨드라인에서 프로그램명 + 인자들을 받았을 때 이를 어떻게 처리하고 어디에 전달할지를 학습하며 전체 흐름을 학습했다.파일을 open, close하고 프로세스마다 이를 어떻게 관리하는지(파일 디스크립터 테이블을 통해, 상호 간에 수정하지 못하도록 lock을 걸면서) 학
용어를 잘 정리해야 한다. va에 가상 페이지가 있고 물리적 메모리에 물리적 페이지가 있다. pintos에서는 가상 주소에 있는 것을 페이지라고 하고 물리적 메모리에 올라가는 것을 frame이라고 한다. 우리가 만들어주는 struct page 엘리먼트는 사실 진짜 페이
파일의 내용을 물리 페이지에 매핑하고 관리하는 것 구현파일 매핑 관련해서 mmap_file 이라는 구조체를 만들고 이 구조체에 어떤 페이지부터 시작인지(가상 주소 시작 주소를 저장, 그리고 어떤 file을 저장했는지 file을 저장하고, 해당 데이터를 올릴 페이지를 연
지난 주에 해결 안되었던 문제를 동료의 질문과 조교님의 답변, 그리고 참고한 책으로 해결할 수 있었다. 래 문제 상황을 정리하기 위해 개념을 다시 간단하게 정리하고 넘어가야 한다 관련해서 https://www.youtube.com/watch?v=Q9DHaqlS
스왑공간이 추가되면 각 프로세스는 마치 큰 가상 큰 메모리가 있는 환상을 줄 수 있다. (인용, 책, 운영체제 아주 쉬운 세가지 이야기)스왑공간에 필요 없는 데이터를 올리고 필요할 때 스왑공간으로부터 데이터를 읽어오면서 큰 메모리를 제공해주는 것 같은 효과를 낼 수 있
파일 시스템의 파일의 이름과 연결되는 디렉터리 엔트리이다. 그래서 각각의 파일은 최소 하나의 하드링크를 갖고 있다. 추가로 하드 링크를 만들면, 그림 처럼 다른 디렉토리를 통해서 혹은 다른 이름을 통해서 접근할 수 있는 경로를 추가적으로 획득하게 된다. 이는 같은