분류 전체보기 168

6장-2

동기화 (Synchronization)  > CS 의 문제 해결>>  CS의 문제    1. Bounded_buffer //waiting    2. Reader and Writter   3. Dining_Philosophers  1. Bounded_buffer semaphore mutex = 1;  semaphore full      = 0; semaphore empty = n; /*wait(s){ while(s*/ [생산자] while(){ wait(empty) // 초기값 n > 초기실행 (빈칸 있음) wait(mutex) // 초기값 1 > 다른놈들 wait // 잠그고 CS // bufer ++ // queue 하나 채우고 signal..

6장

Race condition :   : P0, P1 이 동시에 fork > 누구에게 pid 를 먼저? critical section (CS)  : Common/ shared 변수, file, table/update 등등..   > 한 process 가 접근 -> 다른 process는 접근 X      > 데이터불일치/race condtion 등의 오류 예방> 해결[A]. Mutual Exclusion : Pi가 있으면 other process : X[B]. Progress              : CS 에 아무도 없으면 바로 진입[C]. Bounded waiting  : 여러개가 진입하려면 한개를 넣고 다른 건 일정시간 waiting (bound) 후 진입하도록     //단, 각 process가 멈추지..

전공/운영체제 2025.04.05

Z-T

// e^jw : 주파수영역    Z : re^jw : 복소수 영역 >>r = 1 :: Z= e^jw 일때 복소수영역을 주파수영역과 동일한 분석      1. Sampling 으로 원의 일부가 짤림  // 빨간선   > Sampling 1 당 점 하나씩2. x(n)     :  0부터 시작3. x(n-2) :  Sampling 2 만큼의 위상지연     > Time_Delay         푸리에 변환 vs Z-변환: 주요 차이점특성푸리에 변환Z-변환신호 종류연속 신호 / 주기적 신호이산 신호주요 용도주파수 성분 분석, 시스템 주파수 응답 분석이산 시스템 분석, 시간 지연 및 미래 신호 분석시간 지연시간 지연은 위상 변화로 표현됨직접적으로 시간 지연을 표현영역주파수 영역 (연속 주파수)Z-평면 (복소수 ..

전공/DSP 2025.04.02

4장

MultiPle_Processor Scheduling  > SMP( Symmetric Multiprocessing Prcoessing )  대칭적이다..: 모든 CPU 가 동일한 HW 구조     > 개별적으로 Queue 가 있더라도 같은 유형의 작업 수행 > Task 다른 Queue로 이동1. Common ready Queue : 스케쥴러가 모두 균등하게 분배 ( load balancing )/*     Load Balancing   > Push Migration : (주체) 바쁜놈 > idle 한테 주기적으로 Push!   > Pull   Migration : (주체) idle     > 바쁜놈한테 있는 waiting하고있는 것을받아옴    Prcoessor Affinity       >C1 의 P1..

전공/운영체제 2025.03.31

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..