Win32 Programming Lesson 1: Why We’re All Here. Why We’re Here…  Okay, maybe that’s too grandiose  Windows – in particular Win32 Thirty-what?  What.

Slides:



Advertisements
Similar presentations
Sophomore English The way we do. The Purpose  We will be reviewing and looking at modifications to the policies, procedures, expectations, and resources.
Advertisements

Welcome to Back to School Night Mrs
Secure Operating Systems Lesson 1: Introductions and Expectations.
SOCIOLOGY: TOPICS & CHAPTERS COVERED: Ch.1 Sociological Perspectives Ch.2 Culture Ch.3 Socialization Ch.6 Crime & Deviance Ch.4 & Ch.7 Social Class & Social.
Some things to think about. Assignment 1 is at the end, but read the whole thing. Please!
My Policies and Some Advice for Doing Well in this Course.
James Tam Introduction To CPSC 203 James Tam Administrative (James Tam) Contact Information -Office: ICT 707 -
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
Creative Writing Expectations Class info This class is going to stretch your imagination! If you don’t like to write (or feel you don’t have.
What is expected from you? And what should you expect? 1.
How to Survive Mrs. Grace’s English Class My Expectations and a Quiz…
Welcome to CS 115! Introduction to Programming. Class URL Please write this down!
Developmental Reading 0070W01, 0080W01, 0090W01 7:30am to 9:50am 0070W02, 0080W02, 0090W02 10:00am to 12:20pm 0070W03, 0080W03, 0090W03 12:30pm to 2:50pm.
Bienvenue! (Welcome!) French 1. Course Goals: To strengthen spoken, auditory and written knowledge of the French language To explore the cultures of France.
1 HCC Brandon Independent Study Orientation Power Point Instructor: Tiffany Cantrell.
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
Prof. Matthew Hertz SH 1029F /
Read 0090 FALL 2012 W70 Adalia Reyna, Instructor.
Prof. Matthew Hertz WTC 207D /
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
Course Information Sarah Diesburg Operating Systems COP 4610.
Mr. Thayer English First of all… DON’T TOUCH THE COMPUTERS!!! You will get a chance to use them eventually, but until then, leave them alone.
Please Pick up a warm up sheet and a syllabus. Then take a seat and answer the following question on your warm up: What are the class rules? How do I log.
© Copyright 2004, Alan Marshall 1 Introduction COURSE OVERVIEW.
Keep in mind that all of your professors were once students. For some professors, teaching online courses isn’t their only job. Some of them may have.
Syllabus Highlights CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Course Overview ENGL 3365 Spring Copyright 2013 by Art Fricke basics The Instructor Dr. Art Fricke BS in Chemical Engineering & Biochemistry MS.
Biology 1A PDN ! Answer the 3 questions below write your answers on the back of your name card! 1.What do you want to be when you grow up? 2.What will.
MGT 3513: INTRODUCTION TO HUMAN RESOURCE MANAGEMENT “Never tell people how to do things. Tell them what to do and they will surprise you with their ingenuity.”
Mrs. Galvan’s Rules and Expectations. How to keep me happy  Be here, be ready!  Be respectful!  Be positive!  Be dressed for success!  Be your best!
COP4610/CGS5765 Operating Systems Syllabus. Instructor Xin Yuan Office: 168 LOV Office hours: W M F 9:10am – 10:00am, or by appointments.
2014 Economics and Personal Finance Ms. Jordan Rules and other stuff!
WELCOME BACK. How Were Your Exams? So, your last semester… How does that feel? Mr. Tulk Social 30-1.
Biology Spring Semester 2014 Rules & Expectations Refresher.
BUS 4720 Supply and Demand in Small Businesses. Host and Application Security Lesson 1: Introductions and Expectations.
Welcome to Astronomy 113 “ It would seem that you have no useful skill or talent whatsoever, he said.
Welcome to Biology! Mrs. Rhodes Room 302. Rules All Wahlert Handbook rules apply to this classroom as well as: Respect yourself, your peers, my classroom.
James Tam Introduction To CPSC 233 James Tam Java Object-Orientation Graphical-user interfaces.
BIT 142:Programming & Data Structures in C#. 2 Syllabus : Book info BIT 142 uses the book fairly extensively –I would recommend getting it The edition.
Keys to success. Attend every class and be on time. There are no excused absences. If you miss class, then you must learn the material on your own. If.
WELCOME TO WORLD RELIGIONS. COMMUNITY  Our classroom is a community. For a community to be successful there are several key components that need to be.
Welcome to Introduction to Psychology! Let’s share a bit about where we are all from…
CSc 120 Introduction to Computer Programing II
Introduction to Programming
Advanced Placement History Mrs. Chambers
Course Information Mark Stanovich Principles of Operating Systems
Course Overview - Database Systems
JUNGWON UNIVERSITY English Speech (Level 5)
Basic Math Syllabus.
English Class Syllabus
Welcome to CS 1301! Principles of Programming I.
Welcome to Mrs. Andes’s Class
Welcome to College English 2!
Class Rules and Explanations
Basic Math Syllabus.
JUNGWON UNIVERSITY Thinking & Discussion
Class Rules and Explanations
ELT & Vocabulary Learning
Welcome to College English 2!
JUNGWON UNIVERSITY English Communication (Level 1)
English 9 with Mrs. Priole
Earth and Environmental Science
Welcome to College English 2!
JUNGWON UNIVERSITY Thinking & Discussion
Welcome to College English 1!
Welcome to Communication English
(Please don’t me on the DongA website)
Algebra I
Welcome to College English 2!
Presentation transcript:

Win32 Programming Lesson 1: Why We’re All Here

Why We’re Here…  Okay, maybe that’s too grandiose  Windows – in particular Win32 Thirty-what?  What it is, why it is…

Today  Rules of the game  Book  Office Hours  Grading  Material  Learning contract

Rules of the Game  I actually want you to learn this! Parrots don’t learn That means understand the material I most certainly don’t know all of this (especially when it comes to.NET and 64-bit Windows)  In order to learn it, you’ll have to practice  Do it… and do it some more (practice makes permanent!)

Book  Quite simply the finest book on Windows Windows via C/C++ Richter & Nasarre ISBN-13: Textbook is required – you have NO CHANCE of passing this class without it! The book – if you read it – is also highly likely to make you a better programmer

Office Hours  There is no excuse for silently failing this class! Office hours: TR But if you really need to see me, just come and find me Class website: NOTE: Slides are from last year, and will be updated as we go! If you get ahead of me, you may end up doing extra (but not pointless) work

Grading  Pretty simple … but very different from last year We’ll be using source code control this year SVN: I use the Tortoise client DO execute a “make clean” before sending! A-F. No F’s please. Graded on syntax, functionality and comments  Yes, comments! You are also graded on when you turn in updates – most of these assignments will take a while, so SVN lets me see how you are progressing DO NOT ask for an extension the day something is due (or the night before) Late assignments earn you an F. Non-negotiable. No reasonable request refused! (I want you to pass) Be warned, I will be taking attendance this year. If you miss > 25% of the classes you earn an automatic F

Scoring  15% class participation  20% midterm  25% final  50% assignments  (110% nonsense…)

Caveat Emptor  This is not going to be an easy class  It will assume a working knowledge of C and C++  Assembly will help, but isn’t required  It’s going to have a lot of assignments  Drop now (but first, wait and see why…)

Material  Win32 is a critical operating system to understand  Even if you end up using Unix, you’ll need to understand Windows  I promise you that by the end of this term you will understand the internals of Windows like you never thought possible

What we’re Covering  Windows Basics  Kernel Objects  Unicode  Threads, Processes, Jobs, Fibers  Thread synchronization  Windows Memory Architecture  The stack  Memory-mapped files  Writing your own DLLs  DLL injection and API hooking  Exception Handling  Messaging and Message injection .NET and Win32 API interaction

Debugging  All of the above will FORCE you to learn how to use a debugger You can’t printf from a kernel mode driver (easily)

I Promise  To do my very best to treat you with respect at all times  To focus on teaching you things you need to know, not things that are easy to teach  To make your learning my number one priority this semester (however, be warned, I will be travelling – sorry)

In return…  I expect you to Show up on time, ready to work Treat me and your classmates respectfully Turn in assignments which are your own Tell me when you get completely stuck Help me improve this course by commenting helpfully!

Plagiarism Policy  Rule 1: There is no excuse for plagiarism. Period.  Rule 2: Anyone caught plagiarizing will be turned in to the University after we’ve talked about it. You will get an opportunity to appeal if you think you’ve been treated unfairly, but it will be a formal appeal handled by FIT, not me.  Rule 3: No exceptions. Not only are you defrauding your classmates when you plagiarize, but you’re cheating yourself as you miss out on the chance to learn, which is why you’re here (hopefully)

Summary  Won’t be an easy class  But should be a useful one  Heavy course load – expect about 2 hours of study for every hour in class minimum  Not work just for work’s sake – it’s the only way to learn this stuff  Good luck ;)