การมีโปรแกรม 64 บิตในระบบปฏิบัติการ 64 บิตมีความสำคัญอย่างไร


40

ฉันเพิ่งอัพเกรดเป็นระบบปฏิบัติการ 64 บิต (Windows 7) จากรุ่น 32 บิตเก่าของฉัน ฉันสังเกตเห็นว่าในขณะที่มีแอปพลิเคชั่นหลายตัวให้ใช้งานในแบบ 64 บิต (เช่นไคลเอนต์ DC, Tortoise SVN, ไดร์เวอร์กราฟิก) ส่วนใหญ่ยังคงเป็นแอพพลิเคชั่น 32 บิต (เช่น firefox, adobe reader)

ดังนั้นความสำคัญในการมีแอพพลิเคชั่น 64 บิต (ประสิทธิภาพฉลาด) ฉันใช้แล็ปท็อปสำหรับเล่นเกมเขียนโค้ดและอื่น ๆ


1
รอจนกว่าคุณจะเริ่มอยากเล่นเกมเก่าที่คุณชื่นชอบด้วยตัวติดตั้ง 16 บิต ความเข้ากันได้ย้อนหลังสำหรับสิ่งเหล่านั้นมีอยู่ใน XP64 / 32, Vista32 และ 7 32 แต่ไม่ใช่ Vista64 หรือ 7 64
Alain

1
@Alain: ฉันไม่สามารถเล่นเกมเก่าที่รันบนระบบปฏิบัติการ 32 บิตของฉันได้ดังนั้นมันอาจจะไม่สูญเสียครั้งใหญ่นัก
apoorv020

1
ถ้าคุณรัก Master of Orion II และ Populous the Beginning เท่าที่ฉันทำ;) อย่างไรก็ตาม Windows Virtual PC + แผ่นซีดีติดตั้งระบบปฏิบัติการเก่านั้นใช้เคล็ดลับและช่วยให้คุณประหยัดจากการบูทคู่
Alain

การปรับปรุงที่ใหญ่ที่สุดที่ฉันสังเกตเห็นจากมุมมองของผู้ใช้คือความสามารถในการโหลดไฟล์ขนาดใหญ่กว่า 2GB-ish โดยเฉพาะการทำงานกับภาพขนาดใหญ่ในซอฟต์แวร์ Adobe
Svardskampe

@ ถึงกระนั้นเนื่องจากซอฟต์แวร์ VM ต่าง ๆ มีระดับการสนับสนุนไดรเวอร์เสียง / วิดีโอที่แตกต่างกันสำหรับระบบปฏิบัติการเก่าแม้ว่าจะไม่ได้ทำงานเสมอไป ฉันมีเวลาที่จะให้Jewels of Oracle IIทำงานได้
Synetech

คำตอบ:


35

ฉันไม่คิดว่าเป็นเรื่องสำคัญที่จะต้องมีแอปพลิเคชัน 64 บิตต่อหนึ่งรายการ

ข้อดีของการมีแอพพลิเคชั่น 64- บิตคือสามารถ:

  • เข้าถึงหน่วยความจำได้มากกว่า¹
  • ดำเนินการลงทะเบียน 64 บิต²

program โปรแกรม 64 บิตอาจเร็วขึ้นเล็กน้อย (ขึ้นอยู่กับวิธีการทำงาน) หากแอปพลิเคชันของคุณมีหน่วยความจำหิว (เช่น Photoshop, การเรนเดอร์ 3D และอื่น ๆ ) การมีรุ่น 64 บิตจะทำให้สามารถเข้าถึงหน่วยความจำทั้งหมดของคอมพิวเตอร์ได้ ไม่ว่ามันจะถูก จำกัด อยู่ที่ประมาณ 2GB เป็นไปตามแอปพลิเคชันต่อหนึ่งดังนั้นแอปพลิเคชั่นสองตัวสามารถเข้าถึงทั้งหมด 4GB

²การทำงานแบบ 64 บิตบนระบบปฏิบัติการแบบ 64 บิตนั้นเร็วกว่าการทำงานบนระบบปฏิบัติการแบบ 32 บิตซึ่งจะใช้เวลาอย่างน้อย 2 32 บิตในการดำเนินการสิ่งเดียวกัน

ความเสถียรที่ชาญฉลาดไม่ควรมีความแตกต่างระหว่างแอปพลิเคชัน 64- บิตและ 32- บิต


ฉันคิดว่าไคลเอนต์ DC ของฉันทำการแฮชไฟล์ด้วยความเร็วที่ดีขึ้นมากในขณะนี้
apoorv020

มันสมเหตุสมผลถ้ามันกำลังแฮช บางส่วนสามารถปรับให้เหมาะสมกับความกว้างบิตที่สูงขึ้น
Joshua Nurczyk

เป็นไปได้ที่จะตั้งสมมติฐานเกี่ยวกับความสามารถของ CPU ด้วย x86-64 เช่นการสนับสนุน SSE3
afrazier

4
โดยค่าเริ่มต้นแอปพลิเคชันที่ทำงานบน Windows แบบ 32 บิตจะสามารถเข้าถึงหน่วยความจำ 2GB เท่านั้น ระบบปฏิบัติการโดยรวมมีการเข้าถึงทั้งหมดกว่า 3GB เล็กน้อยเพื่อแบ่งปันโดยแอปพลิเคชันทั้งหมด
Michael Steele

@Michael Steele ถูกต้อง หน่วยความจำสูงสุดที่ใช้ได้สำหรับระบบคือ 3.12GB ส่วนที่เหลือสงวนไว้สำหรับการระบุฮาร์ดแวร์ สำหรับบัญชีโดยละเอียดเพิ่มเติมดูที่นี่: support.microsoft.com/kb/929605
Steven Evers

10

ประโยชน์ที่ใหญ่ที่สุดจากการใช้แอปพลิเคชัน 64 บิตบนระบบปฏิบัติการ 64 บิตคือคุณสามารถเข้าถึงหน่วยความจำทั้งหมดที่มีอยู่ในระบบได้อย่างสมบูรณ์ ด้วยที่อยู่หน่วยความจำ 64 บิตแอปพลิเคชันสามารถเข้าถึงหน่วยความจำมากกว่าที่เทียบเท่ากับ 32 บิต

นอกจากนี้โปรแกรม 64 บิตจะทำงานได้ดีขึ้นกว่า 32 บิตเนื่องจากใช้สถาปัตยกรรมระบบดั้งเดิม การดำเนินการเช่นการอ่านหน่วยความจำนั้นทำได้โดยกำเนิดเป็นต้นซึ่งหมายความว่าระบบปฏิบัติการไม่จำเป็นต้องทำงานเพิ่มเติม "แปล" (การบรรจุ / แกะหน่วยความจำ ฯลฯ ) คำสั่งที่แอปพลิเคชันใช้

อย่างไรก็ตามโปรแกรมส่วนใหญ่เช่น Firefox, Word, Adobe Reader เป็นต้นใช้เวลาส่วนใหญ่ในการรอการป้อนข้อมูลจากผู้ใช้ดังนั้นประสิทธิภาพจึงไม่จำเป็นต้องกังวลมากนัก แอพพลิเคชั่นเหล่านี้ส่วนใหญ่ (ในขณะนี้) ไม่ต้องการหน่วยความจำเพิ่มเติมที่ไปถึง 64 บิตจะให้พวกเขาเข้าถึง

โปรแกรมเช่นไดร์เวอร์กราฟิกต้องทำงานอย่างมีประสิทธิภาพและอาจต้องมีการลงทะเบียนหน่วยความจำที่สูงขึ้นและจำเป็นต้องเป็น 64 บิต


1
โปรแกรมควบคุมระบบจำเป็นต้องเป็น 64 บิตในหลายกรณีหากจำเป็นต้องเข้าถึงการลงทะเบียนหน่วยความจำบางอย่าง ฉันเชื่อว่าสิ่งที่ certan จะทำงานกับไดรเวอร์ 32- บิตในระบบ 64- บิต แต่ไม่มีอะไรเข้มข้นเหมือนการ์ดจอ
Joshua Nurczyk

1
@ โจชัว: ไดรเวอร์ระบบขึ้นอยู่กับระบบปฏิบัติการและส่วนโค้งเครื่อง CPU 64 บิตบางตัวไม่มีโหมดเพียงเพิ่มคำแนะนำ 64 บิต x86_64 มีสวิตช์โหมดราคาแพงเพื่อรับจาก 64 ถึง 32 และด้านหลังดังนั้นไดรเวอร์จึงจำเป็นต้องเป็น 64 บิตเสมอ
Zan Lynx

โปรดอธิบายความหมายของงาน "ดีขึ้น"
glenviewjeff

5

ใช่คุณสามารถทำงานได้โดยไม่มีปัญหากับแอพ 32 บิตบนระบบปฏิบัติการ 64 บิตของคุณ แต่ มีปัญหาอีกประการหนึ่งคือการสิ้นเปลืองเนื้อที่ - ห้องสมุด โดยทั่วไปแอปพลิเคชันจะโหลดไลบรารีที่เหมาะสมที่ต้องการ แต่ปัญหาคือไลบรารี 64 บิตไม่สามารถทำงานร่วมกับไลบรารี 32 บิตและในทางกลับกัน

แน่นอนว่าโดยปกติแล้วไลบรารี่ที่ต้องการจะถูกส่งไปพร้อมกับแอพพลิเคชั่น แต่ส่วนที่เป็นแก่นหลัก - อันที่เป็นวินโดวส์นั้นจะถูกเก็บไว้สองครั้ง

พวกเขายังใช้หน่วยความจำเพิ่มเติมบน RAM ถ้าคุณมีแอปพลิเคชัน 32 บิตหนึ่งและอีก 64 บิตที่ทำงานพร้อมกัน - ทั้งสองแอปโหลดไลบรารีเวอร์ชันของตัวเองและพวกเขากำลังใช้ RAM มากกว่าที่พวกเขาสามารถทำได้หากใช้ไลบรารีเดียวกัน

ดังนั้นเพื่อประหยัดพื้นที่ RAM และฮาร์ดไดรฟ์ลองใช้และติดตั้งแอพ 64 บิตเท่านั้นและติดตั้งแอพ 32 บิตเฉพาะในกรณีที่คุณไม่พบรุ่น 64 บิต ตอนนี้มีแอพพลิเคชั่นเพิ่มขึ้นทั้งสองเวอร์ชัน


4

คำตอบคือ "มันขึ้นอยู่กับ"

'แอปพลิเคชัน' 32 บิตบางตัวจะไม่ทำงานในโหมด 64 บิตตัวอย่างเช่นไดรเวอร์กราฟิกและส่วนขยายเชลล์ (เช่น Tortoise SVN) ในกรณีเช่นนี้คุณต้องมีรุ่น 64 บิต

สำหรับแอปพลิเคชันทั่วไปอื่น ๆ นั้นขึ้นอยู่กับสิ่งที่พวกเขาทำ

หากคุณมีหน่วยความจำขนาด 16GB และใช้เซิร์ฟเวอร์ SQL ที่มีฐานข้อมูลขนาดใหญ่มากการมี SQL เวอร์ชัน 64 บิตนั้นสำคัญมาก

อย่างไรก็ตามหากคุณมีหน่วยความจำ 4Gb (โดยการ์ดแสดงผลถูกขโมยเกือบ 1GB) คุณอาจมีหน่วยความจำเหลือน้อยและใช้แอปพลิเคชัน 64 บิต (ซึ่งอาจต้องใช้หน่วยความจำเพิ่มเติม) อาจทำให้ระบบช้าลง

คุณไม่สามารถบอกได้เลยว่าแอปพลิเคชั่นแบบ 32 บิตที่ทำงานในโหมด 64 บิตจะเร็วกว่าหรือช้ากว่า 64 บิตเทียบเท่าหรือไม่ว่าแอปพลิเคชันนั้นจะเร็วกว่าหรือช้ากว่าเมื่อทำงานกับ 32 ระบบปฏิบัติการบิต

โดยส่วนตัวถ้าฉันกำลังมองหายูทิลิตี้หรือแอปพลิเคชันขนาดเล็กสำหรับเครื่องของฉันฉันจะตรวจสอบว่ามันใช้งานได้กับระบบปฏิบัติการ 64 บิต แต่ไม่ว่าแอปพลิเคชันที่เป็น 32- บิตหรือ 64- บิต .

ตาม Process Explorer ตอนนี้ฉันมี 25 กระบวนการ 64- ​​บิตและ 28 32- บิตกระบวนการทำงานโดยไม่สนใจ Chrome)


3

โปรดทราบว่าใน Windows 64 บิตแอปพลิเคชัน 32 บิตจะถูกดำเนินการผ่านเลเยอร์การจำลองที่รู้จักกันในชื่อWOW64ซึ่งมีข้อ จำกัด เพิ่มเติมบางอย่างที่ไม่ปรากฏเมื่อทำงานภายใต้ระบบปฏิบัติการ Windows 32 บิต

จากhttps://msdn.microsoft.com/en-us/library/aa384219(v=vs.85).aspx :

ประสิทธิภาพและการใช้หน่วยความจำภายใต้ WOW64

  • ฮาร์ดแวร์ประมวลผล การจำลองการเรียนการสอนจะดำเนินการบนชิป บนโปรเซสเซอร์ x64 คำสั่งจะถูกดำเนินการโดยไมโครสถาปัตยกรรม ดังนั้นความเร็วในการเรียกใช้ภายใต้ WOW64 บน x64 จะคล้ายกับความเร็วของมันภายใต้ Windows 32 บิต บนโปรเซสเซอร์ Intel Itanium ซอฟต์แวร์จำนวนมากมีส่วนร่วมในการจำลองและประสิทธิภาพลดลง
  • API thunk โอเวอร์เฮด โอเวอร์เฮดนี้มีขนาดเล็กเมื่อเทียบกับเคอร์เนล NT ที่เรียกตัวเอง ฟังก์ชั่นเคอร์เนล NT มีวัตถุประสงค์เพื่อให้เรียกไม่บ่อยนัก
  • ขนาดหน่วยความจำเสมือน บนโปรเซสเซอร์ Intel Itanium, WOW64 เพิ่มค่าใช้จ่ายอย่างมีนัยสำคัญหากสองหรือมากกว่าอินสแตนซ์ของแอปพลิเคชัน 32 บิตเดียวกันทำงานพร้อมกัน นี่เป็นเพราะเพจเนทีฟ 8 KB บน Intel Itanium ซึ่งทำให้การจำลองเพจเนทีฟ 4 KB บนสถาปัตยกรรม x86 นั้นซับซ้อน (หน้าอื่น ๆ จะถูกทำเครื่องหมายว่าสามารถเขียนได้เพจที่เขียนได้ทั้งหมดเป็นแบบส่วนตัวกับกระบวนการ) สิ่งนี้อาจส่งผลเสียต่อความสามารถในการปรับขนาดของบริการเทอร์มินัลในโปรเซสเซอร์บางตัว นี่ไม่ใช่กรณีสำหรับโปรเซสเซอร์ x64
  • ชุดการทำงาน WOW64 เพิ่มขนาดของชุดการทำงานของแอปพลิเคชัน

  • WOW64 เปิดใช้งานแอปพลิเคชัน 32 บิตเพื่อใช้ประโยชน์จากเคอร์เนล 64 บิต ดังนั้นแอปพลิเคชั่นแบบ 32 บิตสามารถใช้เคอร์เนลที่จับได้มากขึ้นและที่จับหน้าต่าง อย่างไรก็ตามแอปพลิเคชันแบบ 32 บิตอาจไม่สามารถสร้างเธรดจำนวนมากภายใต้ WOW64 ได้เมื่อใช้แบบดั้งเดิมบนระบบที่ใช้ x86 เนื่องจาก WOW64 จัดสรรสแต็ก 64 บิตเพิ่มเติม (ปกติคือ 512 KB) สำหรับแต่ละเธรด นอกจากนี้พื้นที่ที่อยู่จำนวนหนึ่งถูกสงวนไว้สำหรับ WOW64 และโครงสร้างข้อมูลที่ใช้ จำนวนที่สงวนขึ้นอยู่กับโปรเซสเซอร์ สงวนไว้สำหรับ Intel Itanium มากกว่าโปรเซสเซอร์ x64


0 ข้อ จำกัด เหล่านี้คืออะไร? โปรดแก้ไขคำตอบของคุณและอธิบาย
ลืม

ขุดหาซอมบี้ใช่มั้ย คำตอบนี้มีอายุเกือบหกปีแล้วคุณรู้ไหม ...
อดั

+1 ขอบคุณสำหรับการแก้ไขของคุณ! ฉันลองโพสต์คำถามที่แตกต่างไปจากเดิม แต่มันถูกปิดว่า "กว้างเกินไป" เท่าที่ฉันรู้คำถามแบบเปิดทั้งหมดทุกที่ใน Super User นั้นมีอายุอย่างน้อยหกปี
ลืม

1

อย่าตัดสั้นขนาดนี้ หิน 64 บิต ถ้าคุณได้รับมันใช้มัน Visual Studio, SQL Server (แม้ใช้เพียงแค่ Studio การจัดการ) จะได้รับประโยชน์ทั้งหมดจากเวอร์ชันที่ใช้ 64- บิต คุณไม่สามารถพูดได้ว่ามันไม่คุ้มค่า ไม่มันไม่ใช่เรื่องจำเป็น แต่เราควรมองหาเพื่อพัฒนาความเร็วในการพัฒนาและผู้ใช้งานคนอื่น ๆ ทำไมไม่ใช้ประโยชน์และส่งเสริมและพูดคุยกับ บริษัท ของคุณแบบ 64 บิต? มันไม่ใช่เรื่องใหม่อีกต่อไปแล้ว ... กำลังกลายเป็นหรือเป็นเรื่องธรรมดา

มันไร้สาระที่จะบอกว่าคุณไม่ได้ประโยชน์อะไรมากจาก 64- บิตเหมือนกับที่มันไร้สาระที่จะบอกฉันว่าการเพิ่ม 4 gigs ให้เสร็จสมบูรณ์ทั้งหมด 8 gigs บนแล็ปท็อปใด ๆ ผู้ใช้ไม่คุ้มค่า นั่นเป็นอีกตัวอย่างหนึ่งของผู้บริหารเครือข่ายไอทีที่มักจะอัพเกรดเป็น 64 บิตโดยไม่เสียค่าใช้จ่ายในกรณีส่วนใหญ่แล้ว RAM ก็มีราคาถูกและเพิ่มประสิทธิภาพการทำงานของผู้ใช้สองเท่า

ดังนั้นไม่มันไม่ใช่สิ่งที่ต้องทำ แต่ควรเป็นสิ่งที่ต้องทำ ฉันไม่ชอบมินิมอลลิสต์เมื่อพูดถึงเครื่องมือเช่นเดสก์ท็อปและแล็ปท็อป

ฉันไม่เห็นด้วยจริง ๆ เมื่อมีคนพูดว่าแอป 64 บิตเป็นสิ่งที่คุณยังต้องระวัง "สุดยอด" กับ ... อย่างน้อยก็ไม่มากเท่ากับตอนที่มันออกมาครั้งแรกแน่นอนว่า

หาก 64 บิตเป็นปัญหาดังกล่าวเดสก์ท็อปและแล็ปท็อปส่วนใหญ่ในปัจจุบันจะไม่ย้ายไปใช้ 64-bit Win 7 บริษัท ทั้งหมดของเรากำลังส่ง Win 7 Pro 64 บิตไปยังผู้ใช้ทั้งหมด (พนักงานกว่า 100,00 คน)


มันจะมีประโยชน์ถ้าคุณสามารถอธิบายเฉพาะสิ่งที่ "หิน" ประมาณ 64 บิต คำอธิบายทางเทคนิคคือสิ่งที่ต้องการที่นี่
glenviewjeff

ดังนั้นการเพิ่ม 4gigs ลงในเครื่องที่ไม่เคยมีหน่วยความจำมากกว่าเดิม ตกลงถ้าคุณรู้ว่าคุณจะใช้มันถ้ามันมีประโยชน์ แต่อย่างอื่นก็ไม่จำเป็น สิ่งนี้ไม่เกี่ยวกับความโลภ แต่เพียงแค่คุณสามารถลงทุนในสิ่งที่อาจสมเหตุสมผลมากกว่า การอัพเกรดซีพียูในเกือบทุกกรณีจะก่อให้เกิดประโยชน์ ไม่ได้บอกว่า RAM มากเป็นสิ่งที่ไม่ดี (ฉันมีตัวเอง 16GB) แต่ฉันจะไม่อัพเกรดแล็ปท็อปเครื่องเก่าเป็น 8GB เพราะการติดตั้ง Arch ของฉันมีขนาด 4GB จริง ๆ ! แม้ว่า 64 บิตนั้นคือ sth ที่จริงแล้วในกรณีส่วนใหญ่เป็นข้อได้เปรียบสำหรับ pf ที่ถูกต้อง
larkey

0

ขึ้นอยู่กับแอปพลิเคชันทั้งหมด แอปพลิเคชั่นส่วนใหญ่ทำงานแบบเดียวกันในรูปแบบ 32 บิตเหมือนกับในรูปแบบ 64 บิต สำหรับแอปพลิเคชั่นที่สำคัญคุณจะต้องทราบว่าเวอร์ชั่น 32 บิตมี จำกัด และไม่จำเป็นต้องถามคำถาม

สิ่งหนึ่งที่ต้องระวังคือเมื่อแอปพลิเคชันมีรุ่น 64 บิตที่รองรับบุคคลที่สามไม่ดี ฉันกำลังนึกถึง Excel 2010 ซึ่งมีให้บริการในรูปแบบ 64 บิต Excel 64 นั้นทำงานได้อย่างสมบูรณ์แบบดี แต่มีการย้ายส่วนขยายและส่วนเสริมของบุคคลที่สามไม่กี่ราย เป็นอีกตัวอย่างหนึ่งให้พิจารณา Python บน Windows อีกครั้งโมดูลที่ไม่ใช่คอร์ที่สำคัญจำนวนมากไม่สามารถใช้งานได้หรือหาได้ยากในรูปแบบ 64 บิต

ดังนั้นหากคุณไม่ต้องการ 64 บิตสำหรับแอปพลิเคชันที่สงสัยจริงๆคุณสามารถติดกับรุ่น 32 บิตได้อย่างปลอดภัยยิ่งขึ้น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.