2009-03-20 24 views
8

Tôi đã mã hóa và quản lý các ứng dụng ASP.Net & ASP.Net & cho toàn bộ sự nghiệp của mình. Bây giờ tôi đang được hướng tới sự tham gia vào các khung hình chính, tức là z/OS & JCL, và tôi thấy khó khăn để quấn đầu xung quanh nó (họ vẫn nói về thẻ đục lỗ!). Cách tốt nhất để đi về việc học tất cả những điều này sau khi đã được hoàn toàn hư hỏng bởi xa xỉ hiện đại là gì?Học mainframe & JCL với nền Java/OOP/SQL

Trả lời

21

Không có thẻ đục lỗ trong các khung hình chính hiện đại, chúng chỉ có bạn.

Bạn sẽ gặp khó khăn vì vẫn còn nhiều việc được thực hiện theo cách "cũ".

  • Tập dữ liệu vẫn được phân bổ với các thuộc tính như khối cố định-80, biến khối-255 và v.v. Lập kế hoạch nội dung tệp của bạn.
  • Không có thư mục nào. Có cấp độ phân cấp và chúng được giới hạn trong 8 ký tự.
  • Giao diện người dùng là ISPF, giao diện người dùng chế độ văn bản màu xanh lá cây từ vòng tròn thứ bảy của địa ngục cho những người không quen với nó.
  • Hầu hết các công việc vẫn sẽ được gửi dưới dạng tác vụ theo lô và bạn sẽ phải theo dõi tiến trình của họ với SDSF (loại trình quản lý tác vụ).

Đó là một số trong những tin tức xấu, đây là tin tốt:

Nó có một hệ thống phụ USS (UNIX), do đó bạn có thể sử dụng những công cụ này. Nó được tích hợp tốt với z/OS. Nó chạy Java, nó chạy Websphere, nó chạy DB2 (đúng DB2, không phải một chút Linux/UNIX/Windows), nó chạy MQ, v.v. Nhiều cửa hàng cũng sẽ chạy z/VM, một hypervisor, theo đó họ sẽ chạy nhiều LPAR (phân vùng logic), bao gồm z/OS chính nó (nhiều bản sao, đôi khi) và zLinux (SLES/RHEL).

Máy tính lớn không có nguy cơ biến mất bất cứ lúc nào sớm. Vẫn còn một lượng lớn công việc đang được thực hiện tại nhiều phòng thí nghiệm của IBM trên khắp thế giới và hệ điều hành 64 bit (z/OS, là MVS, là OS/390, ...) đã đi một chặng đường dài. Trong thực tế, có một chút cơ hội nghề nghiệp như tất cả các oldies mà biết về nó là ở hoặc trên 55 tuổi, vì vậy mong đợi một hút lớn lên bậc thang của công ty nếu bạn vị trí chính xác.

Nó vẫn được sử dụng trong các tập đoàn lớn vì đó là điều duy nhất có thể tin cậy với giao dịch của họ - z trong System z có nghĩa là thời gian ngừng hoạt động và đó không chỉ là quảng cáo tiếp thị. Sức mạnh của máy tính lớn không phải là CPU cồng kềnh (bộ vi xử lý cá nhân không mạnh mẽ nhưng chúng có trong sách 54 CPU với bản sao lưu nóng và bạn có thể chạy nhiều sách trong một hộp System z) nhưng thực tế là tất cả các CPU hiện là quá trình hướng dẫn.

Tất cả mọi thứ khác đều được tách ra để xử lý chuyên, zIIPs cho DB2, zAAPs cho khối lượng công việc Java, các thiết bị khác cho I/O (và I/O là nơi mà các máy tính lớn giết chết tất cả các hệ thống khác, sử dụng cáp quang và rất mảng đĩa lớn). Tôi sẽ không sử dụng nó để gấp protein hoặc trình tự bộ gen nhưng nó lý tưởng cho nơi nó được nhắm mục tiêu, mức độ xử lý giao dịch cực kỳ điên rồ.

Như tôi đã nói, z/OS có hệ thống con UNIX và z/VM có thể chạy nhiều bản sao của z/OS và các hệ điều hành khác - Tôi đã nhìn thấy một hộp z800 đơn chạy hàng chục nghìn bản RHEL đồng thời.Điều này đặt tất cả các tuyên bố “xanh” của các nhà sản xuất PC về sự xấu hổ và giao tiếp giữa các cá thể là nhanh chóng với HyperSockets (TCP/IP, nhưng sử dụng bộ nhớ chia sẻ hơn là trên các cáp mạng chậm) (vâng, thậm chí thu thập Gigabit Ethernet so với HyperSockets) các dấu ngoặc đơn lồng nhau :-))).

Ứng dụng chạy Máy chủ ứng dụng Websphere và Java khá tốt trong không gian Unix trong khi vẫn cho phép tất cả các công cụ cũ (di sản?) Chạy tốt. Trong thực tế, các cửa hàng máy tính lớn không cần phải mua máy chủ dựa trên máy tính chút nào, chúng chỉ làm hỏng một vài máy ảo zLinux và chạy mọi thứ trên một hộp.

Và gần đây, có nói về việc IBM có thể cung cấp các thiết bị xSeries (ví dụ, PC) cho các máy tính lớn của họ. Trong khi hầu hết người dùng máy tính lớn sẽ xem xét một mụn cóc ở bên cạnh hộp đẹp mắt của họ, nó mở ra một khả năng cho nhà cung cấp bên thứ ba. Tôi không chắc rằng họ sẽ có thể chạy 50.000 trường hợp Windows nhưng đó là loại điều họ dường như đang nhắm tới (một vòng để cai trị tất cả chúng?).

Nếu bạn quan tâm, có một trình mô phỏng System z gọi là Hercules mà tôi đã thấy chạy ở 23 MIPS trên hộp Windows và chạy MVS 3.8j hợp pháp đủ nhanh để có được cảm giác. Chỉ cần nhớ rằng MVS 3.8j là z/OS 1.10 là CP/M là Windows XP.

Để cung cấp một plug shameless cho một cuốn sách một người bạn của tôi tại nơi làm việc đã viết, hãy kiểm tra What On Earth is a Mainframe? bởi David Stephens (ISBN-13 = 978-1409225355). Tôi tìm thấy điều này vô giá vì tôi đến từ một nền tảng PC/UNIX, và nó là một sự thay đổi khá mô hình. Tôi nghĩ cuốn sách này sẽ lý tưởng cho câu hỏi cụ thể của bạn. Tôi nghĩ rằng các phần của nó có sẵn trên Google Sách để bạn có thể thử trước khi mua.

Về JCL, có một trường tư tưởng rằng chỉ có một tệp JCL đã từng được viết và tất cả những người khác đã cắt giảm các công việc về việc đó. Nhìn thấy nội dung của chúng, tôi có thể hiểu được điều này. Các chương trình như IEBGENER và IEFBR14 làm cho Unix nhìn, nếu không tiết lộ, ít nhất là dễ hiểu.

+2

Câu trả lời hay! Tôi đã làm một số công việc máy tính lớn trong quá khứ. Đó là một môi trường rất thú vị. Và thường bị hiểu lầm. –

+1

Về thẻ đục lỗ, họ không đưa tôi vào. Người đã sử dụng nó là một cuộc gọi hội nghị và không biết một người mới như tôi ở đó. Một chút googling nói với tôi rằng các mainframe cũ vẫn sử dụng ngôn ngữ đó. Tôi không biết những gì thẻ đục lỗ dịch trong thuật ngữ máy tính lớn hiện đại, mặc dù. – Tim

+2

@Tim, nó có lẽ chỉ là một thực tế là các thành viên có chứa JCL và các tập tin đối tượng vẫn còn định dạng FB80, giới hạn đến 80 ký tự chiều rộng. Trong thực tế, đối tượng "các tệp" được truyền vào trong trình kết nối (liên kết) vẫn được gọi là các tầng đối tượng (như trong các tầng cũ của các thẻ đục lỗ được sử dụng để giữ chúng). – paxdiablo

1

Nếu bạn sắp tham gia phát triển ứng dụng kế thừa truyền thống, hãy đọc sách của Steve Eckols. Chúng khá tốt. Bạn cần phải so sánh các điều khoản từ các hệ thống mở với máy tính lớn sẽ giảm thời gian học tập của bạn. Vài ví dụ tập tin được gọi là Datasets trên mainframe JCL là giống như một kịch bản shell tiểu chương trình/thói quen hay như chức năng thông thường vv ... Chúc may mắn ...

-1

Bàn tay hơn cầm ngay từ đầu thì càng tốt. Tôi đã làm việc trên một máy tính lớn như là một thực tập sinh và nó không phải là dễ dàng mặc dù tôi đã có một nền tảng UNIX khá mạnh. Tôi khuyên bạn nên hỏi ai đó làm việc trong bộ phận máy tính lớn để dành một hoặc hai ngày để dạy bạn những điều cơ bản. Đào tạo của IBM cũng có thể hữu ích nhưng tôi không có bất kỳ kinh nghiệm nào về nó nên không thể đảm bảo nó sẽ được. Tôi đã đặt câu chuyện của mình về cách học cách sử dụng khung chính bên dưới cho một số ngữ cảnh. Nó đã được quyết định rằng tất cả các thực tập sẽ học cách sử dụng máy tính lớn như một dự án mùa hè mà sẽ mất 20% thời gian đó. Đó là một thảm họa hoàn toàn vì tất cả các thực tập viên chấp nhận tôi đã làm việc trong các khu vực không phải máy tính lớn và không ai có thể hét lên trên bức tường lập phương để được giúp đỡ. Môi trường ISPF và JCL là người ngoài hành tinh để họ thành thạo nhanh chóng. Thành công duy nhất mà họ có là lập trình cơ bản theo USS vì nó cơ bản là UNIX và đại học đã làm quen với điều này. Tôi đã may mắn hơn vì hai lý do. Tôi đã làm việc trong một nhóm khoảng 20 lập trình viên máy tính lớn để có thể nhờ ai đó ngồi với tôi một cách thường xuyên để giúp tôi tìm ra JCL, gửi công việc, v.v.Thứ hai, tôi đã sử dụng Rational Developer for System z khi nó được đặt tên là WebSphere Developer for System z. Điều này mang lại cho tôi một giao diện có thể sử dụng chủ yếu, cho phép tôi thực hiện hầu hết các tác vụ như gửi công việc, chỉnh sửa tập dữ liệu, phân bổ bộ dữ liệu, chương trình gỡ lỗi, v.v. Mặc dù không được đánh bóng nhưng đủ khả năng và có nghĩa là tôi không phải học ISPF. Thực tế là tôi đã có một IDE dựa trên Eclipsed để thực hiện các tác vụ cơ bản của máy tính lớn làm giảm đường cong học tập một cách đáng kể và có nghĩa là tôi chỉ phải học các công nghệ mới như JCL không phải là một môi trường hoàn toàn mới. Một lưu ý nữa là bây giờ tôi sử dụng ISPF vì phần mềm cần thiết để cho phép Rational chạy trên khung chính không được cài đặt trên một trong các hệ thống sản xuất mà tôi đã sử dụng để ISPF là lựa chọn duy nhất. Bây giờ tôi thấy rằng ISPF nhanh hơn sau đó là Rational Developer và tôi hiệu quả hơn với nó. Điều này chỉ vì tôi đã có thể tìm hiểu công nghệ cơ bản như JCL với Rational và giao diện ISPF vào một ngày sau đó. Nếu tôi phải học cả hai cùng một lúc thì sẽ khó hơn nhiều và yêu cầu nhiều hơn một hướng dẫn.

2

Quan niệm sai lầm đầu tiên của bạn là tin tưởng vào "L" trong JCL. JCL không phải là một ngôn ngữ lập trình mà nó thực sự là một khai báo tĩnh về cách một chương trình nên chạy và những tệp gì vv nó nên sử dụng.

Bằng cách này nó giống như (mặc dù cấp trên) spahetti cấu hình xml được sử dụng để kiểm soát phần mềm "hiện đại" như mùa xuân, hebernate và kiến.

Nếu bạn nghĩ về điều này, tất cả sẽ trở nên rõ ràng.

Nền văn hóa chính được thúc đẩy bởi hai nỗi ám ảnh không thể so sánh được.

  1. Tính tương thích ngược. Bạn vẫn có thể chạy các tập tin thực thi được viết và biên dịch vào năm 1970. Các JCL và các tập lệnh cũ vẫn hoạt động!
  2. Hiệu suất cạnh chảy máu. Bạn có thể có 128 cpus trên bốn máy trong hai trung tâm dữ liệu làm việc trên một truy vấn DB2 đơn. Nó sẽ chạy các ứng dụng J2EE (Websphere) mới nhất nhanh hơn bất kỳ máy nào khác.
Các vấn đề liên quan