Load Program Status Word instruction was nominated for deletion. The discussion was closed on 12 June 2011 with a consensus to merge. Its contents were merged into IBM System/360 architecture. The original page is now a redirect to this page. For the contribution history and old versions of the redirected article, please see its history; for its talk page, see here. |
This article is rated Start-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||
|
Some parts of the architecture are specifically called out as model-dependent. I recommend a section listing these. John Sauter ( talk) 19:29, 7 September 2010 (UTC)
Some features differed between models, even though they were not on the architectural list. I am thinking of imprecise interrupts on the larger systems. I think it would be sufficient to mention in passing, when describing a feature, that it was not implemented the same way on all models. John Sauter ( talk) 19:29, 7 September 2010 (UTC)
The System/360 model 20 was a System/360 in name only. IBM acknowledged this by titling the manual which listed software as being for System/360 models 22 and above. The exclusion of the model 20 needs to be mentioned. The models 44 and 67 also departed significantly from the standard architecture. John Sauter ( talk) 19:29, 7 September 2010 (UTC)
We need to be careful about the level of detail. It would not be a good idea to paste in the whole IBM manual (even if it were not a copyright violation) because that level of detail is too great for an encyclopedia article. For example, I do not think we should list all of the instructions, or all of the characters of EBCDIC, though of course we should summarize them. I think it would be a good idea to characterize the I/O devices that were available, but not to attempt to list them all. For example, we could say that card readers, line printers and card punches were important peripherals—that's unusual enough in today's world that it deserves mention, but the speed of the various printers and card readers would be unnecessary. John Sauter ( talk) 02:06, 8 September 2010 (UTC)
I have some problems with the last update.
===Operator controls===
The architecture of System/360 specified the existence of several common functions, but did not specify their means of implementation. This allowed IBM to use different physical means, e.g., pushbutton versus image on a CRT, for selecting the functions on different processors.====Initial Program Load====
Initial Program Load is an architected process for loading a program when there isn't a loader available in storage, usually because the machine was just powered on or to load an alternate operating system. This process is sometimes known as Booting. As part of the IPL facility the operator has a means of specifying a 12-bit device address, typically with three hexadecimal dials. When the operator [1] selects the Load function, the system performs a System Reset, sends an IPL channel command to the selected device in order to read 24 bytes into locations 0-23 and causes the channel to begin fetching CCW's at location 8. At the completion of the I/O, the system stores the I/O address in the halfword at location 2 and loads the PSW from location 0.
- ^ Or an equivalent automated facility.
I'm not sure whether to include the details on prefixing. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 19:01, 8 September 2010 (UTC)
{{
cite book}}
: Check date values in: |date=
(
help)(indenting reset)
As I read A22-6821-7, page 123, only 11 bits are stored, but the remainder of the 16-bit field is made zero: “When the device provides channel end for the last operation of the chain, the I/O address is stored in bits 21-31 of the first word in storage. Bits 16-20 are made zero. Bits 0-15 remain unchanged. The input operation and the storing of the I/O address are not performed when IPL is initiated by means of the external-start lines.”
In my opinion, when referring to such large documents, page numbers are required. John Sauter ( talk) 18:28, 15 September 2010 (UTC)
Footnotes are used in the article for two purposes: parenthetical explanations and references. I suggest dividing them into two groups, as described in Wikipedia's style page on footnotes: [1]. If there are no objections I will do this. John Sauter ( talk) 18:48, 15 September 2010 (UTC)
In several cases I've had footnotes where it seemed appropriate to provide a citation and page number for verification. For this purpose I've been using {{#tag:ref|foo<ref id=bar/>{{rp|page=666}} baz|group=NB}}
.
Shmuel (Seymour J.) Metz Username:Chatul (
talk) 17:34, 15 October 2010 (UTC)
This help request has been answered. If you need more help, you can , contact the responding user(s) directly on their user talk page, or consider visiting the Teahouse. |
I've run into some formatting issues with wikitable and I'm not sure what markup I need to get the desired effect.
{| class="wikitable" |- ! short column !! align=left style="width:30em"|long column !! align=left|Remainder |- | Example || : I'd like for this text to be block indented, but instead the colon appears. || some more text |- | Example || style="margin-left:3em"|Trying with margin-left property to see whether that works any better || Example |- | Example || Example || Example |}
produces
short column | long column | Remainder |
---|---|---|
Example | : I'd like for this text to be block indented, but instead the colon appears. | some more text |
Example | Trying with margin-left property to see whether that works any better | Example |
Example | Example | Example |
How do I get the text in the cell block indented? How do I get the column headers left adjusted? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 18:00, 16 September 2010 (UTC)
). I've done that above. I don't believe wikitables allow for indenting inside of them. Ctrl+f on
Help:Tables for "indent" and you'll see what I mean.
Killiondude (
talk) 18:28, 16 September 2010 (UTC)I'd like to indent within a table cell without a bullet. How can it be done? WriterHound 03:16, 23 August 2007 (UTC)
column 1 | column 2 |
---|---|
11 no indent | 12 no indent |
|
22 no indent |
|
32 no indent |
|
|
Hope that helps - basically, you'll need to spread your table code out over a few lines using single pipes rather than double ones! -- PhantomSteve/ talk| contribs\ 12:34, 17 September 2010 (UTC)
head |
code (this is
! style="text-align:left;"| code |
---|---|
With the normal text around. % Gryllida talk 12:51, 17 September 2010 (UTC) |
<blockquote>First of all, you can use blockquote tag to ident text inside of tables, even if the text is long.</blockquote>With the normal text around. |
| :indented text ('|' and ": indented text" must be on different lines) ~~~~ |
You see, I basically used 'text-align:left;' CSS style in the heading. I used it instead of the 'align' attribute, which doesn't exist for the html element it gets parsed into. I also placed text onto a next line for the colons to indent it. It appears to work. Please let me know if you expect a different result or want more features. % Gryllida talk 13:01, 17 September 2010 (UTC)
After making 'head' a section,
this link points to it, as described at
Help:Link#Section_linking_(anchors). I'm not sure whether linking to non-heading objects is possible; I've not seen it be used in other articles.
%
Gryllida
talk 23:23, 17 September 2010 (UTC)
A recent edit by User:Alan Liefting had a description of External links, but the actual change was deleting
[[Category:Computer architecture]] [[Category:IBM System/360 mainframe line]]
I suspect that he meant to delete the External links section created by the article creation wizard. Is there any reason not to revert the change?
Also, should the categories be at the beginning rather than the end? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 20:10, 29 September 2010 (UTC)
I've been using <ref name=A22-6821-7/>{{rp|page=foo}} for references to specific pages in IBM System/360 Principles of Operation; the references display properly bot I get too many backlinks in the references section. I'm considering something like <sup class=reference>[[#A22-6821-7|A22-6821-7]]</sup>{{rp|page=foo}}, e.g.
Is that reasonable, or should I leave the back links alone? If I should remove them, is this the best way to do so? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 13:15, 10 October 2010 (UTC)
The 360/67 generates program interrupt codes 16 and 17, the Model 65 MP generates interrupt code 18 and models 91 and 95 generate multiple imprecise interrupts. I mention these deviations in footnotes; should I include the codes in the mainline, or stick to what is architected? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 23:43, 10 October 2010 (UTC)
I don't believe that a Set Sector command chained to a No-Op would accomplish anything for uptimizing page placement. I think that you meant Read Sector, but that still raises issues of orientation and timing. I believe that a Read Sector command chained to a read of a dummy record might work, although it would be dicey.
The only S/360 devices that supported RPS were the 2305 fixed-head disk and 33xx moving-head disks. For the former there were 8 exposures, so that sort of trick would be unnecessary, while for the latter there was mechanical motion for seeks.
A better example might be PCI fetch, although that got ugly when you got into the code.
In the meantime I'll change drum to disk, since no IBM drums had RPS, but I believe that we need a better example. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 13:40, 17 October 2010 (UTC)
Set File Mask Seek Search Id Equal TIC *-8 Read Data
The seek involved no mechanical motion, and the division into cylinders was an arbitrary concession to programming convenience. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 22:28, 18 October 2010 (UTC)
Set File Mask for write data and seek cylinder Seek cylinder: select track 0-199 for record 1 Read home address Read R0 Search ID equal record 1 of this track TIC *-8 Read with skip and PCI flags, count is 512 bytes Seek cylinder with PCI flag: select track 0-199 for record 2 Search ID equal record 2 of this track continue as above until the Read with skip for record 31 TIC back to the Seek cylinder for record 1
I think we have a terminology problem when we describe something that is “not part of the architecture”. The title of the article is IBM System/360 Architecture. so why do we describe features that are not part of the architecture? My answer is that the architecture is not limited to what IBM described in the Principles of Operations manual, but includes everything shipped under the name System/360 except the model 20. It is, of course, valuable to note model-dependent differences, but I think it would be less confusing to say that a feature is not part of the formal architecture definition. John Sauter ( talk) 22:19, 22 October 2010 (UTC)
I've been thinking that there should be a paragraph or two at the front of the article that motivates the idea of having an architecture at all. I'm not sure I've got all of my facts straight, but here's what I've been thinking about:
So where does this leave us on the question of a motivation paragraph? It appears that IBM was supporting two incompatible lines in the early 1960s: a commercial line which included the 1401, 1410 and 7010; and a scientific line which included the 7090, 7094 and 7094 II. There was also a supercomputer, the IBM 7030, which was incompatible with both. The IBM 360 unified these three lines into one, with multiple implementations to satisfy different markets: the models 30-50 to replace the 1401, 1410 and 7010; the models 65 and 75 to replace the 7090, 7094 and 7094 II, and the model 91 and its successors to replace the 7030. In addition the model 44 was introduced to address the low-end scientific market, and the model 67 for the time-sharing market. How does that sound? John Sauter ( talk) 18:37, 27 October 2010 (UTC)
Before I deuserfy the article, there are a couple of issues that I'd like to raise.
Tentatively I plan to move the article next week. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 20:11, 5 November 2010 (UTC)
This help request has been answered. If you need more help, you can , contact the responding user(s) directly on their user talk page, or consider visiting the Teahouse. |
What a great amount of work has gone into this already!
I can offer a starting point for some next steps.
While the article's statements are straightforward and factual, the lack of citations throughout gives the appearance of plagiarism or copyright violation. (To be clear: I did not examine the sources, and do not allege either.) I see the level of detail was discussed in a been discussed in this thread above. Every fact in the article needs to be verifiable in reliable sources. The citations should indicate where to look. I see there are a number of citations, but other sections contain none.
The PoOps links confuse me. Do those refer to one of the citations?
The article contains many tiny sections, some of which may be better presented in list format. A formatting option that may be helpful is:
;Significance exception :Recognized when the fraction in a floating-point add or subtract operation is zero<ref>...</ref>
which displays like this:
To continue to improve the article, I think reviewing these may be helpful:
I assessed the article start-class based on concerns about referencing, many tiny sections, and a problem with the lead. I'm happy to continue to help as best I can. I also posted a message on the main IBM System/360 talk page. Good luck as you proceed! -- Pnm ( talk) 18:59, 16 December 2010 (UTC)
{{
cite manual|ref = PoOps}}
. I'll have to investigate why <sup>[[#PoOps|PoOps]]</sup>{{rp|page=foo}} isn't working.<a name="int_exp_overflow"/>
I reinstated the text This article describes I/O from the CPU perspective. It does not discuss the channel cable or connectors, but there is a summary elsewhere and details can be found in the IBM literature [2]. for two reasons.
Wikipedia:Writing better articles#First sentence content states The article should begin with a short declarative sentence, answering two questions for the nonspecialist reader: "What (or who) is the subject?" and "Why is this subject notable?"; however, Wikipedia:Writing better articles#First sentence format presents examples of first sentences that do not answer the second question. Is it legitimate to address notability in a separate sentence, as those examples appear to imply?
I'm thinking about what the lead-in paragraph should be if the article is not merged into the main article. How does this look?
Notes
References
{{
cite book}}
: Missing or empty |title=
(
help) and IBM (June 8, 1970), GN22-0361 {{
cite book}}
: Missing or empty |title=
(
help)
{{
cite book}}
: Check date values in: |date=
(
help)
{{
cite book}}
: Check date values in: |date=
(
help)
If the above look good then I'll replace the existing lead-in. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 18:12, 20 December 2010 (UTC)
Done I did the merge from the Load Program Status Word instruction article. Jeff Ogden ( talk) 17:39, 14 June 2011 (UTC)
The article uses the words "interrupt" and "interrupt" interchangeably. As a matter of style, should we use only one of the words? Alternatively, should we discern a subtle difference between them, and use them in accordance with that difference? Perhaps Interrupt is the verb and Interruption is the noun? John Sauter ( talk) 18:33, 1 September 2011 (UTC)
I have converted the word “interrupt” to “interruption” whenever it was used as a noun. This makes the style consistent within the article, and reflects the usage in Principles of Operation. The label on the Interrupt key, is, of course, unchanged. John Sauter ( talk) 13:46, 7 September 2011 (UTC)
Shmuel (Seymour J.) Metz Username:Chatul ( talk) 19:00, 17 December 2014 (UTC)
The phrase Interruptions from More than Seven Channels is a section name in the cited manual, not a descriptive term. As such, it should have remained inside the <sup</sup> tags. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 17:55, 6 August 2013 (UTC)
To clarify my recent edit, any control unit that attaches multiple devices will have an address capture range on the channel, regardless of the channel type. Some examples of multi-device controllers on a byte multiplexor channel are
Shmuel (Seymour J.) Metz Username:Chatul ( talk) 18:46, 8 March 2015 (UTC)
Could someone provide a simple example of S/360 assembler code, similar to the "Example code" sections for other CPUs (e.g.,
MOSTEK 6502,
Z80,
i8086,
MC68000 etc.)? A simple subroutine that implements a strlower()
function would suffice to show simple looping, comparisons, and register/memory operations. A more complex example (e.g., a floating-point matrix multiplication subroutine) would also be fine, but the concern is to keep the code fairly short, since the whole point is to illustrate what typical S/360 assembler code looks like in a short space (20~40 source lines) space. —
Loadmaster (
talk) 22:34, 12 May 2016 (UTC)
The System/360 architecture covers far more than just the instruction set. It covers, e.g., the interrupt system, the channel architecture. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 19:15, 4 March 2018 (UTC)
An ISA defines everything a machine language programmer needs to know in order to program a computer. What an ISA defines differs between ISAs; in general, ISAs define the supported data types, what state there is (such as the main memory and registers) and their semantics (such as the memory consistency and addressing modes), the instruction set (the set of machine instructions that comprises a computer's machine language), and the input/output model.
In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and implementation of computer systems. Some definitions of architecture define it as describing the capabilities and programming model of a computer but not a particular implementation. [1] In other definitions computer architecture involves instruction set architecture design, microarchitecture design, logic design, and implementation. [2]
instruction set architecture
Also called architecture. An abstract interface between the hardware and the lowest level software of a machine that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on.
References
Architecture describes the internal organization of a computer in an abstract way; that is, it defines the capabilities of the computer and its programming model. You can have two computers that have been constructed in different ways with different technologies but with the same architecture.
This task has many aspects, including instruction set design, functional organization, logic design, and implementation.
In the table "IBM S/360 registers" the footnote says "* Note that IBM documentation numbers the bits in reverse order to that shown above, i.e., the most significant (leftmost) bit is designated as bit number 0."
That being so, why not just number the bits left to right (0 to 63) and just drop the note. Peter Flass ( talk) 15:27, 7 March 2018 (UTC)
I've redone the infobox with charts cut from S/370 articles, including the PSW, S/360 bit numbering and a note that IBM documents it that way. Should I also drag in the 360/67 Extended PSW format from Program status word#S/360? -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 15:01, 11 June 2021 (UTC)
I recently did an edit to remove scare quotes from attention table [a] and to add a footnote, and it occurred to me that the sentence really did not belong in an article on software. Should it be added to OS/360 and successors and removed from here? Likewise for any other text relating to software. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 15:21, 9 August 2019 (UTC)
Notes
References
The article currently refers to the Execute instruction in all caps. PoOps generally has it in all caps, e.g., "Execute: An EXECUTE instruction", but the heading for the instruction description is "Execute". What style should the article use for this and other instructions? -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 11:16, 30 July 2021 (UTC)
In running text EXECUTE is written all-caps. In tables and titles Execute is mixed-case. I recommend we do the same. Also, Principles of Operatons refers to the operand of EXECUTE as its “subject instruction”—I think we could do that also. John Sauter ( talk) 14:00, 30 July 2021 (UTC)
As the lede says: The IBM System/360 architecture is the model independent architecture for the entire S/360 line of mainframe computers, including but not limited to the instruction set architecture.
(emphasis added) Since "instruction set architecture" is a subset of "computer architecture" it seems if we must have one category link that it should be to the parent category, [[Category:Computer architecture]], which, BTW apparently has been linked since
at least 2010.
Tom94022 (
talk) 18:54, 1 January 2023 (UTC)
@ Chatul and Guy Harris: Sorry I didn't make this clear, but @ CoolingGibbon: insists that there be only one category namely, "Instruction set architectures". Personally, I have no problem with both appearing, but if it has to be one category then IMO it should be "Computer architecture". I opened this talk to prevent what was looking like an edit war. Suggestions/Comments? Tom94022 ( talk) 17:47, 2 January 2023 (UTC)
Apparently, some browsers do not treat a cross-reference to Big-endian as a reference to big-endian, so we should make sure that cross references use the same case as the target. There was a notice on this Talk page pointing out this problem. I deleted the notice when I corrected the reference. John Sauter ( talk) 19:21, 9 January 2023 (UTC)
Currently there is an IBM System/370 article but no corresponding architecture article. One way to deal with that is to expand this article to include S/370, exclusive of S/370-XA and S/370-ESA. The alternatives are to expand the S/370 article, which might make it too big, or to write a separate S/70 architecture article. Which of these seems most reasonable? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 05:55, 5 February 2023 (UTC)
If wiki evers gets a heavy duty markup language I would be willing to craft a single master article with conditional logic and separate articles that invoked the master article with appropriate parameters. Even if I knew that was going to happen in the long run, there's still the issue of how to handle it in the mean time. Should we have a chain of architecture articles where each references the article for the latest predecessor, or should they all reference the S/360 article. At first glance, I would go for downward referencing z, ESA (combining 370 and 390), XA and S/370 architecture articles. And, yes, manpower is an issue. -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 16:11, 5 February 2023 (UTC)
|url=
https://share.confex.com/share/117/webprogram/Session9220.html
or |url=
https://share.confex.com/share/117/webprogram/Handout/Session9220/IBM%20zArchitecture%20CPU%20History.pdf
?
Greiner, Dan (August 10, 2011). "IBM z/Architecture CPU Features - A Historical Perspective" (PDF). Evolution of The IBM Mainframe Architecture. SHARE 117 in Orlando. SHARE. Session 9220. Retrieved February 7, 2023.to further reading. The handout name links to the PDF; there is no PDF of the actual session. -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 15:25, 8 February 2023 (UTC)
Those pages are for microprocessor ISAs, which means what they have for I/O is a "minicomputer I/O" design, with one or more of I/O port instructions and memory-mapped I/O addresses, rather than a full channel I/O system as on S/3x0. They also are processors, not systems, so they don't have operator control functions specified in the architecture, as S/3x0 does all the way up to the lastest z/Architecture Principles of Operation. Those pages don't have any examples that would help there.
Most of IBM System/360 architecture § Features, IBM System/360 architecture § Memory, IBM System/360 architecture § Addressing, IBM System/360 architecture § Data formats, and IBM System/360 architecture § Instruction formats can cover everything up to z/Architecture, with the doubling of GPR sizes mentioned for z/Architecture and the addition of IEEE floating point mentioned for S/390 and z/Architecture.
Various parts of IBM System/370 § Architecture details would be incorporated into sections of the S/3x0 architecture page.
IBM System/360 architecture § Program Status Word (PSW) would be expanded for BC and EC mode.
Another section might cover 24-bit real addressing, 24-bit virtual addressing, 31-bit addressing, 64-bit addressing, and multiple address spaces. Guy Harris ( talk) 02:39, 6 February 2023 (UTC)
Horizontal | Vertical |
---|---|
|
|
The horizontal structure matches what some other ISA pages have, so that was what I had in mind.
Instruction length, by itself, isn't interesting; instruction formats are, and they're used on pages for several RISC architectures (with fixed-length instructions, so an "Instruction length" section would just say "32 bits. Next question?" :-)), such as DEC Alpha § Instruction formats, SPARC § Instruction formats, MIPS architecture § Instruction formats. x86 doesn't have it, probably because x86 instruction formats are such an expanded-over-time mess. S/360 was fairly simple, and could use such a list of formats with diagrams, but z/Architecture has about 2 1/4 pages of instruction formats, so that probably goes past the point at which showing all formats make sense. It might be possible to group the formats based on the number of operands and which of them are in registers and which in memory. Guy Harris ( talk) 22:04, 6 February 2023 (UTC)
Load Program Status Word instruction was nominated for deletion. The discussion was closed on 12 June 2011 with a consensus to merge. Its contents were merged into IBM System/360 architecture. The original page is now a redirect to this page. For the contribution history and old versions of the redirected article, please see its history; for its talk page, see here. |
This article is rated Start-class on Wikipedia's
content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||
|
Some parts of the architecture are specifically called out as model-dependent. I recommend a section listing these. John Sauter ( talk) 19:29, 7 September 2010 (UTC)
Some features differed between models, even though they were not on the architectural list. I am thinking of imprecise interrupts on the larger systems. I think it would be sufficient to mention in passing, when describing a feature, that it was not implemented the same way on all models. John Sauter ( talk) 19:29, 7 September 2010 (UTC)
The System/360 model 20 was a System/360 in name only. IBM acknowledged this by titling the manual which listed software as being for System/360 models 22 and above. The exclusion of the model 20 needs to be mentioned. The models 44 and 67 also departed significantly from the standard architecture. John Sauter ( talk) 19:29, 7 September 2010 (UTC)
We need to be careful about the level of detail. It would not be a good idea to paste in the whole IBM manual (even if it were not a copyright violation) because that level of detail is too great for an encyclopedia article. For example, I do not think we should list all of the instructions, or all of the characters of EBCDIC, though of course we should summarize them. I think it would be a good idea to characterize the I/O devices that were available, but not to attempt to list them all. For example, we could say that card readers, line printers and card punches were important peripherals—that's unusual enough in today's world that it deserves mention, but the speed of the various printers and card readers would be unnecessary. John Sauter ( talk) 02:06, 8 September 2010 (UTC)
I have some problems with the last update.
===Operator controls===
The architecture of System/360 specified the existence of several common functions, but did not specify their means of implementation. This allowed IBM to use different physical means, e.g., pushbutton versus image on a CRT, for selecting the functions on different processors.====Initial Program Load====
Initial Program Load is an architected process for loading a program when there isn't a loader available in storage, usually because the machine was just powered on or to load an alternate operating system. This process is sometimes known as Booting. As part of the IPL facility the operator has a means of specifying a 12-bit device address, typically with three hexadecimal dials. When the operator [1] selects the Load function, the system performs a System Reset, sends an IPL channel command to the selected device in order to read 24 bytes into locations 0-23 and causes the channel to begin fetching CCW's at location 8. At the completion of the I/O, the system stores the I/O address in the halfword at location 2 and loads the PSW from location 0.
- ^ Or an equivalent automated facility.
I'm not sure whether to include the details on prefixing. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 19:01, 8 September 2010 (UTC)
{{
cite book}}
: Check date values in: |date=
(
help)(indenting reset)
As I read A22-6821-7, page 123, only 11 bits are stored, but the remainder of the 16-bit field is made zero: “When the device provides channel end for the last operation of the chain, the I/O address is stored in bits 21-31 of the first word in storage. Bits 16-20 are made zero. Bits 0-15 remain unchanged. The input operation and the storing of the I/O address are not performed when IPL is initiated by means of the external-start lines.”
In my opinion, when referring to such large documents, page numbers are required. John Sauter ( talk) 18:28, 15 September 2010 (UTC)
Footnotes are used in the article for two purposes: parenthetical explanations and references. I suggest dividing them into two groups, as described in Wikipedia's style page on footnotes: [1]. If there are no objections I will do this. John Sauter ( talk) 18:48, 15 September 2010 (UTC)
In several cases I've had footnotes where it seemed appropriate to provide a citation and page number for verification. For this purpose I've been using {{#tag:ref|foo<ref id=bar/>{{rp|page=666}} baz|group=NB}}
.
Shmuel (Seymour J.) Metz Username:Chatul (
talk) 17:34, 15 October 2010 (UTC)
This help request has been answered. If you need more help, you can , contact the responding user(s) directly on their user talk page, or consider visiting the Teahouse. |
I've run into some formatting issues with wikitable and I'm not sure what markup I need to get the desired effect.
{| class="wikitable" |- ! short column !! align=left style="width:30em"|long column !! align=left|Remainder |- | Example || : I'd like for this text to be block indented, but instead the colon appears. || some more text |- | Example || style="margin-left:3em"|Trying with margin-left property to see whether that works any better || Example |- | Example || Example || Example |}
produces
short column | long column | Remainder |
---|---|---|
Example | : I'd like for this text to be block indented, but instead the colon appears. | some more text |
Example | Trying with margin-left property to see whether that works any better | Example |
Example | Example | Example |
How do I get the text in the cell block indented? How do I get the column headers left adjusted? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 18:00, 16 September 2010 (UTC)
). I've done that above. I don't believe wikitables allow for indenting inside of them. Ctrl+f on
Help:Tables for "indent" and you'll see what I mean.
Killiondude (
talk) 18:28, 16 September 2010 (UTC)I'd like to indent within a table cell without a bullet. How can it be done? WriterHound 03:16, 23 August 2007 (UTC)
column 1 | column 2 |
---|---|
11 no indent | 12 no indent |
|
22 no indent |
|
32 no indent |
|
|
Hope that helps - basically, you'll need to spread your table code out over a few lines using single pipes rather than double ones! -- PhantomSteve/ talk| contribs\ 12:34, 17 September 2010 (UTC)
head |
code (this is
! style="text-align:left;"| code |
---|---|
With the normal text around. % Gryllida talk 12:51, 17 September 2010 (UTC) |
<blockquote>First of all, you can use blockquote tag to ident text inside of tables, even if the text is long.</blockquote>With the normal text around. |
| :indented text ('|' and ": indented text" must be on different lines) ~~~~ |
You see, I basically used 'text-align:left;' CSS style in the heading. I used it instead of the 'align' attribute, which doesn't exist for the html element it gets parsed into. I also placed text onto a next line for the colons to indent it. It appears to work. Please let me know if you expect a different result or want more features. % Gryllida talk 13:01, 17 September 2010 (UTC)
After making 'head' a section,
this link points to it, as described at
Help:Link#Section_linking_(anchors). I'm not sure whether linking to non-heading objects is possible; I've not seen it be used in other articles.
%
Gryllida
talk 23:23, 17 September 2010 (UTC)
A recent edit by User:Alan Liefting had a description of External links, but the actual change was deleting
[[Category:Computer architecture]] [[Category:IBM System/360 mainframe line]]
I suspect that he meant to delete the External links section created by the article creation wizard. Is there any reason not to revert the change?
Also, should the categories be at the beginning rather than the end? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 20:10, 29 September 2010 (UTC)
I've been using <ref name=A22-6821-7/>{{rp|page=foo}} for references to specific pages in IBM System/360 Principles of Operation; the references display properly bot I get too many backlinks in the references section. I'm considering something like <sup class=reference>[[#A22-6821-7|A22-6821-7]]</sup>{{rp|page=foo}}, e.g.
Is that reasonable, or should I leave the back links alone? If I should remove them, is this the best way to do so? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 13:15, 10 October 2010 (UTC)
The 360/67 generates program interrupt codes 16 and 17, the Model 65 MP generates interrupt code 18 and models 91 and 95 generate multiple imprecise interrupts. I mention these deviations in footnotes; should I include the codes in the mainline, or stick to what is architected? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 23:43, 10 October 2010 (UTC)
I don't believe that a Set Sector command chained to a No-Op would accomplish anything for uptimizing page placement. I think that you meant Read Sector, but that still raises issues of orientation and timing. I believe that a Read Sector command chained to a read of a dummy record might work, although it would be dicey.
The only S/360 devices that supported RPS were the 2305 fixed-head disk and 33xx moving-head disks. For the former there were 8 exposures, so that sort of trick would be unnecessary, while for the latter there was mechanical motion for seeks.
A better example might be PCI fetch, although that got ugly when you got into the code.
In the meantime I'll change drum to disk, since no IBM drums had RPS, but I believe that we need a better example. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 13:40, 17 October 2010 (UTC)
Set File Mask Seek Search Id Equal TIC *-8 Read Data
The seek involved no mechanical motion, and the division into cylinders was an arbitrary concession to programming convenience. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 22:28, 18 October 2010 (UTC)
Set File Mask for write data and seek cylinder Seek cylinder: select track 0-199 for record 1 Read home address Read R0 Search ID equal record 1 of this track TIC *-8 Read with skip and PCI flags, count is 512 bytes Seek cylinder with PCI flag: select track 0-199 for record 2 Search ID equal record 2 of this track continue as above until the Read with skip for record 31 TIC back to the Seek cylinder for record 1
I think we have a terminology problem when we describe something that is “not part of the architecture”. The title of the article is IBM System/360 Architecture. so why do we describe features that are not part of the architecture? My answer is that the architecture is not limited to what IBM described in the Principles of Operations manual, but includes everything shipped under the name System/360 except the model 20. It is, of course, valuable to note model-dependent differences, but I think it would be less confusing to say that a feature is not part of the formal architecture definition. John Sauter ( talk) 22:19, 22 October 2010 (UTC)
I've been thinking that there should be a paragraph or two at the front of the article that motivates the idea of having an architecture at all. I'm not sure I've got all of my facts straight, but here's what I've been thinking about:
So where does this leave us on the question of a motivation paragraph? It appears that IBM was supporting two incompatible lines in the early 1960s: a commercial line which included the 1401, 1410 and 7010; and a scientific line which included the 7090, 7094 and 7094 II. There was also a supercomputer, the IBM 7030, which was incompatible with both. The IBM 360 unified these three lines into one, with multiple implementations to satisfy different markets: the models 30-50 to replace the 1401, 1410 and 7010; the models 65 and 75 to replace the 7090, 7094 and 7094 II, and the model 91 and its successors to replace the 7030. In addition the model 44 was introduced to address the low-end scientific market, and the model 67 for the time-sharing market. How does that sound? John Sauter ( talk) 18:37, 27 October 2010 (UTC)
Before I deuserfy the article, there are a couple of issues that I'd like to raise.
Tentatively I plan to move the article next week. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 20:11, 5 November 2010 (UTC)
This help request has been answered. If you need more help, you can , contact the responding user(s) directly on their user talk page, or consider visiting the Teahouse. |
What a great amount of work has gone into this already!
I can offer a starting point for some next steps.
While the article's statements are straightforward and factual, the lack of citations throughout gives the appearance of plagiarism or copyright violation. (To be clear: I did not examine the sources, and do not allege either.) I see the level of detail was discussed in a been discussed in this thread above. Every fact in the article needs to be verifiable in reliable sources. The citations should indicate where to look. I see there are a number of citations, but other sections contain none.
The PoOps links confuse me. Do those refer to one of the citations?
The article contains many tiny sections, some of which may be better presented in list format. A formatting option that may be helpful is:
;Significance exception :Recognized when the fraction in a floating-point add or subtract operation is zero<ref>...</ref>
which displays like this:
To continue to improve the article, I think reviewing these may be helpful:
I assessed the article start-class based on concerns about referencing, many tiny sections, and a problem with the lead. I'm happy to continue to help as best I can. I also posted a message on the main IBM System/360 talk page. Good luck as you proceed! -- Pnm ( talk) 18:59, 16 December 2010 (UTC)
{{
cite manual|ref = PoOps}}
. I'll have to investigate why <sup>[[#PoOps|PoOps]]</sup>{{rp|page=foo}} isn't working.<a name="int_exp_overflow"/>
I reinstated the text This article describes I/O from the CPU perspective. It does not discuss the channel cable or connectors, but there is a summary elsewhere and details can be found in the IBM literature [2]. for two reasons.
Wikipedia:Writing better articles#First sentence content states The article should begin with a short declarative sentence, answering two questions for the nonspecialist reader: "What (or who) is the subject?" and "Why is this subject notable?"; however, Wikipedia:Writing better articles#First sentence format presents examples of first sentences that do not answer the second question. Is it legitimate to address notability in a separate sentence, as those examples appear to imply?
I'm thinking about what the lead-in paragraph should be if the article is not merged into the main article. How does this look?
Notes
References
{{
cite book}}
: Missing or empty |title=
(
help) and IBM (June 8, 1970), GN22-0361 {{
cite book}}
: Missing or empty |title=
(
help)
{{
cite book}}
: Check date values in: |date=
(
help)
{{
cite book}}
: Check date values in: |date=
(
help)
If the above look good then I'll replace the existing lead-in. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 18:12, 20 December 2010 (UTC)
Done I did the merge from the Load Program Status Word instruction article. Jeff Ogden ( talk) 17:39, 14 June 2011 (UTC)
The article uses the words "interrupt" and "interrupt" interchangeably. As a matter of style, should we use only one of the words? Alternatively, should we discern a subtle difference between them, and use them in accordance with that difference? Perhaps Interrupt is the verb and Interruption is the noun? John Sauter ( talk) 18:33, 1 September 2011 (UTC)
I have converted the word “interrupt” to “interruption” whenever it was used as a noun. This makes the style consistent within the article, and reflects the usage in Principles of Operation. The label on the Interrupt key, is, of course, unchanged. John Sauter ( talk) 13:46, 7 September 2011 (UTC)
Shmuel (Seymour J.) Metz Username:Chatul ( talk) 19:00, 17 December 2014 (UTC)
The phrase Interruptions from More than Seven Channels is a section name in the cited manual, not a descriptive term. As such, it should have remained inside the <sup</sup> tags. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 17:55, 6 August 2013 (UTC)
To clarify my recent edit, any control unit that attaches multiple devices will have an address capture range on the channel, regardless of the channel type. Some examples of multi-device controllers on a byte multiplexor channel are
Shmuel (Seymour J.) Metz Username:Chatul ( talk) 18:46, 8 March 2015 (UTC)
Could someone provide a simple example of S/360 assembler code, similar to the "Example code" sections for other CPUs (e.g.,
MOSTEK 6502,
Z80,
i8086,
MC68000 etc.)? A simple subroutine that implements a strlower()
function would suffice to show simple looping, comparisons, and register/memory operations. A more complex example (e.g., a floating-point matrix multiplication subroutine) would also be fine, but the concern is to keep the code fairly short, since the whole point is to illustrate what typical S/360 assembler code looks like in a short space (20~40 source lines) space. —
Loadmaster (
talk) 22:34, 12 May 2016 (UTC)
The System/360 architecture covers far more than just the instruction set. It covers, e.g., the interrupt system, the channel architecture. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 19:15, 4 March 2018 (UTC)
An ISA defines everything a machine language programmer needs to know in order to program a computer. What an ISA defines differs between ISAs; in general, ISAs define the supported data types, what state there is (such as the main memory and registers) and their semantics (such as the memory consistency and addressing modes), the instruction set (the set of machine instructions that comprises a computer's machine language), and the input/output model.
In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and implementation of computer systems. Some definitions of architecture define it as describing the capabilities and programming model of a computer but not a particular implementation. [1] In other definitions computer architecture involves instruction set architecture design, microarchitecture design, logic design, and implementation. [2]
instruction set architecture
Also called architecture. An abstract interface between the hardware and the lowest level software of a machine that encompasses all the information necessary to write a machine language program that will run correctly, including instructions, registers, memory access, I/O, and so on.
References
Architecture describes the internal organization of a computer in an abstract way; that is, it defines the capabilities of the computer and its programming model. You can have two computers that have been constructed in different ways with different technologies but with the same architecture.
This task has many aspects, including instruction set design, functional organization, logic design, and implementation.
In the table "IBM S/360 registers" the footnote says "* Note that IBM documentation numbers the bits in reverse order to that shown above, i.e., the most significant (leftmost) bit is designated as bit number 0."
That being so, why not just number the bits left to right (0 to 63) and just drop the note. Peter Flass ( talk) 15:27, 7 March 2018 (UTC)
I've redone the infobox with charts cut from S/370 articles, including the PSW, S/360 bit numbering and a note that IBM documents it that way. Should I also drag in the 360/67 Extended PSW format from Program status word#S/360? -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 15:01, 11 June 2021 (UTC)
I recently did an edit to remove scare quotes from attention table [a] and to add a footnote, and it occurred to me that the sentence really did not belong in an article on software. Should it be added to OS/360 and successors and removed from here? Likewise for any other text relating to software. Shmuel (Seymour J.) Metz Username:Chatul ( talk) 15:21, 9 August 2019 (UTC)
Notes
References
The article currently refers to the Execute instruction in all caps. PoOps generally has it in all caps, e.g., "Execute: An EXECUTE instruction", but the heading for the instruction description is "Execute". What style should the article use for this and other instructions? -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 11:16, 30 July 2021 (UTC)
In running text EXECUTE is written all-caps. In tables and titles Execute is mixed-case. I recommend we do the same. Also, Principles of Operatons refers to the operand of EXECUTE as its “subject instruction”—I think we could do that also. John Sauter ( talk) 14:00, 30 July 2021 (UTC)
As the lede says: The IBM System/360 architecture is the model independent architecture for the entire S/360 line of mainframe computers, including but not limited to the instruction set architecture.
(emphasis added) Since "instruction set architecture" is a subset of "computer architecture" it seems if we must have one category link that it should be to the parent category, [[Category:Computer architecture]], which, BTW apparently has been linked since
at least 2010.
Tom94022 (
talk) 18:54, 1 January 2023 (UTC)
@ Chatul and Guy Harris: Sorry I didn't make this clear, but @ CoolingGibbon: insists that there be only one category namely, "Instruction set architectures". Personally, I have no problem with both appearing, but if it has to be one category then IMO it should be "Computer architecture". I opened this talk to prevent what was looking like an edit war. Suggestions/Comments? Tom94022 ( talk) 17:47, 2 January 2023 (UTC)
Apparently, some browsers do not treat a cross-reference to Big-endian as a reference to big-endian, so we should make sure that cross references use the same case as the target. There was a notice on this Talk page pointing out this problem. I deleted the notice when I corrected the reference. John Sauter ( talk) 19:21, 9 January 2023 (UTC)
Currently there is an IBM System/370 article but no corresponding architecture article. One way to deal with that is to expand this article to include S/370, exclusive of S/370-XA and S/370-ESA. The alternatives are to expand the S/370 article, which might make it too big, or to write a separate S/70 architecture article. Which of these seems most reasonable? Shmuel (Seymour J.) Metz Username:Chatul ( talk) 05:55, 5 February 2023 (UTC)
If wiki evers gets a heavy duty markup language I would be willing to craft a single master article with conditional logic and separate articles that invoked the master article with appropriate parameters. Even if I knew that was going to happen in the long run, there's still the issue of how to handle it in the mean time. Should we have a chain of architecture articles where each references the article for the latest predecessor, or should they all reference the S/360 article. At first glance, I would go for downward referencing z, ESA (combining 370 and 390), XA and S/370 architecture articles. And, yes, manpower is an issue. -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 16:11, 5 February 2023 (UTC)
|url=
https://share.confex.com/share/117/webprogram/Session9220.html
or |url=
https://share.confex.com/share/117/webprogram/Handout/Session9220/IBM%20zArchitecture%20CPU%20History.pdf
?
Greiner, Dan (August 10, 2011). "IBM z/Architecture CPU Features - A Historical Perspective" (PDF). Evolution of The IBM Mainframe Architecture. SHARE 117 in Orlando. SHARE. Session 9220. Retrieved February 7, 2023.to further reading. The handout name links to the PDF; there is no PDF of the actual session. -- Shmuel (Seymour J.) Metz Username:Chatul ( talk) 15:25, 8 February 2023 (UTC)
Those pages are for microprocessor ISAs, which means what they have for I/O is a "minicomputer I/O" design, with one or more of I/O port instructions and memory-mapped I/O addresses, rather than a full channel I/O system as on S/3x0. They also are processors, not systems, so they don't have operator control functions specified in the architecture, as S/3x0 does all the way up to the lastest z/Architecture Principles of Operation. Those pages don't have any examples that would help there.
Most of IBM System/360 architecture § Features, IBM System/360 architecture § Memory, IBM System/360 architecture § Addressing, IBM System/360 architecture § Data formats, and IBM System/360 architecture § Instruction formats can cover everything up to z/Architecture, with the doubling of GPR sizes mentioned for z/Architecture and the addition of IEEE floating point mentioned for S/390 and z/Architecture.
Various parts of IBM System/370 § Architecture details would be incorporated into sections of the S/3x0 architecture page.
IBM System/360 architecture § Program Status Word (PSW) would be expanded for BC and EC mode.
Another section might cover 24-bit real addressing, 24-bit virtual addressing, 31-bit addressing, 64-bit addressing, and multiple address spaces. Guy Harris ( talk) 02:39, 6 February 2023 (UTC)
Horizontal | Vertical |
---|---|
|
|
The horizontal structure matches what some other ISA pages have, so that was what I had in mind.
Instruction length, by itself, isn't interesting; instruction formats are, and they're used on pages for several RISC architectures (with fixed-length instructions, so an "Instruction length" section would just say "32 bits. Next question?" :-)), such as DEC Alpha § Instruction formats, SPARC § Instruction formats, MIPS architecture § Instruction formats. x86 doesn't have it, probably because x86 instruction formats are such an expanded-over-time mess. S/360 was fairly simple, and could use such a list of formats with diagrams, but z/Architecture has about 2 1/4 pages of instruction formats, so that probably goes past the point at which showing all formats make sense. It might be possible to group the formats based on the number of operands and which of them are in registers and which in memory. Guy Harris ( talk) 22:04, 6 February 2023 (UTC)