본문 바로가기
반응형

분류 전체보기505

운영체제 - 임계구역,동기화(Monitor,try-finally,lock) Interlocked계열이 성능도 빠르고 우수하지만 정수만 사용할 수 있다는 단점이 있다. 임계구역 (Critical Section) Atomic 실행을 위하여 각 프로세스 혹은 쓰레드가 공유변수, 자료구조, 파일 등을 배타적으로 읽고 쓸 수 있도록 설정한 코드 세그먼트 또는 영역 임계 구역에 진입하는 쓰레드는 다른 쓰레드와의 동시 접근으로부터 상호배제(Mutal Exclusive) 되야 한다. 예시 - 화장실에 들어갈 때 문을 잠그고, 나올때에 여는 것 임계구역에 대한 요구사항 01 상호 배제(mutal exclusion) 한 프로세스가 임계 구역을 실행 중일때, 다른 어떤 프로세스도 임계 구역을 실행할 수 없다. 02 진행(Process) 임계구역 안에 반드시 하나의 프로세스를 선택하여 진입시키는 올.. 2023. 5. 16.
운영체제 - 프로세스 시스템 1. 프로세스(쓰레드)의 집합 운영체제에서 실행되고 있는 모든 프로세스들의 모임을 의미한다. 프로세스 집합은 운영체제가 프로세스를 생성, 관리 및 제어를 위해 사용된다. 이는 각 프로세스의 상태를 알 수 있고 프로세스 간의 스케줄링, 자원 할당 및 동기화 등을 관리하는데 사용된다. 2. 선행제약 부분 순서(partial order)성질을 갖는 것으로 이행성(transitive relation)을 가진다. 즉 p1,p2,...,pn의 프로세스가 있을 때, 선행 순서는 pi < pj로 표시된다. pi가 프로세스 pj의 실행을 선행해야한다 이는 pi프로세스는 pj가 시작하기 전에 완료해야 한다는 의미를 가지고 있다. pi < pj이고 pj < pk이면, pi < pk 이 성립한다. 선행 제약 관계가 없는 두 .. 2023. 5. 16.
C# - 2차원 배열 1. 초기화 및 값 할당 방법 int [,] = new int [3,3]; 01 초기화 구문을 사용하여 값 할당 int[,] array = new int[,]{ { 1 , 2 , 3 } , { 4 , 5 , 6 } , { 7 , 8 , 9 } }; 02 인덱스를 사용하여 값 할당 array[0,1] = 1; array[0,2] = 2; array[0,3] = 3; array[1,1] = 4; array[1.2] = 5; array[1,3] = 6; array[2,0] = 7; array[2,1] = 8; array[2,2] = 9; 03 반복문을 사용하여 값 할당 int n = 1; for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++ ) { array[i,j.. 2023. 5. 15.
백준 C# - 2738 2차원 배열 알아보러 가기 C# - 2차원 배열 1. 초기화 및 값 할당 방법 int [,] = new int [3,3]; 01 초기화 구문을 사용하여 값 할당 int[,] array = new int[,]{ { 1 , 2 , 3 } , { 4 , 5 , 6 } , { 7 , 8 , 9 } }; 02 인덱스를 사용하여 값 할당 array[0,1] = 1; array[0,2] = 2; a code-piggy.tistory.com using System; using System.Collections.Generic; using System.Text; namespace baek2 { class Program { static void Main(string[] args) { string s = Console.Rea.. 2023. 5. 15.
백준 C# - 25206 소수점 자릿수 알아보기 2023. 5. 15.
백준 C# - 1316 StringBuilder 알아보러 가기 C# - StringBuilder String String 개체는 변경할 수 없다. System.String 클래스에서 메서드 중 하나를 사용할 때마다 메모리에 새 문자열 개체가 생성되므로, 새 개체에 대한 공간을 새로 할당 되어진다. 그러므로 문자열 code-piggy.tistory.com using System; using System.Collections.Generic; using System.Text; namespace baek2 { class Program { static void Main(string[] args) { int n = int.Parse(Console.ReadLine()); int count = 0; while (n>0) { n--; bool.. 2023. 5. 15.
반응형