전체 글 172

3장

Histogram of CPU-burst durations  > 대부분 (80%)의 CPU burst(execution time) 은 8ms 로 집중 CPU Scheduler :  Process 내 Ready queue 를 core 들이 실행 할 수 있도록함. Process state 변화  1. running -> wait   (I/O대기)  2. running -> ready (할당시간 끝)  3. waiting -> ready  (I/O가 끝난뒤)  4. running -> Termination (실행 종료) T1 실행중..  T2 (high priority) > preemptive (선점형) : T1 중지 > T2 실행// 우선순위에 의해 계속 밀리면.. Race Condition 발생가능성 (기..

전공/운영체제 2025.03.31

2장-2

Thread lib User    : lib 에서 생성// Kernel : OS> POSIX : Thread 생성/동기화 , standard 문서 > 여러회사에서 implement > 대표적으로 UNIX > LINUX/MAC init -> create(&tid , &attr, runner , arrgc[]) -> join(tid, NULL)>create1. tid : 쓰레드 아이디를 넣고2. &attr (속성) : 옵션 넣고3. runner ,, : 실행할 행동 // 함수포인터4. arrg[]      : 거기에 들어갈 매개변수 >join1. tid 가 끝날때 까지 기다림2. 그 tid의 return 으로 NULL 을 받음 // 반환값 X > tid가 NULL을 줄때까지 기다림! fork() librar..

전공/운영체제 2025.03.30

2장

User computer    :  OS // 생성/종료 부모 > 자식 > 자식  // pid   : 순차적 tree 구조     > 자원공유 : All, 일부, NO         > virtual address space :  부모 address -> 자식  -> load  // PCB 분리         >  process 끼리 address process 독립fork() -> exec() -> exit()   // return 0 > OS에 의해 memory 해제                         -> abort() // 강제 종료 if) 부모쪽 > 자식은 OS 에서 자동해제   >  pid = wait(&status) : 자식의 staus 및 pid받아옴// 좀비     : 자식 X ..

전공/운영체제 2025.03.27

Process-2

시스템콜 : 인자오류 철저하게 검사함 > 그래야 커널 손상 down 유저 fork() -> ARM64_sys_clone() -> kernel_clone() -> copy_process()> debug/tracing/cat avilabe_filter_function | grep copy_process>> 유저가 fork() 로 process 생성 할때 벌어지는일 grep 그전에.. 계층구조부터 보자면pid 2571 bash     // 부모 ,기본2720   a.out   // 자식 , 프로그램 실행명 // 이 코드에서 fork() 실행2721     a.out // fork()로 만든 자식 , 순차적임 자, 이제 ftraceLog로 아까 grep 한걸 보자. bash-2571     copy_proces..

CH 2.

25.3.21  Protocol : A B 의 Rule : format(syntax) : Packet 의 Header , Payload 규격 : semantics       : 규격 안의 define 값들 (ex) Header 구조체 내의 1의 값을 A 로 하자! : order               : Wating, sending, data를 보내면 OK를 해주는 Protocol Architecture 를 위해서는..1. 전화망 이라면 경로를 , 인터넷이라면 목적지를 미리 set 해두어야함                                    // Packet의 Header에 목적지 주소를 넣음2. 상대방이 Wating state 여야함. (전송받을 상태가 되어있는지) // HW 적으로3...

Process

process ~= TaskHDD -> 메모리에 로드 후 OS가 관리하는 단위(소스코드,등등) 멀티쓰레딩 : 리눅스 -> 메모장 + vi에디터 + .. Task(process)의 속성을 담은 구조체 -> task_struct Thread : user 가 생성한 가벼운 process            : context switching (Task 전환) 시간 down            : 소속 process 내에 주소공간 ( 전역변수,파일 등)을 공유   Kernel 에서는.. 쓰레드, process 동등하게 관리                             > task_struct 에서 thread 그룹인지 정도만 확인명령어 ps : 터미널 내 process 확인 // PID : process ..

trace32, Driver분석

trace32: sys-down sys-up> vmlinux file in with CrossCompile : (build) PC ( intel, AMD) -> 동작 : ARM  1. PC : 우분투 or WSL 로 리눅스 -> git bc bison flex + a 설치 ,                                                    + crossbuild-essential -armhf :                                                         // h : hard, f : floating  > 수동소수점2. git clon ~~ 으로 가져옴3. build : bcm2709_defconfig : bcm2709에 관련된 컴파일 ..

Lab. 01

windows OS    : GUI  이벤트처리 & 메세지 시스템Windows OS : 이벤트(입력, 시스템 이벤트 등)가 발생하면 메시지 시스템 큐에 저장됨.개별 애플리케이션은 OS로부터 자신의 메시지 큐를 할당받음.프로그램이 메시지를 하나씩 가져와서(Message Loop) 처리해야 함.각 메시지는 Message Handler(메시지 핸들러) 를 통해 적절한 동작 수행.멀티태스킹 vs 멀티스레딩멀티태스킹: 여러 개의 애플리케이션을 동시에 실행하는 개념 (ex. 음악 들으면서 문서 작성).멀티스레딩: 하나의 프로그램에서 여러 작업을 동시에 처리하는 개념(ex. 채팅 프로그램에서 Send와 Receive를 각각 별도 스레드로 실행).싱글스레드: 메시지를 보낼 때 받는 기능이 멈춤 → 여러 개 보낼 시 문..

1장

system : input -> output signal processing 초음파 (WhiteBlack) : 이미지 좌표계(y가 아래로 갈수록 증가) : x,y (2차원행렬) > I(x,y) = N(밝기) // 0~255 영상/사진 (color)      : R(x,y) ,G(x,y) ,B(x,y) 2차원행렬 3개의합(중첩)으로 표현   + 3D : R(x,y,t), G(x,y,t), B(x,y,t) : 같은시간에 RGB를 합침  Analog : 연속시간Digital  : 이산시간 ADC : 표양부! 1. Sampling : 표본화      표본화주기: T -> 신호 x(nT) 2. Quantization: 양자화      ex) 3.5 3. Encoding : 부호화        2진수로 표현  //..

전공/DSP 2025.03.10

1장

bootstrap program (bootloader) ~= firmware  : in ( ROM, EPROM) > 시스템 초기화, kenel 을 메모리에 올림+kernel  : 항상돌아가는 1개의 program+divice: interrupt 발생! > loacal buffer > I/O : divice,localbuffer control > CPU : main memory로 move                                       // DMA 사용시에는 바로 메모리로 (CPU X)      software Interrupt  : Command ( user -> privileged 모드변경)        Exception               : CPU내부에서 발생 (divi..

전공/운영체제 2025.03.08