전체 글132 [Spring Security] SecurityContextHolder 내부구조와 PasswordEncoder 📌 SecurityContextHolder 내부구조 스프링 시큐리티는의 내부구조는 위 사진과 같이 서로 겹겹이 감싸고있다. SecurityContextHolder -> SercurityContext -> Authentication -> Principal -> GrantAuthority 코드로 확인할 수 있음. // SecurityContext에서 현재 사용자의 인증 및 보안 정보를 가져옵니다. SecurityContext securityContext = SecurityContextHolder.getContext(); // 현재 사용자의 인증 정보를 가져옵니다. Authentication authentication = securityContext.getAuthentication(); // 현재 사용자의 주.. 2023. 10. 28. [OS] 파일 시스템 종류와 특성 운영체제가 보조기억장치에 접근할 때는 블록 단위로 접근한다. 파일에서도 메모리와 같이 연속적으로 블록을 할당할 경우 외부 단편화가 발생할 수 있기 때문에 불연속적으로 블록을 할당한다. 어떻게 불연속적으로 할당된 파일에 접근할지에 따라서 FAT 파일시스템과 아이노드 파일 시스템으로 나눌 수 있다. FAT 기반 파일 시스템 저용량 저장장치에서 주로 사용하는 방법으로 FAT를 활용하는 파일시스템이다. 블록 주소와 다음 블록 주소가 매핑되어있고 첫 번째 블록 주소가 어딘지 알고 접근한다. FAT 파일 시스템 상에서 디렉터리에 어떤 파일의 첫 번째 블록주소가 어디인지 디렉터리 정보안에 포함되어 있어서 운영체제는 디렉터리의 정보를 보고 첫 번째 블록주소가 어디인지 알아내서 FAT를 참조한다. FAT 파일 시스템은 .. 2023. 9. 12. [OS] 파일과 디렉터리 파일 시스템이 관리하는 대상인 파일과 디렉터리에 대해 알아보자 파일 시스템 파일과 디렉터리를 관리하는 커널의 한 부분 다양한 파일 시스템이 있고 여러 파일 시스템을 동시에 이용할 수 있다. 파일 보조기억장치의 저장된 의미있는 정보의 집합 구성요소 이름 실행하기 위한 정보 메타데이터 / 속성 $ stat 명령어로 확인 가능 응용프로그램이 파일에 접근하기 위해서는 시스템 콜을 통해 접근해야함 운영체제가 파일에 접근할 때는 블록 단위로 접근하게 된다. 디렉터리 계층적으로 관리된다. 루트디렉터리 : 최상단 디렉터리( / ) 절대경로와 상대경로가 있다. 절대경로 : 루트 디렉터리부터 현재 파일까지의 전체 경로 상대경로 : 현재 경로를 기반으로 한 파일의 경로 . : 현재 디렉터리 .. : 상위 디렉터리 ~ : 홈.. 2023. 9. 11. [OS] 요구 페이징, 스래싱, 페이지 교체 알고리즘 요구 페이징 처음부터 모든 페이징을 적재하지 않고 페이지 폴트가 발생하면 그 때 페이지를 적재한다. 순수 요구 페이징 아무 페이지를 적재하지않고 실행하는 방법으로 첫 명령어 실행부터 페이징 폴트가 발생하며 적당한 페이지가 적재된 이후부터 페이지 폴트가 감소한다. 스래싱 지나친 페이지 폴트로 인해 페이지 교체에 너무 많은 시간을 소요하여 성능이 저하되는 문제이다. ⭐ 멀티프로그래밍의 정도가 늘어나면 CPU 이용률이 늘어나다가 너무 많은 프로세스를 적재한 이후 부터는 CPU 이용률이 내려가게된다. 이 이유는 스래싱이 발생하기 때문이다. 따라서 동시에 실행되는 프로세스 수를 늘린다고 해서 반드시 CPU 이용률에 비례하여 높아지는 것은 아니다. 페이지 폴트를 줄이려면 보조기억 장치로 내보낼 페이지와 메모리에 적.. 2023. 9. 10. [OS] 페이징과 페이지 테이블 스와핑(swapping) 프로세스를 보조기억장치의 스왑영역으로 쫒아내고 당장 필요한 프로세스를 적재하는 메모리 관리 기법으로 프로세스의 전체 크기가 메모리보다 큰 상황에서도 프로세스를 동시에 실행시킬 수 있다는 장점이 있다. 스왑 아웃(swap-out) 프로세스를 보조기억장치 스왑영역으로 내쫒는 것 스왑 인(swap-in) 스왑 아웃된 프로세스를 메모리에 적재하는 것 스왑 영역 스왑 아웃된 프로세스가 적재되는 보조기억장치 영역 연속 메모리 할당 프로세스를 메모리에 연속적으로 배치하는 방식 연속 메모리 할당 방식은 외부 단편화라고하는 용량 낭비의 문제를 야기할 수 있다. 외부 단편화 : 프로세스들이 실행되고 종료되고 반복하면서 빈 공간이 생기는 메모리 낭비 현상. 해결방법으로 페이징이 있다 페이징 물리 메.. 2023. 9. 10. [OS] 교착상태와 해결 방법 교착상태(deadlock) 두 개 이상의 작업이 서로 상대방의 작업이 끝나기 만을 기다리고 있기 때문에 결과적으로 아무것도 완료되지 못하는 상태. 둘 이상의 프로세스나 스레드가 서로 필요한 자원을 얻지 못하고 무한히 대기하는 상태. 교착상태의 발생 조건 아래의 4가지 조건을 모두 만족했을 때 교착상태의 발생 가능성이 있다. 상호 배제 : 동시에 자원 사용이 불가능한 경우 점유와 대기 : 자원을 할당받을 채 다른 자원의 할당을 기다리는 경우 비선점 : 강제로 자원을 빼앗을 수 없는 경우 원형 대기 : 자원을 원형으로 대기할 경우 교착상태 해결 방법 교착상태 예방 교착상태 발생 조건 중 네가지 중 하나를 없애는 것 교착상태가 발생 배경 원천을 차단한다. 교착상태가 발생하지 않음을 보장할 수 있지만 여러 부작.. 2023. 9. 10. 이전 1 ··· 7 8 9 10 11 12 13 ··· 22 다음