OS의 정수라고 할 수 있는 가상메모리에 대해 음미할 수 있는 시간이었습니다.
안녕하세요. 김용욱입니다. 이번 나만의 무기 만들기 프로젝트를 위한 주제로 '(가제)라이브드로잉' 서비스를 준비하게 되었습니다. 읽어보시고 궁금한 점이 있으시면 편하게 물어봐주세요! 😀😀워라벨이 중요시 되면서 직장인들이 여가 시간을 알차게 보낼 수 있는 취미활동,
학사측의 요청으로 코드는 공개하지 않습니다!21.02.04 ~ 21.02.17Kaist-PintOS 중 User Program 프로젝트의 Alarm Clock, Priority Scheduling, Advanced Scheduling을 구현하는 프로젝트였습니다. OS의
응용계층에서 전송할 메세지를 물리계층에 전달하기 위한 역할을 전송계층에서 담당하고, 소켓 프로그래밍을 통해 진행됩니다. 어려웠던 용어들과 소켓프로그래밍 과정에 대해 그림과 함께 최대한 쉽게 풀어 써보겠습니다. 리눅스 환경을 기준으로 작성해보겠습니다. 포트(Port)?
PintOS 프로젝트 Github 링크21.01.28 ~ 21.02.04PintOS에서 Alarm Clock, Priority Scheduling, Advanced Scheduling을 구현하는 프로젝트였습니다. OS의 기본 개념과 구성요소들을 알 수 있는 기회였습니다
통신을 위해서는 바이너리 데이터를 주고받는 과정들이 필요하고, 이는 네트워크를 통해 진행됩니다. 네트워크는 어떻게 통신하고 계층화를 어떤 방법으로 적용하였는지에 대해 알아보고, 프로토콜 중 대표적인 프로토콜인 OSI, TCP/IP, UDP와 각 프로토콜의 차이점에 대해
해당 포인터에서 원하는 만큼 떨어진 포인터에 접근하는 방법인 포인터 연산과 역참조에 대해서 포스팅 해보겠습니다.
Malloc Lab 프로젝트 Github 링크 21.01.15 ~ 21.01.21 C언어를 이용하여 malloc함수를 구현하는 프로젝트였습니다. 동적할당에 대해 이해할 수 있는 시간이었고, 가상메모리의 주소에 직접 접근하여 할당하는 경험을 할 수 있는 기회가 되었습
함수를 많이 사용하는 C코드의 실행속도를 높혀줄 수 있는 매크로와 인라인 함수에 대해 사용방법, 장단점 등을 포스팅 해보겠습니다. 매크로(Macros) 매크로는 #define으로 함수와 비슷한 동작을 하도록 정의하는 방법입니다. 진짜 함수는 아니고 함수처럼 동작하
사용자가 필요한 만큼의 메모리를 프로그램이 작동하는 도중에 할당받고자 한다면 어떻게 해야 할까요?
정렬된 순서를 보장하고, 멀티레벨 인덱싱을 통한 빠른 검색과 선형탐색까지 가능한 실전형 자료구조 B+ 트리입니다.
B+ Tree 프로젝트 깃헙 링크 C언어의 포인터만을 이용하여 DB의 index를 구현할 때 많이 사용한다고 하는 B Tree와 B+Tree를 구현하는 프로젝트였습니다. C언어를 처음 공부하였기 때문에 포인터를 사용하는데에 익숙하지 않았지만, 빠르게 C언어에 공부할
B트리는 이진트리에서 발전되어 모든 리프노드들이 같은 레벨을 가질 수 있도록 자동으로 벨런스를 맞추는 트리입니다.
LCS는 주로 최장 공통 부분수열(Longest Common Subsequence)을 말합니다만, 최장 공통 문자열(Longest Common Substring)을 말하기도 합니다.
위상정렬은 순서가 정해져 있는 노드들을 정렬하는 알고리즘입니다. 그래프에서 순서는 방향성으로 나타내며, 정해진 순서를 지키면서 모든 정점을 정렬하는 것이 목표입니다.
여러 자료형과 빠른 시간복잡도를 가진 메스드들을 유기적으로 사용하면 코드를 짜는 시간과 동작하는 시간 모두 줄일 수 있습니다. 자료형별 많이 사용하는 메서드들을 시간복잡도와 함께 정리해 보았습니다.
해당 포스팅은 컴퓨터 시스템의 요약정리 입니다. 1.5 캐시의 중요성 이전 포스팅에서 hello 프로그램이 실행될 때 하드웨어에서 어떠한 과정을 거쳐 작동되는지 적어보았습니다. 다시한번 간략하게 정리하면 hello 프로그램의 기계어 인스트럭션들이 하드웨어에 저장
해당 포스팅은 '컴퓨터 시스템'의 요약정리입니다. 서론 컴퓨터 시스템은 하드웨어와 시스템 소프트웨어로 구성되며, 이들이 함께 작동하여 응용 프로그램을 실행합니다. 시스템에 관한 공부는 C프로그램을 실행하면 어떤 일이 일어나고, 어떻게 출력하며, 종료되는지 까지의