일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 오늘의 색상
- 프로젝트회고
- 조건문
- Masil
- GIT
- UserDefault
- CS193p
- IOS
- flutter #state # stateful #stateless
- 스위프트
- xml
- MVVM
- 백준
- SwiftUI
- collectionView
- UIKit
- 청년취업사관학교후기
- colorofdays
- flutter
- ImageSlider
- xcode
- 코딩테스트
- 알고리즘
- process
- 프로그래머스
- WidgetTree
- stanford
- 스터디
- 새싹후기
- Swift
- Today
- Total
목록process (2)
개발을 시작하는 이야기

오늘은 지난번에 이야기한 대로 Process의 구조에 대해서 좀 더 알아보려고 한다. Code 프로그래머가 작성한 소스 코드가 기계어 형태로 저장된다. 기계어라 함은 컴퓨터가 읽을 수 있는 가장 밑단의 언어로 0과 1로 이루어진 언어이다. 컴파일 타임에 결정되고, 중간에 코드가 변경되지 않도록 Read-Only 형태로 저장된다. Data 전역변수와 static 변수가 저장되는 공간이다. 프로그램 시작과 동시에 할당되고, 프로그램이 종료되어야 메모리가 해제된다. 실행 도중 변수 값이 변경될 수 있기 때문에 Read-Write로 저장된다. struct Profile { static let country = "Korea" } var name: String? var age: Int? func fetchData(..

이전에 그럼 우린 스레드와 프로세스에 대해서 알아봤다. 프로세스는 실행될때 운영체제로 부터 각각 독립된 메모리 영역을 할당받지만 스레드는 프로세스 내에서 스텍 영역만 별도로 할당받고 부모 프로세스의 Code, Data, Stack, Heap 영역은 공유하게 된다. 따라서 프로새스 내에서 자식 스레드들은 서로 주소 공간이나 자원을 공유하면서 실행될 수 있다. (스텍은 서로간의 데이터 공유가 수월하지만 프로세스간의 데이터 공유는 그렇지 않다고 한다. 하지만 불가능 한것은 아니라고 함) 그럼 이젠 멀티 스레드에 대해 알아보자 멀티스레드는 하나의 어플리케이션을 여러개의 스레드로 구성하여 하나의 스레드가 하나의 작업을 처리하도록 하는 것이다. 만일 단일 스레드로 네트워크나 데이터베이스 통신과 같은 긴 작업을 수행..