목록분류 전체보기 (55)
5 DERECHA
시스템 콜 구현 (커널 모듈) 문자 디바이스 드라이버 구현 SDK로 구성해서 유닉스 소켓으로 Systemd 서비스 데몬 구현 (client로 부터 다수의 요청을 받아서 활동 - 요청이 없으면 서비스 데몬이 활동 안 함(메모리가 서비스가 요청할 때만 동작하니 좀더 효율적으로 사용 가능하다))
1. IPC (1) IPC의 종류 1) Inter process 통신 2) 물리 메모리 상에서 동일한 영역을 사용하는 공간을 3) 데이터가 오가지 않아서 프로세스 끼리 제어권을 위한 신호를 전달 (2) 프로세스 생성 및 관리 fork - 새로운 프로세스를 생성 (같은 코드를 실행함) execve - 새로운 프로그램이 시작 ( stack이나 register 값 다 날라감) 3. Systemd : 커널이 가장 처음 띄우는 init process로 가장 많이 사용되는 프로그램 데몬 = 백그라운드로 오랫동안 길게 떠있는 프로세스, init 시스템이 데몬을 관리함 systemd 서비스 데몬 = 보이지 않는 곳에서 열심히 일하는 것 => Systemd서비스는 demon으로 이루어져있다. 4. System Demon..
0. Systemcall 사용 1) SYSCALL_DEFINE0 or SYSCALL_DEFINE1 할때 괄호({}) 사용하기 1. 커널 모듈 만들기 1) LKM(Loadable Kernel Module) usb를 꽃을 것도 아닌데 커널에 올리지 않기 위해서, -> 부팅시간이랑 메모리 절약 가능 근데 문제는 버전이 정확히 맞아야한다. 2) 새로운 커널 설정(KConfig) 추가하기 make menuConfig 할때 보임 2-1) 커널 설정 문법 1) 원하는 폴더에서 Kconfig 만듬 2) linux/drivers에서 Kconfig에서 마지막에 더한 폴더 붙이기 (마지막일 필요는 없으나 그 순서대로 빌드함) 3) ARCH=arm64 make menuconfig로 설정 4) 새로 추가한 driver? 모듈?..
1. The basics of operating system (1) Operating System An operating system (OS) is a software program that manages computer hardware and software resources and provides common services for computer programs. The OS is responsible for providing an interface between the user and the hardware, controlling and coordinating the use of the computer's resources, and providing a platform for running app..
1. Header (1) #pragma once #include "windef.h" #include "stdint.h" #include "MultiBoot.h" #include "Hal.h" #define PMM_BLOCKS_PER_BYTE 8 #define PMM_BLOCK_SIZE4096 #define PMM_BLOCK_ALIGNBLOCK_SIZE #define PMM_BITS_PER_INDEX32 namespace PhysicalMemoryManager { voidInitialize(multiboot_info* bootinfo); void SetBit(int bit); void UnsetBit(int bit); uint32_t GetMemoryMapSize(); //메모리맵의 크기를 얻어낸다. ui..
1. Concept Process and Thread are fundamental concepts in computer science and operating systems, used to manage the execution of tasks or programs in a computer system. (1) Process A process can be thought of as an instance of a program in execution. It consists of a program code, data, and system resources such as memory, file handles, and CPU time. A process has its own memory space and runs ..
Assignment sudo apt install vim : I missed that part,, the thing was that it only downloaded vi in linux ubuntu,,, so it is working in vi,, not vitm[vim command]p : pastey : copyv : selectdd : delete ★★★ sh -x homeworkd.sh a (you can see all command in script) 1. Understanding the Linux Development Environment 1) Build & Host & Target 1. Build: The build system, also known as the development sys..
Basic Shell Script A shell script is a program that is written in the shell language, which is used as the command-line interface for Linux and other Unix-like operating systems. Shell scripts are used to automate repetitive tasks, run commands in a specific sequence, or perform other tasks that require a series of commands to be executed in a specific order. Here's an example of a simple shell ..