전체 글
-
운영체제 3편카테고리 없음 2025. 12. 3. 14:37
📀 운영체제는 디스크를 어떻게 관리할까? 우리는 매일 파일을 저장하고, 삭제하고, 복사한다.하지만 그 순간 운영체제 내부에서 어떤 일이 벌어지는지는 대부분 알지 못한다.이번 글에서는 운영체제의 저장장치 관리(Storage Management) 가 실제로 어떤 역할을 하고,왜 개발자와 서버 엔지니어에게 중요한 개념인지 정리해 보고자 한다.1. 저장장치 관리란 무엇인가?저장장치 관리는 운영체제가 디스크(HDD, SSD)를 효율적이고 안전하게 관리하는 기능 전체를 말한다.단순히 “파일을 저장하는 기능”이 아니라 다음을 모두 포함한다.디스크 공간 할당 및 해제파일 시스템 관리입출력(I/O) 처리캐시와 버퍼를 통한 성능 최적화데이터 무결성과 복구접근 권한과 보안우리가 파일을 하나 저장할 때도,운영체제는 디스크 ..
-
운영체제 2편카테고리 없음 2025. 12. 3. 14:16
자, 저번편에 이어 그럼 운영체제가 뭐하는 녀석인지를 알아보려고한다. 일단 전체적으로 대충 훑자면 CPU 스케줄링메모리 관리파일 관리입출력 관리프로세스 관리네트워킹보호이정도가 있을것이다.이중 일단 CPU 스케쥴링에 대해 먼저 이야기해보려고한다일단 스케쥴링이 뭔지부터 생각해보자 운영체제의 CPU 스케쥴러는 Ready상태의 프로세스 중에서 어떤 프로세스에게 CPU를 할당할지 결정하는겁니다. 이걸 CPU 스케쥴러는 라고 합니다. 또한 Dispatcher라는게 있는데 이거는 CPU 제어권을 CPU 스케쥴러에 의해 선택된 프로세스에게 넘기는 작업을 합니다. 이 작업을 Context switch라고 합니다~ CPU 스케쥴링은 규모에 따라 장기 , 중기, 단기 스케쥴링으로 구분됩니다. 알아봅시다 일단 장기 스케쥴링 ..
-
운영체제 1편카테고리 없음 2025. 12. 3. 12:09
누군가가 나에게 운영체제가 뭐야? 라고 물었을때 나는 뭐라고 대답할 수 있는가를 문득 고민해봤다.흠 뭐랄까 오히려 그림이 그려지고 말로 하려니 막막한느낌이 들어 , 이제부터는 설명을 시작할때 사전적의미를 먼저 이야기하는것이 오히려 상대방의 답과 궁금증을 뽑아내는데에 유리하다고 판단하여 이 글을 작성한다(다 내가 보려고 만드는거지뭐..)그래서 결론적으로 "운영체제란 무엇일까요?" 에 대한 대답을 한번 해보겠다운영체제란 (OS) 컴퓨터 시스템의 자원을 효율적으로 관리하여 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있는 환경을 제공하는 여러 프로그램들의 모임이다. 그리고 응용 프로그램과 하드웨어 간의 인터페이스로서 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해준다,,! 물론 넓은 의미에..
-
토큰 갱신을 통한 자동 로그인 구현 가이드카테고리 없음 2025. 11. 21. 16:53
"유저가 로그아웃하기 전까지는 알아서 로그인 유지되게 하기”웹/앱 서비스를 만들다 보면 가장 많이 고민하는 기능 중 하나가 바로 자동 로그인이다.한 번 로그인하면 앱을 닫았다 다시 열어도, 다음 날 다시 접속해도,유저가 다시 로그인하지 않도록 하는 기능이다.이 자동 로그인의 핵심이 바로 토큰 갱신(Token Refresh) 이다. 왜 토큰 갱신이 필요한가?대부분의 서비스는 로그인 후 JWT(Access Token)를 발급받는다.하지만 JWT는 보안상 유효기간이 매우 짧아야 한다. -> 이 보안상문제는 다음 시간에 계속하겠다 (그림을 못그리겠음)예:Access Token: 10분~30분Refresh Token: 2주~4주문제는Access Token이 만료되면 로그인 상태가 풀린다.유저 입장에서는 갑자기 로..
-
Flutter -> get x 사용해보기카테고리 없음 2025. 2. 20. 10:59
lib/├── app/│ ├── bindings/│ │ └── home_binding.dart│ ├── controllers/│ │ └── home_controller.dart│ ├── data/│ │ ├── models/│ │ ├── providers/│ │ └── repositories/│ ├── modules/│ │ └── home/│ │ ├── views/│ │ └── widgets/│ ├── routes/│ │ └── app_pages.dart│ └── utils/│ └── constants.dart└── main.dart## 들어가며Flutter 앱을 개발할 때 가장 중요한 것은 효율..
-
백준 tree 구현 (TIL)카테고리 없음 2024. 10. 27. 17:16
안녕하세요! 오늘은 Tree 의 모든 순회 방법들을 swift 코드로 구현해보려고 합니다!! 이제 슬슬 문법도 편해지고 알고리즘을 구성하는방법들이 눈에 익기 시작하네요! 골드 5단계이긴 하지만 물골드라고 생각했던 저에게 발전해나가는 제 모습이 보여 재밌는 시간이네요! 오늘은 그래서 문제 1991 번 문제를 해결해보려고 합니다! 예에에에전에 java 로 트리를 구현했던 기억이 있어서 약간은 수월했던 문제입니다! 그럼 설명들어갑니다! 일단 트리의 순회에는 3가지 방법이 있습니다! 전위 순회, 중위 순회, 후위 순회 이렇게 3가지 방법이 있는데 전위 순회는 루트노드를 먼저 방문하는 방법입니다! 루트 -> 왼쪽 -> 오른쪽 순으로 모든 트리를 순회한다고 생각하시면 됩니다!! 중위순회는 간단하게 하면 왼-> 루..
-
백준 swift Tree (TIL)카테고리 없음 2024. 10. 26. 14:32
오늘은 주말이기도 하고 저녁에 약속이 있기 때문에! 가볍게 백준 TIL 을 해보려고 합니다! 그럼 간다 일단 오늘 푼 문제는 9934 번 문제임미다 음, Tree 를 깊게 생각해보고 구현했던적이 많지 않았던거같아서 일단 먼저 Tree에 대해서 어떻게 구현하는지에 대해 공부를 먼저 했숨다 , 후위 , 중위 , 전위 연산이 있던건 알았지만 코드로 보니 완전히 다른느낌을 받았슴다 그래도 9934 번은 생각보다 쉽게 풀려서 다행이였습니다 그럼 코드 보여드리겠슴다!import Foundationlet K = Int(readLine()!)!let list = readLine()!.split(separator: " ").map { Int(String($0))! }var answer = Array(repeating..
-
iOS 면접 경험 (TIL)카테고리 없음 2024. 10. 25. 20:25
안녕하세요! 접니다! 오늘은 제가 꼭 가고싶은 위치인 판교에서 면접을 보고 왔답니다.!!! 5년차 서류가 붙어버렸어요,, 인사팀에서 실수해서 뽑으신거라는 생각이 강하게 들지만! !! 굳이 그런생각을 가지며 할 필요는 없겠죠?! 5년차인만큼 엄청난 iOS CS 지식을 물어보셨습니다.. 그 중 솔직히.. 15/8개는 대답했고,,, 나머지는 무슨 생전 처음 들어보는 단어가 있었습니다.... 오늘은 그걸 공부해서 소개 해보려고 합니다,!! 자,, iOS 앱 개발자를 준비하시는 취준생분들! KVO 를 아시나요??이제 시작합니다!!!! KVO란?????키-값 관찰은 다른 객체의 속성 변경 사항을 객체에 알리는 데 사용하는 Cocoa 프로그래밍 패턴입니다. 모델과 뷰와 같이 앱의 논리적으로 분리된 부분 간의 변경 사..