สนับสนุนการพัฒนาระบบปฏิบัติการรุ่นเก่า


14

ฉันกำลังบำรุงรักษารหัสมรดกส่วนใหญ่เขียนด้วยภาษาซีรหัสนี้ถูกเขียนขึ้นครั้งแรกเพื่อเป็น comiled กับ Windows 3 สำหรับ Workgroups และรุ่นที่ใหม่กว่าสำหรับ NT ถูกสร้างขึ้น แอปพลิเคชั่นรุ่นเก่านี้ยังคงใช้งานได้ในปัจจุบันทำงานอย่างสนุกสนานบนเวิร์กสเตชัน 3.11 และ NT จากต้นยุค 90 มันใช้งานได้และทำในสิ่งที่ควรทำและเหตุผลที่พวกเขายังคงใช้งานอยู่คือไดรเวอร์สำหรับฮาร์ดแวร์ที่กำหนดเองซึ่งเป็นของโซลูชันไม่เข้ากันได้กับ Windows ในภายหลัง

นอกจากนี้ยังมีแอปพลิเคชั่นอื่นที่ฉันยืนยันว่าด้วยเหตุผลเดียวกันนี้ใช้งานได้กับ Win2k เท่านั้น

อย่างไรก็ตามในขณะที่สิ่งต่าง ๆ ดำเนินต่อไปมันก็ยากที่จะเรียกใช้สภาพแวดล้อมแบบดั้งเดิมเหล่านี้ ตอนนี้ฉันเก็บเครื่องทางกายภาพไว้กับซอฟต์แวร์การพัฒนาที่ติดตั้งดังนั้นฉันจึงสามารถทำงานกับฮาร์ดแวร์ดั้งเดิมได้ แต่สิ่งเหล่านี้อาจตายได้ตลอดเวลา (พวกเขามีอายุ 25 ปี)

ดังนั้นคำถามของฉันคือเมื่อเห็นว่าเป็นปี 2559 อะไรคือตัวเลือกของฉันสำหรับการรักษาสภาพแวดล้อมโบราณนี้ในวิธีที่มีเสถียรภาพมากขึ้น? คุณสามารถย้าย 3.11 ไปยังโฮสติ้งคลาวด์ได้หรือไม่

ฉันลองใช้การจำลองเสมือน แต่เนื่องจากลักษณะเฉพาะของการตั้งค่าฉันไม่สามารถใช้งานได้กับไดรเวอร์อุปกรณ์ดังนั้นฉันคิดว่าอาจต้องทำให้ภาพเต็มของระบบปฏิบัติการตามที่เป็นอยู่แล้วจึงเรียกใช้งานใน VM เพื่อพัฒนาซอฟต์แวร์หรือไม่ สิ่งนี้เป็นไปได้หรือไม่สำหรับแขกระบบปฏิบัติการรุ่นเก่าที่เป็น Win3 และ NT

มีประสบการณ์ในการรักษาแพลตฟอร์มเก่า ๆ เช่นนี้เพื่อการพัฒนาหรือไม่ แต่ในแบบที่ทันสมัยกว่าและปลอดภัยกว่าที่ฉันสามารถดึงดูดได้

เป้าหมายของฉันคือการกำจัดเครื่องเก่าออกและย้ายไปยังระบบเสมือนจริง


คุณลองใช้ซอฟต์แวร์ VM ใด VMware? ถ้าไม่ลองดูสิฉันมีฮาร์ดแวร์อย่างน้อยหนึ่งชิ้นที่ฉันได้รับคนที่ทำงานกับซอฟต์แวร์นั้น แต่ไม่มีซอฟต์แวร์ VM อื่น ๆ
Doc Brown

ยิ่งกว่านั้น: สถานการณ์กรณีที่เลวร้ายที่สุดคืออะไรถ้าฮาร์ดแวร์ตายในวันพรุ่งนี้และคุณไม่มีทางเลือกอีกแล้ว? บริษัท ของคุณจะล้มละลายไหม?
Doc Brown

ฉันลองใช้ VMware และ VirtualBox VirtualBox สองตัวไม่สามารถโหลด Win3 แต่สามารถโหลด NT4 ได้ แต่ไม่มีแผ่นซีดีการเปลี่ยนความละเอียดหรือการรองรับเมาส์ VMWare โหลด Win3 แต่ยังขาดไดรเวอร์ดังนั้นหน้าจอก็เกิดความยุ่งเหยิง ตอนนี้ฉันยุ่งกับการเปลี่ยนเป็นการจำลองแทนลองใช้ PCem ผลงานที่ดีกว่านี้ แต่แล้วฉันไม่ได้รับความเร็วเพิ่มขึ้นมากกว่าฮาร์ดแวร์เก่าและฉันขาด VM สิ่งที่ชอบดิสก์ร่วมกัน ฯลฯ
ริชาร์ด Tyregrim

3
จริงๆแล้วเมื่อมันยากที่จะหาชิ้นส่วนอะไหล่มันเป็นเวลาที่คุณจะต้องเปลี่ยนชิ้นส่วนเก่าด้วยวิธีใหม่ ในบางช่วงเวลาการทำให้สิ่งเก่าเหล่านั้นมีชีวิตชีวานั้นประหยัดน้อยกว่าการสร้างอย่างน้อยบางส่วนใหม่
Doc Brown

1
คุณได้รับไดรเวอร์สำหรับฮาร์ดแวร์ที่กำหนดเองอยู่ที่ไหน
JeffO

คำตอบ:


4

ไดรเวอร์สำหรับฮาร์ดแวร์ที่กำหนดเองซึ่งเป็นของโซลูชันไม่สามารถทำงานร่วมกับ Windows ในภายหลังได้

นี่คือปมของเรื่อง คุณสามารถคอมไพล์โปรแกรม C ดั้งเดิมของคุณด้วย Visual Studio รุ่นใหม่แก้ไขคำเตือนและข้อผิดพลาดคอมไพเลอร์ทั้งหมดและเปลี่ยนระบบเก่าเป็นโปรแกรมที่เหมือนกันที่ทำงานบน Windows 7 (หรือใหม่กว่าถ้าคุณต้อง) แต่ถ้าไดรเวอร์ไม่ การทำงานจึงมีโอกาสที่จะทำงานได้แม้ในระบบเสมือน

หากคุณไม่ได้รับการปรับปรุงหรือเปลี่ยนไดรเวอร์ / ฮาร์ดแวร์ฉันจะไม่เริ่มพิจารณา


ขอบคุณสำหรับการตอบกลับ ฉันคิดว่าอาจมีตัวเลือก VM หรืออีมูเลชันที่มีลักษณะคล้าย HW จริง ๆ ที่ใช้กับเครื่อง Win3 ดังนั้นฉันอาจใช้มันเพื่อติดตั้งไดรเวอร์อุปกรณ์ที่กำหนดเองในสภาพแวดล้อมนั้นและเชื่อมต่ออุปกรณ์ดังนั้น ความตั้งใจและจุดประสงค์ทั้งหมดดูเหมือนว่ากำลังทำงานอยู่บนฮาร์ดแวร์ดั้งเดิม นอกจากนี้ในการคอมไพล์อีกครั้งอย่างที่ฉันพูดรหัสใช้จำนวนที่ค่อนข้างกว้างขวางของการเรียกระดับต่ำไปยัง Win API รวมถึงสิ่งที่น่ารังเกียจบางอย่างในโครงสร้างภายใน ดังนั้นฉันเดาว่ามันจะแตกใน Win7 รุ่นเดสก์ท็อปถึงแม้ว่าฉันไม่ได้พยายามที่จะพอร์ตมันทันที
Richard Tyregrim

2
คุณควรลองพอร์ตอย่างรวดเร็วเพื่อดูว่าเป็นการยากที่จะจัดการกับ - ในประสบการณ์ของฉันรหัสโบราณมีแนวโน้มที่จะพอร์ตไปยังระบบปฏิบัติการ Windows ใหม่อย่างแปลกใจได้อย่างง่ายดายด้วยสิ่งเล็ก ๆ น้อย ๆ ที่ล้าสมัยอย่างแท้จริง
gbjbaanb

4

ฉันคิดว่านี่เป็นปัญหามากขึ้นเกี่ยวกับการรับ virtualbox หรือ vmware เพื่อให้การเข้าถึงพอร์ตอนุกรมโฮสต์มากกว่าที่เป็นเรื่องเกี่ยวกับระบบปฏิบัติการเสมือนจริงหรือแม้กระทั่งระบบปฏิบัติการแขก ฉันจะเริ่มต้นด้วยระบบโฮสต์ที่ใช้ระบบปฏิบัติการที่ทันสมัย ​​(win 7/8/10 หรือ Linux distro) ด้วย USB ไปยังอะแดปเตอร์พอร์ตอนุกรมที่ยึดตามการใช้งานจริงของ rs-232 เช่น pl2303 ที่อุดมสมบูรณ์

ใช้ระบบปฏิบัติการที่ทันสมัยเป็นโฮสต์ติดตั้ง virtualbox และสร้าง guest VM และติดตั้งระบบปฏิบัติการที่รองรับ กุญแจสำคัญคือการรับพอร์ต RS-232 บน guest OS ที่ส่งผ่านไปยัง guest VM ใช้โมฆะโมเด็มและโปรแกรมเทอร์มินัลเพื่อให้แน่ใจว่าพอร์ต RS-232 ทำงานบนระบบโลคัลโฮสต์

หากโฮสต์เป็น Linux มีสิทธิ์บางอย่างที่จำเป็นในการทำเวอร์ชวลไลซ์เซชั่นฮาร์ดแวร์และในกรณีส่วนใหญ่การใส่บัญชีเข้าสู่ระบบของคุณลงในกลุ่ม vboxusers จะเป็นผู้ดูแล


2

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

เวลาล่าสุดที่คุณควรสนับสนุนเครื่องคือเมื่อคุณไม่สามารถซื้อทดแทนบน eBay ได้

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