profile
안냐세여
post-thumbnail

Asynchronous Programming

우선 CPU의 스레드에 대해 알아보자. 스레드란 작업을 하는 가장 작은 유닛을 말한다. 위의 이미지를 보자.1+1이라는 작업1을 실행하려고 한다. 작업 1이 시작되면 1+1이라는 계산을 CPU가 해야하고,작업 1이 완료될 때 까지 CPU를 사용할 수 없다. 작업 1이

2023년 5월 16일
·
1개의 댓글
·
post-thumbnail

운영체제 : 파일과 디렉터리, 파일 시스템

이번엔 운영체제가 파일과 디렉터리를 어떻게 관리해주는 지 알아보자.그 전에, 파일 시스템이란 파일과 디렉터리를 관리하는 운영체제 내부에 있는 시스템이다.파일과 디렉터리는 보조기억장치의 데이터 덩어리로 볼 수 있다.파일은 보조기억장치에 저장된 의미있고, 관련된 정보의 집

2023년 5월 8일
·
0개의 댓글
·

운영체제 : 페이지 교체와 프레임 할당

이전 글들을 통해 페이징을 이용해서 물리 메모리보다 큰 프로세스를 실행할 수 있다는 것을 배웠다. 그럼에도 물리 메모리의 크기는 한정되어 있다. 따라서,기존에 적재된 불필요한 페이지를 선별해 보조기억장치로 내보내기 (페이지 교체)프로세스들에게 적절한 수의 프레임 할당하

2023년 5월 7일
·
0개의 댓글
·
post-thumbnail

운영체제 : 페이징 - 운영체제의 메모리 관리 기법 (2)

저번 글에서, 연속 메모리 할당의 문제점에 대해 알아보았다.연속 메모리 할당은 외부단편화와, 실제 물리 메모리보다 큰 프로세스를 실행할 수 없다는 단점들이 있다.실행하고자 하는 프로세스의 일부만 메모리에 적재함으로써, 물리 메모리보다 훨씬 큰 프로세스를 적재할 수 있는

2023년 5월 6일
·
0개의 댓글
·
post-thumbnail

운영체제 : 스와핑과 연속 메모리 할당 - 운영체제의 메모리 관리 기법 (1)

연속 메모리 할당 프로세스에 연속적인 메모리 공간을 할당하는 방법 스와핑 현재 사용되지 않는 프로세스들을 보조 기억장치의 일부 영역인 스왑 영역으로 쫒아내고, 그렇게 생긴 빈 공간에 새 프로세스를 적재하는 법. 지금 당장 사용하지 않는 프로세스들만을 메모리에 적재하는

2023년 5월 6일
·
0개의 댓글
·
post-thumbnail

운영체제 : 교착상태 (데드락)

설명에 앞서 다음 예시를 확인해보자.식사하는 철학자 문제동그란 테이블 위 5명의 철학자들이 앉아있고, 철학자들 사이에는 포크가 놓여있다. 식사를 하기위해서는 2개의 포크가 필요하고, 철학자들은 다음과 같은 과정으로 행동한다.결과는 어떻게 될까?그 누구도 식사를 할 수

2023년 5월 5일
·
0개의 댓글
·
post-thumbnail

운영체제 : 프로세스 동기화

동시다발적으로 실행되는 프로세스(스레드)들은 서로 협력하며 영향을 주고 받는다. 이때 자원의 일관성을 보장해야 한다. 즉 프로세스의 동기화를 고려해야 함!즉 동기화란, 프로세스들의 수행 시기를 맞추는 것이다.(스레드도 동기화 대상) 동기화에는 두 가지 목적이 있다.실행

2023년 5월 5일
·
0개의 댓글
·
post-thumbnail

운영체제 : CPU 스케줄링

CPU 스케줄링이란? 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 분배하는 것이다. 가장 공정한 스케줄링 프로세스마다, 빨리 처리해야하는 프로세스와 그렇지 않은 프로세스가 있기 때문에 각각의 우선순위에 따라 배분해야한다. 예를 들어, 입출력 작업이 많은

2023년 5월 5일
·
0개의 댓글
·
post-thumbnail

운영체제 : 스레드

스레드는 프로세스를 구성하는 실행 흐름의 단위이다. 하나의 프로세스는 하나 이상의 스레드를 가질 수 있다. 예를 들어, 웹 브라우저 프로세스는 화면 출력 스레드, 입력 스레드, 검색 스레드 등 여러 스레드를 동시에 실행할 수 있다.스레드 ID, 프로그램 카운터를 비롯한

2023년 5월 5일
·
0개의 댓글
·
post-thumbnail

운영체제 : 프로세스

포그라운드 프로세스는 사용자가 볼 수 있는 공간에서 실행되는 프로세스, 백그라운드 프로세스는 사용자가 볼 수 없는 공간에서 실행되는 프로세스이다. 백그라운드 프로세스는 또 직접 사용자와 상호작용이 가능한 지의 여부에 따라 나뉘게 된다.프로세스들은 돌아가며 한정된 시간만

2023년 5월 5일
·
0개의 댓글
·

운영체제 : 운영체제 훑어 보기

프로그램에 필요한 자원을 할당하고, 올바르게 실행되도록 돕는 프로그램.특별해서 메모리의 사용자 영역이 아닌, 따로 커널 영역이라는 곳에 할당됨.운영체제는 인터넷 브라우저, 메모장 등 프로그램이 실행되면 메모리의 비어있는 공간에 배치하고, 프로그램이 종료되면 메모리에서

2023년 5월 5일
·
0개의 댓글
·

알고리즘 문자열 문제를 위한 파이썬 정리

string.split(separator, maxsplit)특정 문자를 기준으로 나누는 것. separator의 기본 값은 공백이므로, 기본적으로 공백을 기준으로 나눠준다. maxsplit은 최대 몇번이나 나눌지에 대한 제한횟수.result1 = 'Hello', 'wo

2023년 4월 30일
·
0개의 댓글
·

플러터의 Const Constructor

const란 간단히 말해 컴파일 시점에 값을 알고 있는 것이다. 값은 변하지 않고 const로 선언된 객체는 런타임 중에 캐시되어 동일한 객체를 여러 번 참조할 때 메모리를 더 효율적으로 사용할 수 있다. 여기서 헷갈릴 수 있는 것은 final도 변하지 않는 값이지만,

2023년 4월 20일
·
0개의 댓글
·

Flutter Package : Json_serializable

https://pub.dev/packages/json_serializable

2023년 4월 17일
·
0개의 댓글
·
post-thumbnail

MVVM Pattern in Flutter 3 - Dependency Injection

Dependency Injection - 의존성 주입

2023년 4월 10일
·
0개의 댓글
·

MVVM Pattern in Flutter 2 - Domain, Repository, DataSource

MVVM의 Model에 대하여 전편에서 repository와 data source에 대해 잠깐 언급하였다. 앱의 규모가 크다면 해당 이미지의 흐름으로 설계할 수 있다. 이번 편에서는 Domain(Use Cases)과 Data Repository, Data Source

2023년 4월 7일
·
0개의 댓글
·

MVVM Pattern in Flutter 1 -MVVM의 기본 구조

What is MVVM?

2023년 4월 4일
·
0개의 댓글
·
post-thumbnail

Textfield/Textformfield의 InputDecoration 속성 정리

항상 헷갈리는 InputDecoration의 속성에 대하여 정리해봅시다. icon: 필드의 왼쪽에 표시되는 아이콘입니다. labelText: 필드 위에 표시되는 레이블 텍스트입니다. helperText: 필드 하단에 표시되는 보조 텍스트입니다. hintText: 필드에 입력할 값에 대한 힌트 텍스트입니다. errorText: 필드 하단에 표시되는 ...

2023년 3월 31일
·
0개의 댓글
·
post-thumbnail

[알고리즘] 12강 백트래킹

12강 백트래킹

2023년 3월 20일
·
0개의 댓글
·
post-thumbnail

SwiftUI 튜토리얼 3 - View layout (2)

View layout 콘텐츠 레이어링

2022년 7월 29일
·
0개의 댓글
·