일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Easy
- java
- #크랙미 5번
- Spring
- java8
- #심플즈
- leetcode
- springframework
- #크랙미 10번
- #크랙미4번
- #크랙미 9번
- #파밍
- #크랙미2번
- #리버싱
- #고클린
- #abex크랙미
- GraphQL
- #abex
- #보안뉴스
- #크랙미3번
- #abex크랙미4번
- 리버싱
- #크랙미
- #심플즈 크랙미
- #보안이슈
- Today
- Total
목록분류 전체보기 (120)
Halo World
//회사에 있는 사람 import java.util.Arrays; import java.util.HashSet; import java.util.Scanner; import java.util.Set; public class pro_7785_2 { public static void main(String args[]){ Scanner sc = new Scanner(System.in); int N=sc.nextInt(); String str1, str2; Set set = new HashSet();//회사에 있는 사람을 저장하기 위한 set for(int i=0;i=0; i--){ System.out.println(arr[i]); } } }
//듣보잡 import java.util.*; public class pro_1764 { public static void main(String args[]){ Scanner sc = new Scanner(System.in); Set set1=new HashSet();//듣도 못한 잡을 저장하는 set Set result=new HashSet();//듣보잡을 저장하는 set int N=sc.nextInt(); int M=sc.nextInt(); String[] set2=new String[M];//보도 못한 잡을 저장하는 배열 for(int i=0;i
//친구 네트워크 package ds2; import java.util.Scanner; public class pro_4195 { static Pair[] fn; static int fn_size; static int d[]; static class Pair{//이름과 부모인덱스를 저장하는 객체 String name; //int id; int pid; Pair(String name, int pid){ this.name=name; //this.id=id; this.pid=pid; } } public static void main(String args[]){ Scanner sc = new Scanner(System.in); int N=sc.nextInt(); for(int i=0;i
import java.util.Scanner; public class pro_1717 { static int N; static int[] p; static int[] d; static void init(){ for(int i=0;i
import java.util.Arrays; import java.util.Scanner; public class pro_11656 { public static void main(String args[]){ Scanner sc = new Scanner(System.in); String str=sc.nextLine(); int N=str.length(); String str2[]=new String[N]; for(int i=0;i
import java.util.Scanner; public class pro_11655 { public static void main(String args[]){ Scanner sc = new Scanner(System.in); String str = sc.nextLine(); char ch[]=str.toCharArray(); for(int i=0; i='a' && ch[i]='n' && ch[i]='A' && ch[i]='N'&& ch[i]
import java.util.Scanner; public class pro_11655 { public static void main(String args[]){ Scanner sc = new Scanner(System.in); String str = sc.nextLine(); char ch[]=str.toCharArray(); for(int i=0; i='a' && ch[i]='n' && ch[i]='A' && ch[i]='N'&& ch[i]
| 교착상태(Deadlock) - 다중 프로그래밍 시스템에서 아무리 기다려도 결코 일어나지 않을 사건을 기다리고 있는 하나 또는 그 이상의 프로세스들이 있는 상태- 둘 이상의 서로 다른 프로세스가 자신이 요구한 자원을 할당받아 점유하고 있으면서 상호간에 상대방 프로세스에 할당되어 있는 자원을 요구하는 경우에 발생 | 교착상태의 4가지 필요조건 1) 상호 배제(Mutual Exclusion) : 프로세스들이 자원을 배타적으로 점유하고 있어, 다른 프로세스들이 자원을 사용할 수 없게 만듦 (자원의 배타적인 제어권) 2) 점유와 대기(Hold & Wait) : 최소한 하나의 자원을 점유하고 있는 프로세스가 존재해야하며, 이 프로세스는 다른 프로세스에 할당된 자원을 추가로 점유하기 위해 대기함 3) 비선점(No..
공유 자료를 병행 접근하면 자료의 불일치를 초래하기 때문에, 자료의 일관성을 유지하려면 협력적인 프로세스들의 바른순서로 수행을 보장하는 매커니즘이 필요하다.이 때문에 임계 구역을 이용한다. | 임계영역(Critical Section) - 하나의 프로세스가 수정 가능한 공유 자원을 액세스하고 있을 때, 그 프로세스에 의해 참조되는 영역- 하나의 프로세스가 공유 데이터게 접근하면, 다른 프로세스는 그 공유 데이터에 접근할 수 없도록 보장 | 상호 배제(Mutual Exclusion) - 한 프로세스가 공유 기억장치 혹은 공유 파일을 사용하고 있을 때, 다른 프로세스들이 사용하지 못하도록 배제시키는 제어 기법 | 경쟁 조건(race condition) - 2개 혹은 그 이상의 프로세스들이 공유메모리에 읽기/쓰..