전체 글
-
[java] 이분검색알고리즘 2023. 3. 21. 14:08
package 정렬; import java.util.*; public class 이분검색 { public static int solution(int size, int key, int[] arr) { int answer=0; Arrays.sort(arr); //이분검색 //반으로 나눠서 int left=0; int right=size-1; while(leftkey) { right=mid-1; }else { left=mid+1; } } return answer; } public static void main(String[] args) { 이분검색 T = new 이분검색(); Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int M = sc.nextI..
-
[java] 기본 정렬 알고리즘카테고리 없음 2023. 3. 21. 14:07
swap 알고리즘 public static void swap(int[] arr, int idx1, int idx2) { int temp = arr[idx1]; arr[idx1]= arr[idx2]; arr[idx2] = temp; } 버블정렬 public static void BubbleSort(int[] arr) { for(int i=0; i swap public static void SelectSort(int[] arr) { for(int i=0; i
-
[Android/ kotlin] STOMP 를 이용한 실시간 양방향 채팅 기능 구현Android/kotlin 2023. 2. 16. 02:25
Spring boot에서 STOMP, Redis, Websocket을 이용해 채팅서버를 만들게 된다. 그렇다면 안드로이드에서는 stomp를 활용한 채팅기능을 구현하려면 어떻게 코드를 구성해야 할까? 1. 퍼미션 추가 //chat implementation fileTree(dir: "libs", include: ["*.jar"]) // stomp 라이브러리 추가 api "com.github.NaikSoftware:StompProtocolAndroid:1.6.4" //implementation 'com.github.NaikSoftware:StompProtocolAndroid:1.6.5' implementation 'com.github.bishoybasily:stomp:2.0.5' implementation ..
-
segmentationCS공부/운영체제 2022. 10. 14. 23:35
segmentation 분할 1. address space를 logical segments로 분할 segment: 특정 길이를 가지고 있는 연속적인 주소공간 address space공간에서 논리적인 단위(code,stack,heap)로 segentaiton 각 segmet는 독립적으로 함 physical memory의 서로 다른 부분에 할당 -공간을 키우거나 줄이거나 할 수 있음 -각각의 segment에 대한 base,bounds값이 필요하게 됨 2. physical address = offset+ base offset = virtual address - start address of segment 힙에서 얼만큼 떨어져있는지 offset 3. segmentation fault or violation he..
-
주소 변환 address translationCS공부/운영체제 2022. 10. 14. 21:45
1.메모리 가상화(memory virtualizing) limite direct execution (LDE)과 같이 유사한 전략을 사용 효율성과 control을 갖추려면 hardware 지원을 받아야함 2. 주소 변환 적용 vitual address -> physical address 매핑 시 주소 변환 적용 하드웨어를 설정하기 위해서는 운영체제가 관여: 메모리를 관리하기 위해서 관여, 물리적인 메모리공간에서 어떤 위치가 비어있고 사용하고 있는지 track -가정을 토대로 수행하게 됨 1) 연속된 형태로 매핑 2) address space공간의 크기< physical memory 3) address space 크기가 같다 3. address space는 address 0 부터 시작하지만 physical ..
-
Multiprocessor SchedulingCS공부/운영체제 2022. 10. 14. 18:18
Multiprocessor Scheduling 1. multicore: 다수의 cpu코어가 하나의 single chip에 내장 cpu가 증가한다고 더 빨라지는 것은 아니다. thread를 이용해 병렬로 동작하게 해야함 2. Cache(SRAM) Main Memory(DRAM) -정적으로 동작 -메인메모리에서 자주 사용되는 데이터의 복사본을 저장 -전원을 공급되고 있는 한 내용을 저장 -접근속도가 빠르지만 가격이 비싸고 집적도가 낮아서 대량제작이 어렵고 구조가 복잡 -시간 지역성: 데이터에 한번 접근하면 가까운 시일내에 똑같은 데이터를 다시 접근하기 쉬움 -공간 지역성: 특정 X주소에 접근했을 때 주변 데이터를 접근하게 쉬움 -실제 느린 메모리를 빠르게 보이게끔 만들어줌 -데이터들을 저장 -캐시메모리에 비..
-
Multi-level Feedback QueueCS공부/운영체제 2022. 10. 14. 17:12
MLFQ 1.Goal -turnaround time 최적화 -response time 최소화 : RR는 responsetime은 최소화할 수 있지만 turnaroundtime은 안좋았음 2.정보없이 스케쥴링 할 수 있는 방법이 무엇인가 해서 개발하게됨 과거 데이터를 기반으로 미래를 예측하는 것을 어떻게 할지 ? 3.프로세스는 다양한 큐사이에서 움직일 수 있음 (다른큐로 이동가능 각각의 큐에서는 독립적으로 실행가능) 4. 서로 다른 큐를 가짐 -각각의 큐는 서로 다른 우선순위를 가짐 -더 높은 우선순위가 먼저 실행 5. Rule 1: if Priority(A) > Prioriy(B), A runs (B doesn't) Rule 2: if Priority(A) = Prioriy(B), A&B run in R..