0

As per my knowledge, the OS architecture is generally used to speed up our OS and adding new features with higher memory management. But, in iOS I am a little bit confused regarding architecture, which we generally set in our app as below:

Architectures - Standard Architecture (armv7,arm64) Valid Architectures - armv7,arm64,armv7s.

Due to this we are getting many warnings related to datatype sizes and conversion because 64-bit architecture is the use of processors that have datapath widths, integer size, and memory address widths of 64 bits.

So my question is: I want to understand what mechanism will work behind this while I am generating IPA file for 32 bit supported architecture or 64 bit architecture (I know now after XCode-6 we will only built our app with 64 bit architecture with Bitcode enabled in our app for reduce our app size.)

Can anyone help me on this to understand architecture mechanism specially in IOS?

Nathan S.
  • 5,244
  • 3
  • 45
  • 55
Pratik Panchal
  • 339
  • 5
  • 13
  • You can read article on it [Major 64-Bit changes](https://developer.apple.com/library/ios/documentation/General/Conceptual/CocoaTouch64BitGuide/Major64-BitChanges/Major64-BitChanges.html) in Apple Documents. – Dipen Panchasara Aug 05 '16 at 04:52

1 Answers1

2

you can think of it like, in 32 bit architecture cpu have 32 data transfer lines connected to ram to trasfer data where one line can send 1 bit at a time(per clock cycle that can address max pow(2,1)=2 byte address at a time ) which can be either 0 and 1 so in total 2 bits can be addressed with one line.so if you have 2 lines you can send any one pair of (0,0) ,(0,1),(1,0),(1,1) mean total 4 bytes which is basically the power of 2 so if u have 3 mean 8 bytes

hence if you have 32 you can send 2^32 (2 to the power of 32) = 4294967296, which is 4 GB so if you have 8 gb ram with 32 bit cpu system then your os can address 4 gb ram max at a time . one solution to this is break 64 bit address into two parts and store them in 32 bit registers (sonic speed storage part of cpu to calculate virtual memory addresses ) to access memory more than 4 gb .

so basically it's same on every cpu no matter it's a phone ,laptop or desktop . although 64 bit system consume more power compared to 32 bit.

you can try these links and posts to study them thoroughly.

Community
  • 1
  • 1
Pavneet_Singh
  • 36,884
  • 5
  • 53
  • 68