When i finish my U.G at the rate i am going I don't think i will know anything.I want to know exactly what i should be knowing so that i can proceed with my graduate degree.Which languages are a must know,which data structure concepts i should know,should i be able to make a simple operating system by then?I am in 2nd year and before i know it will be graduating...
learning java(going well)
learning advanced java(but i don't think ill ever be done)
is it necessary to .Net and what is it?
Is it necessary to know the detailed architecture of a computer?i don't remember much of it.
I also know:
8085 and 8086.
Should i know the general structure of an O.s as well?
I want to learn and have a good base because i like Computer Science,i am just not well guided and confused.
I want to be able to do a good project and do my graduate degree well.
Don't get too hung up on which languages you need to learn. It's more about learning problem solving skills, design patterns, data structures and algorithms. I learned Java at university and about 1% of the commercial code I have written has been in Java. Once you know one language, subsequent languages are easily picked up.
.NET is a windows framework that several languages are based on, including C# .NET and Visual Basic (VB) .NET. I had only read a few lines of C# before entering the workforce, now much of the code I write is in C# .NET, but again I must stress that it is not important which language(s) you learn.
As for the detailed architecture of a computer, I think so long as you have a general understanding of how a computer works you will be fine. Unless you wish to work for Intel designing new components, then you might need a more expert depth of knowledge, but for software development a general understanding should suffice. That's not to say that it would hurt to know what's going on under the hood...
I'm not sure what you are trying to ask about the general structure of an OS? Since each OS differs I think that learning the theory behind how an OS operates can't hurt, but I wouldn't stress if you only have a general understanding when you complete your degree.
Personally I think that your degree should teach you skills in design, logic, problem solving and investigation, and any language or theory should be learned to enhance these skills. You are probably developing these skills without even realising it :)
My suggestion is to clear your basic concepts of every thing mean you dnt need to crame codes of every language but you should know how to program means you need to know basics of algorithms implementation and code generation is not that much difficult due to so many help forums...
just understand what is computer its architecture, Organization and operating system
and basics like what is paging, deadlock, schedualing algos, interrupts and others no need to stress on how these are done in detail just take a general idea...
In my opinion on completing a degree a person should have a general idea of every thing included in his studies how to design, how to code, how to solve a problem, how to gather requirements and fulfill them.
You should stress on finding new ideas by keeping a close eye on developments in your field hope you will understand my suggestions wishing you best of luck :)