Win32 배열 최대 크기 문제

Gwondori의 이미지

사용하고 있는 운영체제: 64bit windows 10(또는 7)
사용하고 있는 IDE: Visual Studio 2010

32bit 윈도우 프로그램에서 아래와 같이 전역 변수(배열)을 넣은 뒤

char arr[3840*2160*60*4];

int main(int argc, char *argv[])
{
printf("hello world\n");

return 0;
}

실행을 하면 "현재 PC에서는 이 앱을 실행할 수 없습니다" 라는 메시지가 나옵니다.

프로젝트 속성 -> 링커 -> 시스템 항목의 /LARGEADDRESSAWARE 를 On으로 둬도 안되고

마찬가지로 속성 -> 링커 -> 시스템 항목의 스택 예약 크기 등 4개를 2GB 정도로 줘도

같은 메시지가 계속 뜹니다.

malloc 방법 말고는 혹시 다른 방법이 있습니까?

shint의 이미지


64비트 컴파일 - 함수 안에서는 됩니다.

큰 배열
https://www.google.co.kr/search?q=%ED%81%B0+%EB%B0%B0%EC%97%B4&oq=%ED%81%B0+%EB%B0%B0%EC%97%B4&aqs=chrome..69i57j69i61.2937j0j8&sourceid=chrome&ie=UTF-8
[완료]c언어에서 배열 크기 관련
https://kldp.org/node/133814
[C] 큰 배열을 선언 할 때 스택 오버플로 예외 가져 오기
http://code.i-harness.com/ko/q/8ba29
이차원 배열 선언만 해도 터져요..
https://www.acmicpc.net/board/view/15466
지역 변수는 힙 메모리를 사용하고 전역 변수는 스택 메모리를 사용합니다.

vs stack size
https://www.google.co.kr/search?q=vs+stack+size&oq=vs+stack+size&aqs=chrome..69i57j0l5.5397j0j8&sourceid=chrome&ie=UTF-8

http://copynull.tistory.com/40

/F(스택 크기 설정)
https://msdn.microsoft.com/ko-kr/library/tdkhxaks.aspx

/STACK 링커 옵션을 사용합니다. 자세한 내용은 /STACK을 참조하십시오.
.exe 파일에 EDITBIN을 사용합니다. 자세한 내용은 EDITBIN 참조을 참조하십시오.

stack overflow and how to increase the stack size
https://social.msdn.microsoft.com/Forums/en-US/2a5b32b6-683b-4729-92d3-45ed7a89ef3f/stack-overflow-and-how-to-increase-the-stack-size?forum=Vsexpressvc

[C++] 스택사이즈 변경(stack size
http://yumere.tistory.com/20

How to overcome Stack Size issue with Visual Studio (running C codes with big array)
https://stackoverflow.com/questions/20744650/how-to-overcome-stack-size-issue-with-visual-studio-running-c-codes-with-big-ar

7. Memory : Stack vs Heap
https://www.gribblelab.org/CBootCamp/7_Memory_Stack_vs_Heap.html

Differences between Stack and Heap
http://net-informations.com/faq/net/stack-heap.htm

c++ stack size and allocation (failure) vs heap
https://arstechnica.com/civis/viewtopic.php?f=20&t=804257

The application was unable to start correctly (0xc0000018). Click OK to close the application.
https://www.google.co.kr/search?q=The+application+was+unable+to+start+correctly+(0xc0000018).+Click+OK+to+close+the+application.&oq=The+application+was+unable+to+start+correctly+(0xc0000018).+Click+OK+to+close+the+application.&aqs=chrome..69i57.52617j0j8&sourceid=chrome&ie=UTF-8

Fixing "the application was unable to start correctly (0xc0000018)" in Windows
https://www.ghacks.net/2015/10/16/fixing-the-application-was-unable-to-start-correctly-0xc0000018-in-windows/

APPINIT_DLLS and delete

The application was unable to start correctly (0xc0000018) - Windows 8 x64
https://superuser.com/questions/610495/the-application-was-unable-to-start-correctly-0xc0000018-windows-8-x64

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

shint의 이미지

//
윈도우 프로세스 메모리 지정 방법
bcdedit.exe /set IncreaseUserVA 3072
관리자 권한 실행 + 재부팅

//
윈도우 가상 메모리 지정 방법 - 윈도우 시스템 - 가상 메모리 - 드라이브 하나만 8096 MB 지정

//
CreateFileMapping ( )

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

shint의 이미지

.

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

bushi의 이미지

PE32 컨테이너에서 text,data,bss 등의 합이 2GiB 를 초과할 수 없다고 들은 것 같습니다.
그래서, 뭘 어떻게해도 1.7GiB 정도 이상의 전역변수를 사용못하겠더란 소리를 들은 것도 같습니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.