This is a follow up of 2 previous threads. IA64 architecture will be different enough from previous ones to ensure the break of the 'ascendant compatibility' concept when moving to Win64. The so called 'Assembler' written in C by Intel is no way what 'we all' would call an Assembler. This is, even more than MASM, a C side tool. 16 bits applications will no more be assumed and 32 Applications will only be run by an emulator (What means: With a dramatic slow down of executions, because the emulator will have a big job to do -not only because of the different sizes, but also because the registers are different in IA64. For example, the AH, BH, CH, DH registers will no more exist-...). The practical interrest of 64 bits for usual Applications is equal to zero. IA64 and Win64 are designed for Web monster Data amounts deals. So, this is not completely ensured that 64 bits had any real life futur because *nix system are already there. We do not need it >>> 'they' need it, for the market reasons you all know. All this futur depends on several things at a time: - Public success (i am afraid that low knowledge people will think that 64 is better than 32). - Programmers follow up of this evolution (i am afraid that, with C sources this shouldn't be a problem at all for them). - The oncoming of ReactOS. ReactOS is a Project for a NT clone. Actually main parts of Advapi/Crtdll/Gdi/Kernel/Msvcrt/User32 DLLs are achieved. This fantastic work have been done by a very tiny group of programmers. As soon as the GDI and associated functions will be fullfilled and the GUI writing started up, we can hope that a much more important number of programmers will want to join the project, and so forth, will reduce the required time before a public usable version (this is what did happend in Linux developpement). When this all this will be done, nobody will anymore talk of Win. As ReactOS is open source, we can guess that it will be distibuted just like Linux is actually. This is to say, distributed with all the open sources developpements tools. For Assembly programing this will be NASM (and, i hope, SpAsm). If we effectively have to switch to 64 bits (who knows?), updatings of NASM and SpAsm will be possible, whereas updating of MASM will be quite impossible. So, unless someone would want to go on supporting M$ 32 and fighting open source, there will be no futur for MASM, because, if Win64 is a success (in 2002 or so...), they will certainaly not update MASM for you, and, any case, when ReactOS (finished when finished -time works with us-...), will defeat Win, all the game will be played and over. betov.
Nice, story betov. 2002 is overly optimistic! Given modern development strategies, I think what chip your code is running on will become less important. Given the verbosity of script languages and virtual machines to run byte code, only those programming underneith these abstractions will concern themselves with the processors. IMHO - as always.
Yah, I figure if I'm writing for a 32bit ~500Mhz range as my target system. Win64 when released will be running on 64bit ~2ghz machines as a target platform. So the slowing down of any of my work won't be noticeable. If you think up a graph in your mind of software quality vs. Computer advancements you'll see what I'm getting at. I used to have a very nice word processor in DOS that was like 120kb, and it did EVERYTHING! Footnotes, Headers, Fonts (Sizes, Italics, Bold, Underline, SuperScripts, SubScripts, etc...) Rulers, Tables, etc... And this would run on an 286 (Maybe even an XT?) Now we have MS Word, it may look very nice, but functionally it's not really that much more. Let's even go as far as to say it's got 500% more features, well check the size and system requirements out, it's multithousands of percentages more than the older stuff. As computer get faster with more ram, more HD space and faster bus speeds, not to mention larger storage bases (Like CD's) It becomes normal to make your application 25mb. The system can handle this sloppiness. The reason I started programming in assembler was for game developement I figure, all the "other" guys are developing in C++ which may be fast dev time, but if I use asm I can use every last CPU cycle to my advantage to achieve a better game. To be honest you just can't keep up with the market writing entire games in ASM, look at Bogdans game, it's a great game compared to StarCraft and C&C (Or at least it's got more potential) but look at the new games like RedAlert2. You just can't keep up. So I think I've come to the conclusion that the only way to make money is to use C++ with inline ASM for speed. Then it becomes the responsability of the Developement Environment to have an up to date ASM compiler. This is where the industry will go. Wether we like it or not as ASM programmers. Just like Linux, ReactOS won't be able to overcome windows, even though it may be much better. Making money with programming is all about the market, not the quality of the OS, or platform it's running on. That's what holds back all these new ventures (Like BeOS). Well there's my daily rant. See ya, Ben
Wow, Wellcome back Betov! :) to be the same pessimist as you all: Comerce and competition is the thing that makes this race (Earth) be such a HELL when it could be HEAVEN :( technologicaly or any other way :) Now really: I also do bloatware (VisualFoxPro) to earn my money :( because the market wants deadlines etc etc... bottom line they want it they get it! But i Do NOT BELIVE in bloatware (see my full asm game) and if anybody asks i will tell them the TRUE...only to see the look on their face...as they run away and go to thei nice sleep again... IF 64 bits (LOL i wonder whem 16384 bits will appear) will hit the market THEN i think we will be albe to make a IA64 ASM with our power united... i myself will sure do it...and i am sure Betov will also change his SPAsm, NASM will also have little troubles ... so WHY worry...? Algorithms will not change, memory will remain memory, adresses adresses etc :) we all have sources to what we do...dont we? a few changes and they all should work in 64 bits also...we will compile with whatever free tool will be out there (i will ultimately use Linux GAS if NASM or SPASM will not do it :) ) and as a last resort i will binary make the INNER loop of a FIG FORTH System by hand (its about 10 instructions long even i can assemble that by hand :) ) then i will make the ASM64 inside FORTH...that is very easy: curent IA32 takea about 3 pages of text...and i will mix FORTH and ASM...not C++ and ASM.. ALL This for my Heart and Soul.... for the money :) eh that is another thing...:)
Intel has a bunch of info on the IA-64 at their site: http://www.intel.com/design/ia-64/index.htm The 64 doesn't need an emulator to run 32-bit code. It has a compatibility mode to do this. Think of it as a pentium core attached to the new processor. I don't expect to see much of a performance hit when running 32-bit code on the IA-64. A 1 ghz IA-64 and a 1 ghz pentium should execute the same 32-bit program in about the same amount of time. In fact the 64 may even be faster, since it fetches twice as much data from memory at a time, and memory access is a big hit. The 64 isn't a "replacement" for the x86. Both will co-exist for quite some time, and Intel will continue to develop IA-32 machines for the forseeable future. At first, the 64 is aimed at high end servers and very high end workstations. I don't think the "average user" is going to have an IA-64 based machine for several years. If and when most of the world moves to the IA-64, so what? It's just another architecture to learn. I've done assembly on the IBM-360/370/390 mainframe, the 6502 micro, and all generations of the x86 so far. About the only thing these machines have in common is that they are all digital computers that use 8-bit bytes! But digital computer is the key here. Once you know how one works, once you know about registers, and opcodes, and addressing modes, it makes it much easier to learn how another one works. As for Windows, the API is almost identical to the Win32 API, with the option of using 64 bit values where appropriate. :)
Rene, I am glad to see that you have arisen from the dead again. There have been a lot of interesting points here, I am not particularly worried about IA64, they have to get it going first and if & when it does get going as a commercial entity, there will be very little that is useful available for some time to come. The vast majority of people around the world using computers are still struggling to get 32 bit windows going and with the cost of upgrading to a new 64 bit box plus software, 32 bit windows will be with us for a long time yet. I still use a 1992 version of WORD for my helpfiles and personal letters as its faster, better featured and more reliable and many people around the world are of much the same view, if it works well, why change it ? Whizz bang technology is suffering from consumer fatigue as many people are tired of the ongoing cost to stay up to date with M$ stuff for their commercial needs. When 64 bit gets going in PCs, Intel or AMD, it will primarily be for the business end of the market that needs 64 bit range. From what I have seen, the instruction set for IA64 is entirely different to the IA32 but that is no big deal, low level logic will not change much until entirely new technology bypasses the old Von Neuman logic of current processors. There is memory technology in the pipeline that is many powers greater than current, processors do not need to be digital necessarily, analogue calculators have been around for years and they work well and are genuinely fast. I am of the view that MASM will be with us for some time yet as there is no viable alternative in the forseeable future so where you need speed, it will remain an option. Regards, email@example.com
Right now it may not seem that 64 bits it's better than 32, the same way it didn't look like 32 was better than 16 in the begining... But eventually, 4 GB will not be enough memory (hell, for servers it already isn't), as it happen before...The IA-32 is reaching its limits, and Intel is pushing it very hard (look at the Pentium 4 for example). When 64 bit Windows becomes popular, there will be someone out there who will write a 64 bits assembler for the rest of us. And may be, just maybe, it will be MS... Right now, 64 bit Windows is waaaay ahead (to the public at least), so we shouldn't be worring about that for some more time. =)
I dont nesscery see Win64, or the IA64 as something to be worried about, technology evolves, and that is a good thing. It was only 10 years ago in which 1MB of memory was consider a very applicatible amount, more than anyone would ever need. But by now that barrier has been shattered 4,000 times, so if you worry about IA64, you should quit computing completly before the next decade is up. This message was edited by George, on 4/30/2001 2:14:34 AM
Does it all really matter? Every OS sucks. ;)