가상머신에 대해 알아보자
Linux (리눅스) 1991년 9월 17일 리누스 토르발스가 처음 출시한 운영 체제 커널인리눅스 커널(kernel)에 기반을 둔 오픈 소스 유닉스 계열 운영 체제이다. 또한 다중 사용자, 다중 작업(멀티테스킹, 멀티스레드)를 지원해준다. 커널(kernel)은 운영체제의 주요 구성 요소이다. 커널은 다음과 같은 4가지 주요 기능을 수행하며, 또한 운영체...
Virtualbox에 Debian을 설치하는 과정
리눅스 커널 보안 모듈인 SELinux와 AppArmor에 대해 간단하게 알아보자
42seoul Born2beRoot 프로젝트 Mandatory에서 요구하는 sudo 설정 과정이다.
42seoul Born2beRoot 프로젝트 Mandatory에서 요구하는 패스워드 정책 설정 과정이다.
방화벽(Firewall)과 UFW에 대해 알아보자!!
SSH에 대해 알아보자!
42seoul Born2beRoot 프로젝트 Mandatory에서 요구하는 스크립트 작성 및 설정 과정이다.
유저 관련 명령어 유저 조회 모든 유저 출력 root와 useradd 또는 adduser를 통해 생성한 유저 계정 출력 유저 추가 useradd 유저 생성 유저 생성 및 유저 홈 디렉토리 생성 유저 패스워드 생성 adduser adduser 명령어도 유저를 추가할 수 있다. 그러나 useradd와 달리 유저 홈 디렉토리를...
42seoul Born2beRoot 과제의 보너스 파트 중 하나인 lighttpd, MariaDB, PHP를 이용해 WordPress를 구축하는 과정이다.
Mandatory Part 이 프로젝트는 세그먼트(segment)를 통해 다양한 지점(x, y, z)을 연결하여 풍경의 단순화된 "골격"(wireframe) -프랑스어로 'fils de fer', 즉 프로젝트 이름 FdF - 그래픽을 만드는 것이다. >세그먼트(segment) 프로그램에 정의된 특정 영역으로, 코드, 데이터 등이 이에 해당된다. 세그먼트...
등각 투영법(Isometric Drawing)은 기술 및 엔지니어링 도면에서 3차원 개체를 2차원으로 시각적으로 표현하는 방법이다.
MiniLibX ?
hooking? 소프트 웨어 공학 용어로, 운영 체제나 응용 소프트웨어 등의 각종 컴퓨터 프로그램에서 소프트웨어 구성 요소간에 발생하는 함수 호출, 메세지, 이벤트 등을 중간에서 바꾸거나 가로채는 명령, 방법, 기술이나 행위를 말한다.
MiniLibX(이하 mlx) 라이브러리 내 마우스 관련 함수들을 정리한 것이다.
브레젠험 직선 알고리즘(Bresenham's line algorithm)은 컴퓨터 그래픽스에서 복잡하고 계산을 느리게 만드는 실수 계산을 배제하고 정수 계산만으로도 직선을 그리기 위해 만들어진 알고리즘이다.
Mandatory Part 클라이언트와 서버의 형태로 통신 프로그램을 생성해야 한다. 서버를 먼저 시작해야 하며, 시작된 후에는 해당 PID를 표시해야 한다. 클라이언트는 다음을 매개변수로 사용한다. 서버의 PID 보내야 하는 문자열 클라이언트는 매개변수로 전달된 문자열을 서버에 전달해야 한다. 문자열이 수신되면 서버는 문자열을 표시해야 한...
42Seoul 과제 중 하나인 Philosophers 과제 요구 사항을 정리한 포스트이다.
42Seoul의 Philosophers 과제에서 허용되는 External functions를 정리한 포스트이다.
뮤텍스란? 뮤텍스(Mutex)는 상호 배제(Mutual Exclusion)의 약자로 락(Lock)이라고도 한다.
에츠허르 다익스트라(Edsger Wybe Dijkstra)가 제안한 교착 상태(DeadLock)에 대한 해법으로 두개의 원자적(Atomic) 함수로 제어되는 정수 변수로 멀티프로그래밍 환경에서 공유자원에 대한 접근 제어 방법
뮤텍스와 세마포어 세마포어와 뮤텍스 모두 여러 프로세스 또는 쓰레드가 임계 영역을 동시에 접근하지 못하도록 막는 메커니즘이다.
Process와 Thread CPU는 OS에 따라 Process 단위 또는 Thread 단위로 프로그램을 처리한다. (Linus, Unix의 경우 Process 단위, Window의 경우 Thread 단위) Process/Thread는 상태(state)를 가지고 있는데, OS가 Process/Thread를 효율적으로 관리하기 위해 존재한다. 상태는 위...
42Seoul의 과제 중 하나인 Minishell 과제의 요구 사항을 정리한 포스트이다.
42Seoul의 Minishell 과제에서 허용되는 External functions를 정리한 포스트이다.
컴파일러 공통 과정 컴파일러가 컴파일 하는 과정은 여러 단계로 이루어져 있으며, 컴파일러의 종류에 따라 다르다. 하지만 공통적으로 수행하는 과정이 존재한다. 컴파일러는 어휘 분석(Lexical) → 구문 분석(Syntax) → 의미 분석(Semantic) → 파싱(Parsing) → 중간 코드 생성 (Midi Code Generation) 과정을 거친다...